如何添加自定义TypeScript全局接口

如何添加自定义TypeScript全局接口,typescript,visual-studio-code,tsconfig,Typescript,Visual Studio Code,Tsconfig,我在整个CommonJS结构化typescript项目中使用了几个接口。我想创建一个名为“interfaces.ts”的全局文件。。。不必导入接口或向每个.ts文件(样板文件)中添加引用,是否有一种全局声明它的方法,可能是在tsconfig.json文件中 我知道有一个名为lib.d.ts的全局定义文件,它基本上是全局声明的接口。我意识到我可能可以修改这个文件,但我正在寻找更好的方法(抽象) 编辑:我可能应该注意到,我目前正在使用Visual Studio代码。默认情况下,这就是tsconfig

我在整个CommonJS结构化typescript项目中使用了几个接口。我想创建一个名为“interfaces.ts”的全局文件。。。不必导入接口或向每个.ts文件(样板文件)中添加引用,是否有一种全局声明它的方法,可能是在tsconfig.json文件中

我知道有一个名为lib.d.ts的全局定义文件,它基本上是全局声明的接口。我意识到我可能可以修改这个文件,但我正在寻找更好的方法(抽象)


编辑:我可能应该注意到,我目前正在使用Visual Studio代码。

默认情况下,这就是tsconfig.json的工作方式。在项目的根目录中创建一个
tsconfig.json
,不带“files”属性。您可能需要重新启动VS代码才能识别tsconfig.json

如果tsconfig.json中不存在“files”属性,则编译器默认包含包含目录和子目录的所有文件。指定“文件”属性时,仅包括这些文件

。我意识到我可能可以修改这个文件,但我正在寻找更好的方法(抽象)


有一个名为
globals.d.ts
的文件。这个模式记录在这里:

啊,我明白了。。。我所要做的就是在定义接口时删除“导出”,现在VSCode将其视为全局的。谢谢。过去三天我读了你的书!非常令人印象深刻!我也一直在读关于你的Typescript集合项目(似乎找不到在线文档)。“global.d.ts”这个名称对TypeScript来说是特殊的吗?与使用i.e.d.T.接口有什么区别吗?谢谢。名字没什么特别的。只是一个约定,我注意到您没有记录如何在用户定义的global.d.ts文件中进行有效连接。你能详细说明一下吗?