import { Str } from '@rimbu/typical'; /** */ export type Capitals = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', '0', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' ]; /** */ export type GetCapital = Capitals[N]; /** */ type ReplaceWithUnderscore = Str.ReplaceAll; type ReplaceWithDash = Str.ReplaceAll; type CamelCaseHelper = T extends `_${infer Suffix}` ? CamelCase : T extends `${infer Prefix}_` ? CamelCase : T extends `${infer Prefix}_${infer Suffix}` ? CamelCase<`${Prefix}${Capitalize}`> : T; /** */ export type KebabCase = Lowercase> & string; /** */ export type CamelCase = CamelCaseHelper> & string; /** */ export type PascalCase = Capitalize> & string; /** */ export type SnakeCase<_T extends string> = string; /** */ export type BoaCase = Uppercase> & string; export {};