export type ObjectValues = T[keyof T]; export function createEnum>(enumObj: T) { return Object.values(enumObj) as unknown as ObjectValues; } export type AnyCase = | Uppercase | Lowercase | Capitalize | Uncapitalize; export type AnyCaseLanguage = | Uppercase | Lowercase | Capitalize | Uncapitalize; export type OptionalKeys = { [K in keyof T as undefined extends T[K] ? K : never]: T[K]; };