TypeScript:.d.ts中的函数别名

时间:2016-10-29 20:28:56

标签: typescript

我想在.d.ts中描述的节点模块中的U函数有两个别名,config()load()see the source)。该功能可以在dotenv/index.d.ts

中这样描述
export function config(options?: dotenvOptions): Object;

如何将其导出到其他别名load()

1 个答案:

答案 0 :(得分:3)

您可以声明类型:

declare type ConstructorMethod = (options?: dotenvOptions) => Object;

(名字可以更好)

然后将两个方法导出为相同的类型:

export const config: ConstructorMethod;
export const load: ConstructorMethod;

P.S。看起来返回类型实际上是object | boolean。联盟类型可能很烦人,但我想我可能会指出你这个方向,以防你将来生气:https://www.typescriptlang.org/docs/handbook/advanced-types.html(关于类型守卫和区分类型的部分)。我最近才遇到过一些很酷的东西。