Hi I have this type
export type RecursivelyAddNullsForOverwriting<T> = T extends undefined
? undefined | null
: T extends (infer U)[]
? RecursivelyAddNullsForOverwriting<U>[]
: T extends Record<string, unknown>
? { [K in keyof T]: RecursivelyAddNullsForOverwriting<T[K]> }
: T;
If I pass a type in for T then it works, but if I pass an interface in for T it does not apply then null.
Am I missing something here?