我遇到一种情况,需要创建一个新的类型 A ,该类型可以是类/构造函数类型或MapType。 MapType包含两种类型:键的类型和值的类型。这两种类型的类型为 A ,因为还可以使用嵌套地图。
这是我的班级/构造函数类型:
export type Clazz<T> = { new(...args: any[]): T };
您对设计有什么建议吗?
---更新---
我在想这样的事情:
export type Type<T = any> = ClassType<T> | MapType;
export type ClassType<T> = { new(...args: any[]): T };
export interface MapType { key: Type, value: Type };
我需要类构造函数以在以后实例化它们。 如果我想要MapType的泛型怎么办?有什么建议吗?