如果我理解正确,当我们在.d.ts
文件中进行导入时,我们可以增强模块定义。
问题是:如何在同一.d.ts
文件中还声明另一个未键入的模块?
import * as toAugment from "to-augment";
// Augmentation mode after import.
declare module "to-augment" {
// OK: module to-augment already has some types.
}
declare module "to-declare" {
// Error TS2665: untyped module cannot be augmented.
}
像这样,我可以保留一个全局.d.ts
文件,在其中定义我的所有外部类型,无论模块是否需要扩充或完全未键入。