如何在 TypeScript 中导出对 (JavaScript) 类的引用

sam*_*jaf 5 javascript typescript

我想向旧版 JavaScript 项目添加一些类型信息。我添加了 ad.ts-File并声明了一些类型和一些导出。JavaScript 文件导出实例和类。像这样:

const { Foo } = require('foo');

const stuff = {foo: new Foo(), FooClass: Foo};
module.exports = stuff;
Run Code Online (Sandbox Code Playgroud)

这是我的d.ts文件:

import { Foo } from 'foo';

export const foo: Foo;
//???How to declare the export of FooClass???
Run Code Online (Sandbox Code Playgroud)

到目前为止我得到的最好的是export class FooClass extends Foo{},但我不想引入这个虚拟继承。

T.J*_*der 3

FooClass类 ( )的构造函数的类型是typeof ClassName( typeof Foo),所以:

import { Foo } from 'foo';

export const foo: Foo;
export const FooClass: typeof Foo;
Run Code Online (Sandbox Code Playgroud)