我想为我的模块提供类型。我模块的接口要求某些参数的字符串枚举。至关重要的是,这些参数必须是实际的字符串,在编译时不会消失。这意味着enum
,而不是const enum
。
这里有一个例子:
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/nodegit/enums.d.ts
在这里使用:
https://github.com/DefinitelyTyped/DefinitelyTyped/search?q=enums.d.ts&unscoped_q=enums.d.ts
如何定义和导出const
字符串枚举。但是,如果您删除const
,则此操作无效。
我尝试了各种方法,但是无法在模块中提供具体的字符串枚举。
我能想到的解决方法是定义一个允许作为各种字符串的类型,并为用户的方便定义字符串常量,但是它需要对所有可用值进行双重定义。