Type Alias DeepPartial<T, N>

DeepPartial<T, N>: T extends Primitive
    ? T | (N extends true
        ? undefined
        : never)
    : T extends (infer U)[]
        ? DeepPartial<U, N>[]
        : {
            [P in keyof T]?: DeepPartial<T[P], N>
        }

Type Parameters

  • T
  • N extends boolean = false