UNPKG

@voxpelli/typed-utils

Version:

My personal (type-enabled) utils / helpers

26 lines (24 loc) 643 B
export type LiteralTypeOf<T> = T extends string ? 'string' : T extends number ? 'number' : T extends bigint ? 'bigint' : T extends boolean ? 'boolean' : T extends symbol ? 'symbol' : T extends undefined ? 'undefined' : T extends null ? 'null' : T extends any[] ? 'array' : T extends (...args: any[]) => any ? 'function' : T extends object ? 'object' : never; export type LiteralTypes = { 'string': string, 'number': number, 'bigint': bigint, 'boolean': boolean, 'symbol': symbol, 'undefined': undefined, 'null': null, 'array': unknown[], 'object': object, 'function': (...args: any[]) => unknown, };