如何创建导出现有模块的 .d.ts 文件?
How to create a .d.ts file that exports an existing module?
我在我的 TypeScript 项目中同时使用 dust.js
(特别是 dustjs-linkedin)和 dustjs-helpers
。我从 definitelyTyped 中获取了 dustjs-linkedin 的类型,但我在使用 dustjs-helpers 时遇到了问题。差不多,我只想声明一个名为 dustjs-helpers
的模块并让它正确导出 dustjst-linkedin
模块。这意味着无论何时调用 import helpers = require('dustjs-helpers');
,您都应该能够访问常规 dust 默认使用的所有功能。
Dust 的类型文件声明其模块如下:declare module "dustjs-linkedin" { ... }
。我希望我可以做如下的事情,但是我得到了错误...
/// <reference path="../dustjs-linkedin/dustjs-linkedin.d.ts" />
declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")
export = dust;
}
谁能帮帮我?
有点复杂,但我已经证实这可行:
declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")
// Bring into a type
type Dust = typeof dust;
// Specify extensions
type Extensions = {
anotherFunc : Function;
}
// Combine types
type DustExtended = Dust & Extensions;
// Create var for export
var dustExtended: DustExtended;
// Export
export = dustExtended;
}
我在我的 TypeScript 项目中同时使用 dust.js
(特别是 dustjs-linkedin)和 dustjs-helpers
。我从 definitelyTyped 中获取了 dustjs-linkedin 的类型,但我在使用 dustjs-helpers 时遇到了问题。差不多,我只想声明一个名为 dustjs-helpers
的模块并让它正确导出 dustjst-linkedin
模块。这意味着无论何时调用 import helpers = require('dustjs-helpers');
,您都应该能够访问常规 dust 默认使用的所有功能。
Dust 的类型文件声明其模块如下:declare module "dustjs-linkedin" { ... }
。我希望我可以做如下的事情,但是我得到了错误...
/// <reference path="../dustjs-linkedin/dustjs-linkedin.d.ts" />
declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")
export = dust;
}
谁能帮帮我?
有点复杂,但我已经证实这可行:
declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")
// Bring into a type
type Dust = typeof dust;
// Specify extensions
type Extensions = {
anotherFunc : Function;
}
// Combine types
type DustExtended = Dust & Extensions;
// Create var for export
var dustExtended: DustExtended;
// Export
export = dustExtended;
}