MutableDeep: { -readonly [P in keyof T]: MutableDeep<T[P]> }

Mutates the type by removing the readonly modifier from all properties, recursively.

Type Parameters

  • T

    The type to mutate.

type Original = { readonly name: string; readonly age: number };
type Mutated = MutableDeep<Original>; // { name: string; age: number }