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] }