webshrine / stdtyp/src / RequiredDeep
Type Alias: RequiredDeep<T>
RequiredDeep<
T
>:T
extends (...args
) =>any
?T
:T
extendsany
[] ?_DeepRequiredArray
<T
[number
]> :T
extendsobject
?_DeepRequiredObject
<T
> :T
DeepRequired
Type Parameters
• T
Desc
Required that works for deeply nested structure
Example
ts
// Expect: {
// first: {
// second: {
// name: string;
// };
// };
// }
type NestedProps = {
first?: {
second?: {
name?: string;
};
};
};
type RequiredNestedProps = DeepRequired<NestedProps>;
Defined in
node_modules/.pnpm/utility-types@3.11.0/node_modules/utility-types/dist/mapped-types.d.ts:347