diff --git a/gulp-cached/gulp-cached-tests.ts b/gulp-cached/gulp-cached-tests.ts new file mode 100644 index 0000000000..42a6697388 --- /dev/null +++ b/gulp-cached/gulp-cached-tests.ts @@ -0,0 +1,21 @@ +/// +/// + +import * as gulp from "gulp"; +import cached = require("gulp-cached"); + +// Usage +gulp.src("*.ts") + .pipe(cached("ts-cache")); + +gulp.src("*.ts") + .pipe(cached("ts-cache", {})); + +gulp.src("*.ts") + .pipe(cached("ts-cache", { optimizeMemory: true })); + +// Clearing the whole cache +cached.caches = {}; + +// Clearing a specific cache entry +delete cached.caches["ts-cache"]; diff --git a/gulp-cached/gulp-cached.d.ts b/gulp-cached/gulp-cached.d.ts new file mode 100644 index 0000000000..eeb03997c1 --- /dev/null +++ b/gulp-cached/gulp-cached.d.ts @@ -0,0 +1,39 @@ +// Type definitions for gulp-cached +// Project: https://github.com/wearefractal/gulp-cached +// Definitions by: Thomas Corbière +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// + +declare module "gulp-cached" +{ + interface ICacheStore + { + [name: string]: {}; + } + + interface IOptions + { + /** + * Uses md5 instead of storing the whole file contents. + * @default false + */ + optimizeMemory?: boolean; + } + + interface IGulpCached + { + /** + * Creates a new cache hash or uses an existing one. + */ + (name: string, options?: IOptions): NodeJS.ReadWriteStream; + + /** + * Cache store. + */ + caches: ICacheStore; + } + + const cached: IGulpCached; + export = cached; +}