我..how可指示標識「一」,實際上是指階級,打字稿只需要生成擴展代碼假設它是這裏的TypeScript
。在第三方縮小庫中定義。是否有任何方式可以在不描述它的內部結構的情況下進行轉發聲明?它的原型是node.js
event.EventEmitter
我不知道如何破解最新TypeScript
編譯器去做你想要什麼,從你的問題的描述其實我不明白你想要什麼...
...但我偶然發現需要在第三方庫中聲明類型,尤其是event.EventEmitter
變量類型。我已經通過聲明interface
來解決這個需求,其中複製/粘貼描述了內部結構的重要成員。
它打上TODO
因爲我找不到那個時候更好的解決方案,但它可以爲解決辦法工作你的情況,以及
interfaces.d.ts
/// <reference path="../../vendor/borisyankov/DefinitelyTyped/node/node.d.ts"/>
interface IChildProcess /* TODO: should be "extends child_process.ChildProcess" */ {
stdin: NodeJS.WritableStream;
stdout: NodeJS.ReadableStream;
stderr: NodeJS.ReadableStream;
pid: number;
on(event: string, listener: Function): NodeJS.EventEmitter;
}
some.ts
var process: IChildProcess;
process = child_process.spawn("cmd.exe", args, {
cwd: options.cwd || process.cwd(),
stdio: options.stdio || 'inherit',
env: process.env,
detached: false
});
爲什麼你會從一個變量擴展一個類嗎? –
@Jimmy T.合理的問題,似乎是問題的根源。但是我怎麼能指示Typescript這個標識符「a」實際上是指類,並且typescript只需要生成擴展代碼(假設它在這裏)(第三方縮小的lib)呢? – grigoryvp