2012-12-13 28 views
2

我加载非打字稿AMD模块类型(用JavaScript编写的,从TS未编译)使用打字稿模块内部要求:打字稿 - 定义外部AMD模块

var worker = require('worker'); 

的工人模块的出口数构造函数。

现在我想做出一些类型定义(例如作为backbone.d.ts)

module WorkerModule { 
    interface IResult { 
     amount(): number; 
    } 
    interface IWorker { 
     work(); 
     getResult(): IResult; 
    } 
    interface OtherWorker extends IWorker { 
     workMore(); 
    } 
} 

我怎么能告诉TSC该工人是WorkerModule。 感谢您的任何帮助。

回答

2

您可以输入您的工人变量:

var worker: IWorker = require('worker'); 

这将提供关于worker变量类型检查。

+0

感谢,这工作,但我只是意识到我需要的是有点不同...工人模块导出几个类,所以我想VAR工人是某种类型的模块...我会编辑问题。 – DeyyyFF

+0

你应该还是很好走:'var worker:WorkerModule = require('worker');' – Fenton

+0

谢谢。毕竟是如此愚蠢的问题...我总是尝试为工人变量声明。谢谢 – DeyyyFF