import EachReq = require("each"); function testEach() { var EachStaticClass: EachStatic = function (array: any[]) { return { paused: true, readable: false, started: 11, done: 12, total: 22, on: function (eventName: string, cb: (a: any, b?: () => void) => void) { return EachStaticClass([]); }, parallel: function (mode: any) { return EachStaticClass([]); }, shift: function (items: any[]) {}, write: function (items: any[]) {}, unshift: function (items: any[]) {}, end: function () { return EachStaticClass([]); }, times: function () { return EachStaticClass([]); }, repeat: function () { return EachStaticClass([]); }, sync: function () { return EachStaticClass([]); }, files: function (a: any, glob?: any) {} }; }; var each: Each = EachStaticClass([1, 2, 3]); var each: Each = EachReq([4, 5, 6]); }