Type alias DeepRequired<Type>

DeepRequired<Type>: Type extends {}
    ? Type extends Map<any, any>
        ? Required<Type>
        : Type extends Set<any>
            ? Required<Type>
            : Type extends Buffer
                ? Required<Type>
                : Type extends Function
                    ? Required<Type>
                    : Type extends any[]
                        ? Required<Type>
                        : Type extends {}
                            ? {
                                [Key in keyof Type]-?: DeepRequired<Type[Key]>
                            }
                            : Required<Type>
    : Required<Type>

Type Parameters

  • Type