Type Alias DeepRequired<T>

DeepRequired<T>: T extends Primitive
    ? NonNullable<T>
    : T extends (infer U)[]
        ? DeepRequired<U>[]
        : {
            [P in keyof T]-?: DeepRequired<T[P]>
        }

Type Parameters

  • T