面试题答案
一键面试type DeepMutable<T> = T extends Function
? T
: T extends Array<infer U>
? Array<DeepMutable<U>>
: T extends object
? { -readonly [K in keyof T]: DeepMutable<T[K]>; }
: T;
type DeepMutable<T> = T extends Function
? T
: T extends Array<infer U>
? Array<DeepMutable<U>>
: T extends object
? { -readonly [K in keyof T]: DeepMutable<T[K]>; }
: T;