1

我有一个src具有以下结构的包:

┌────────┐     ┌───────┐   
│moduleA │─┬── │code.ts│   
└────────┘ │   └───────┘   
           │   ┌──────────┐
           ├── │code.d.ts │
           │   └──────────┘
           │   ┌──────────┐
           └── │types.d.ts│
               └──────────┘

其中code.d.ts具有导出的定义code.tstypes.d.ts持有namespace中使用的类型的a code.d.ts。这在包中运行良好,但是当我导出它时,code.d.ts文件中不再识别名称空间。此外,每篇关于如何导出类型的文章都非常令人困惑。有人可以指出我开始解决这个问题的方向。

code.ts

export default class MyClass {
    createSubject(id: string): Promise<MyNamespace.Subject> {
        return this.put(`/subjects/${id}`)
    }

code.d.ts

export default class MyClass {
    createSubject(id: string): Promise<MyNamespace.Subject>

type.d.ts

declare namespace MyNamespace { 
  export interface Subject {
   id: String
  }
}

该代码是从 openAPI 文件自动生成的,因此type.d.ts只表示 openAPI 文件中的类型,并且code.ts是一个简单的类,每个现有端点都有一个方法。

4

0 回答 0