@plteam/chat-ui
Version:
CUI Kit is a free and open-source library for creating AI assistant chat interfaces, built with React, Material UI, and TypeScript
8 lines (7 loc) • 667 B
TypeScript
type CapitalizeFirstLetter<T extends string> = T extends `${infer First}${infer Rest}` ? `${Uppercase<First>}${Rest}` : T;
type ApplyPrefix<Key extends string, Prefix extends string> = Prefix extends '' ? Key : `${Prefix}${CapitalizeFirstLetter<Key>}`;
export type FlattenObject<T extends Record<string, unknown>, Prefix extends string = '', Key = keyof T> = Key extends string ? T[Key] extends Record<string, unknown> ? FlattenObject<T[Key], ApplyPrefix<Key, Prefix>> : {
[P in ApplyPrefix<Key, Prefix>]: T[Key];
} : never;
export type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
export {};