json-schema-typescript-generator
Version:
Generate typescript types from json schemas
41 lines (37 loc) • 1.1 kB
TypeScript
declare const generateFiles: (options: Options) => Promise<void>;
type PartialDeep<T> = T extends Primitive ? Partial<T> : T extends object ? PartialObjectDeep<T> : unknown;
type Primitive = undefined | boolean | string;
type PartialObjectDeep<ObjectType extends object> = {
[KeyType in keyof ObjectType]?: PartialDeep<ObjectType[KeyType]>;
};
declare enum UntypedType {
ANY = "any",
NEVER = "never",
UNDEFINED = "undefined",
UNKNOWN = "unknown"
}
declare enum OptionalFieldPattern {
QUESTION = "fieldName?",
PIPE_UNDEFINED = "Type | undefined"
}
type AllOptions = {
files: {
cwd?: string;
source: {
dir: string;
encoding: BufferEncoding;
recursive: boolean;
};
destination: {
dir: string;
preClean: boolean;
indexFiles: boolean;
};
};
ts: {
optionalFields: OptionalFieldPattern;
untyped: UntypedType;
};
};
type Options = PartialDeep<AllOptions>;
export { OptionalFieldPattern, type Options, UntypedType, generateFiles };