fix(api): exclude functions as nested types

This commit is contained in:
yassinedorbozgithub 2024-11-03 12:48:02 +01:00
parent 7a7ebb21bc
commit 2781abbc56

View File

@ -16,11 +16,14 @@ export type TFilterKeysOfNeverType<T> = Omit<T, TFilterKeysOfType<T, []>>;
export type NestedKeys<T> = T extends object export type NestedKeys<T> = T extends object
? { ? {
[K in keyof T]: Array<any> extends T[K] // eslint-disable-next-line @typescript-eslint/ban-types
? Exclude<K, symbol> [K in keyof T]: T[K] extends Function
: K extends symbol ? never
: Array<any> extends T[K]
? Exclude<K, symbol> ? Exclude<K, symbol>
: `${Exclude<K, symbol>}${'' | `.${NestedKeys<T[K]>}`}`; : K extends symbol
? Exclude<K, symbol>
: `${Exclude<K, symbol>}${'' | `.${NestedKeys<T[K]>}`}`;
}[keyof T] }[keyof T]
: never; : never;