diff --git a/archiver/archiver-test.ts b/archiver/archiver-test.ts new file mode 100644 index 0000000000..dcd71ca905 --- /dev/null +++ b/archiver/archiver-test.ts @@ -0,0 +1,14 @@ +/// +/// + +import Archiver = require('archiver'); +import FS = require('fs'); + +var archiver = Archiver.create('zip'); + +var writeStream = FS.createWriteStream('./archiver.d.ts'); +var readStream = FS.createReadStream('./archiver.d.ts'); + +archiver.pipe(writeStream); +archiver.append(readStream, {name: 'archiver.d.ts'}); +archiver.finalize(); \ No newline at end of file diff --git a/archiver/archiver.d.ts b/archiver/archiver.d.ts new file mode 100644 index 0000000000..570e1424a6 --- /dev/null +++ b/archiver/archiver.d.ts @@ -0,0 +1,41 @@ +// Type definitions for archiver v0.15.0 +// Project: https://github.com/archiverjs/node-archiver +// Definitions by: Esri +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/* =================== USAGE =================== + + import Archiver = require('archiver); + var archiver = Archiver.create('zip'); + archiver.pipe(FS.createWriteStream('xxx')); + archiver.append(FS.createReadStream('xxx')); + archiver.finalize(); + + =============================================== */ + +/// +declare module "archiver" { + import * as FS from 'fs'; + + interface nameInterface { + name?: string; + } + + interface Archiver { + pipe(writeStream: FS.WriteStream): void; + append(readStream: FS.ReadStream, name: nameInterface): void; + finalize(): void; + } + + interface Options { + + } + + function archiver(format: string, options?: Options): Archiver; + + namespace archiver { + function create(format: string, options?: Options): Archiver; + } + + export = archiver; +} \ No newline at end of file