export type Literal2Object = Partial<{ [Type in Literal['type']]: Literal extends { type?: Type } ? Omit | boolean : never; }>; export type UsePrefix< Prefix extends string, Obj extends Record, > = { [Property in keyof Obj as `${Prefix}${Capitalize< string & Property >}`]: Obj[Property]; }; export type Closeable = T | boolean | null; export type Padding = number | 'auto';