Type Parameters
| Type Parameter |
|---|
T |
type KebabCasePaths<T> = T extends Record<string, unknown> ? { [K in keyof T]: T[K] extends { value: unknown } ? K & string : T[K] extends Record<string, unknown> ? `${K & string}-${KebabCasePaths<T[K]> & string}` : K & string }[keyof T] : never;
| Type Parameter |
|---|
T |
type MyObject = {
a: {
b: {
cKey: string;
};
};
};
type Flattened = Flattened<MyObject>;
// { 'a-b-cKey': string }
Was this page helpful?