UNPKG

ts-variant-gen

Version:

Small utility to generate F#/Kotlin-style discriminated unions (variant types) for TypeScript projects

29 lines (28 loc) 806 B
declare class VariantBuilder { fields: { name: string; type: string; }[]; constructor(); withField(name: string, type: string): void; } declare type Variant = { name: string; fields: { name: string; type: string; }[]; }; declare class TypeBuilder { variants: Variant[]; constructor(); withVariant(name: string, variantConfig?: (variant: VariantBuilder) => void): void; } declare class FileBuilder { types: string[]; constructor(); withType(name: string, typeConfig: (type: TypeBuilder) => void): void; } export declare const generateType: (typeName: string, typeConfig: (type: TypeBuilder) => void) => string; export declare const generateFile: (filePath: string, fileConfig: (b: FileBuilder) => void) => void; export {};