diff --git a/proxyquire/proxyquire-test.ts b/proxyquire/proxyquire-test.ts new file mode 100644 index 000000000..b1985de58 --- /dev/null +++ b/proxyquire/proxyquire-test.ts @@ -0,0 +1,19 @@ +/// + +import proxyquire = require('proxyquire'); + +class Foo {} +var mock = {}; + +var myModule = proxyquire('myModule', mock); +var fooModule: Foo = proxyquire('foo', mock); + +myModule = proxyquire.noCallThru() + .load('myModule', mock); + +fooModule = proxyquire.callThru() + .load('foo', mock); + +proxyquire.preserveCache(); + +proxyquire.noPreserveCache(); diff --git a/proxyquire/proxyquire.d.ts b/proxyquire/proxyquire.d.ts new file mode 100644 index 000000000..06e1c773e --- /dev/null +++ b/proxyquire/proxyquire.d.ts @@ -0,0 +1,25 @@ +// Type definitions for Proxyquire 1.3.0 +// Project: https://github.com/thlorenz/proxyquire +// Definitions by: jt000 +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +interface Proxyquire { + + (request: string, stubs: any): any; + (request: string, stubs: any): T; + + load(request: string, stubs: any): any; + load(request: string, stubs: any): T; + + noCallThru(): Proxyquire; + callThru(): Proxyquire; + + noPreserveCache(): void; + preserveCache(): void; +} + +declare module 'proxyquire' { + + var p: Proxyquire; + export = p; +} \ No newline at end of file