我的应用程序中的类型以一种有些复杂的方式定义:我在函数上定义代数,构造“解码器”函数,然后从解码器推断类型(请参阅 gcanti/io-fp)。有一个问题报告给 typedoc 项目#1519。
现在我想编写一个实用程序来为我的 API 生成正确的 .d.ts 文档,以便输出:
export declare type BorderStyleEnum = 'None' | 'Solid';
export declare type BorderStyle = {
Color?: string;
Style?: BorderStyleEnum;
Width?: string;
};
export declare type BorderSideStyle = {
Color?: string;
Style?: '' | 'None' | 'Solid';
Width?: string;
};
export declare type BorderSideStyleEnum = NonNullable<BorderSideStyle['Style']>;
export declare type Style = { Border: BorderStyle; TopBorder: BorderSideStyle; LeftBorder: BorderSideStyle; BottomBorder: BorderSideStyle; RightBorder: BorderSideStyle;
};
export declare type StyleExp = ExpandRecursively<Style>;
declare function …Run Code Online (Sandbox Code Playgroud)