Typescript-导出模块类型

时间:2019-06-28 01:04:35

标签: typescript

我有一个看起来像这样的d.ts文件

import * as lalo from './core';
/**
 * Using module augmentation
 */
declare module './core' {
    interface extraStuff {
        (this: any): void;
    }
}
export default lalo;

这是一个名为“模块/ lalo”的模块 所以当我像出口

import myLalo from "module/lalo"

myLalo可以访问d.ts文件中定义的所有类型(接口等)作为类型(名称空间?)访问所有方法和成员以及ALSO。

我需要在另一个文件lalo-toggle.ts中执行类似的操作;在原始模块和测试版之间切换

import _laloA from "module/lalo";
import _laloB from "module/lalo-beta";

export function getLalo() {
  return Math.random() > 0.5 ? _laloA : _laloB;
}

问题是,lalo的方法和成员是在getLalo返回的对象中定义的,但是我无法访问类型,接口等。

有什么想法可以扩展定义的模块,以便lalo-toggle.ts的使用者可以使用它?

0 个答案:

没有答案