types-kit.requireddeep.md
September 4, 2023 ยท View on GitHub
Home > types-kit > RequiredDeep
RequiredDeep type
Make all properties (includes deep properties) in T required.
Signature:
export type RequiredDeep<T> = {
[P in keyof T]-?: RequiredDeep<T[P]>
}
References: RequiredDeep
Example
interface Props {
a?: {
d?: number
};
b?: number;
c?: number;
};
// Expect: { a: { d: number }; b: number; c: number; }
type NewProps = RequiredDeep<Props>;