4 lines
173 B
TypeScript
Raw Permalink Normal View History

2024-01-29 09:26:07 +08:00
export type Mutable<T> = T extends Record<string, unknown> ? {
-readonly [P in keyof T]: T[P] extends ReadonlyArray<infer U> ? Array<Mutable<U>> : Mutable<T[P]>;
} : T;