给定以下文件夹结构:
src/
├── foo.ts
├── bar.ts
├── baz.ts
├── index.ts
字符串
其中foo.ts
、bar.ts
和baz.ts
每个都导出一个默认类或事物:即在foo.ts
的情况下:
export default class Foo {
x = 2;
}
型
是否可以自动生成声明文件,声明一个模块my-module
,导出foo.ts
、bar.ts
、baz.ts
为非默认值?
例如,我希望tsc
生成以下内容:
build/
├── foo.js
├── bar.js
├── baz.js
├── index.js
├── index.d.ts
型
其中index.d.ts
包含:
declare module 'my-module' {
export class Foo {
...
}
export class Bar {
...
}
export class Baz {
...
}
}
型
我看到大多数NPM模块都有一个这样的声明文件,也许还有单独的文件。
我该怎么做?
2条答案
按热度按时间k2arahey1#
在你的tslog.json文件中,将“declaration”设置为true。然后当你在你的项目上运行typescript时,它会自动为你生成声明文件。
mqxuamgl2#
tsup
它可以做到这一点,并且非常快(1.5s):
字符串
您需要导入
./executors/index.ts
中的类型并从该文件导出它们。dts-bundle-generator
对我来说比较慢(8.5秒):
型