Skip to main content

Type alias: DeepRequired<T>

DeepRequired<T>: T extends Builtin ? NonNullable<T> : T extends Map<infer K, infer V> ? Map <DeepRequired<K>, DeepRequired<V>> : T extends ReadonlyMap<infer K, infer V> ? ReadonlyMap <DeepRequired<K>, DeepRequired<V>> : T extends WeakMap<infer K, infer V> ? WeakMap <DeepRequired<K>, DeepRequired<V>> : T extends Set<infer U> ? Set <DeepRequired<U>> : T extends ReadonlySet<infer U> ? ReadonlySet <DeepRequired<U>> : T extends WeakSet<infer U> ? WeakSet <DeepRequired<U>> : T extends Promise<infer U> ? Promise <DeepRequired<U>> : T extends object ? { [K in keyof (...)]-?: DeepRequired<(...)> } : NonNullable<T>

Type parameters

Type parameter
T

Source

lib/types.ts:6