/** * Utility class for spelling out types in TypeScript code. * Every instance represents a TypeScript type. */ export declare class TsType { private readonly typesInUnion; private readonly multiline; /** Creates a single-lined non-union type. */ static simple(type: string): TsType; /** * Returns the generic type: * 'name' + '<' + args[0] + ', ' + args[1] + ... + args[N] + '>' */ static generic(name: string, ...args: readonly TsType[]): TsType; /** A literal value, e.g. `"foobar"` or `3`. */ static literal(value: string | number): TsType; /** * An inline interface as it appears for example in the following declaration: * ``` * const foo: {a: number; b: number} = {a: 10, b: 20}; * ``` */ static inlineInterface(nameToType: Readonly>): TsType; static union(types: readonly TsType[]): TsType; static readonly NULL: TsType; static readonly UNDEFINED: TsType; static readonly BOOLEAN: TsType; static readonly NUMBER: TsType; static readonly BIGINT: TsType; static readonly TIMESTAMP: TsType; static readonly STRING: TsType; static readonly BYTE_STRING: TsType; static readonly NEVER: TsType; private constructor(); get isNever(): boolean; /** * Returns a representation of this type union as valid TypeScript code. * If multiple lines are required, the string starts with EOL and does not end * with EOL. */ toString(): string; } //# sourceMappingURL=ts_type.d.ts.map