为 JavaScript 编写 d.ts 文件,导出默认函数和命名导出

Eri*_*ers 3 typescript typescript-typings

试图为 worker-farm ( https://github.com/rvagg/node-worker-farm )编写 d.ts 文件但是我遇到了一个问题。

worker-farm 做一个 module.exports 是这样的:

module.exports     = farm
module.exports.end = end
Run Code Online (Sandbox Code Playgroud)

如果我尝试在打字稿中执行此操作,例如

export function end(workers:any):void;
export =  workerFarm;
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息,提示我无法混合导出类型。尝试使用默认值似乎也不允许我导出它。

是否可以在定义中复制这一点?

Avo*_*vol 6

您可以尝试为此使用命名空间。

就像是:

declare function workerFarm(){}

declare namespace workerFarm
{
    export function end( workers: any ): void;
}

export = workerFarm;
Run Code Online (Sandbox Code Playgroud)

在文档中查看此示例:http : //www.typescriptlang.org/docs/handbook/declaration-files/templates/module-function-d-ts.html