UNPKG

437 BTypeScriptView Raw
1/**
2 * @hidden
3 */
4export declare type _NonNullableKeys<O extends object> = {
5 [K in keyof O]-?: [O[K] & (undefined | null)] extends [never] ? K : never;
6}[keyof O];
7/**
8 * Get the keys of `O` that are non-nullable
9 *
10 * (⚠️ needs `--strictNullChecks` enabled)
11 * @param O
12 * @returns [[Key]]
13 * @example
14 * ```ts
15 * ```
16 */
17export declare type NonNullableKeys<O extends object> = O extends unknown ? _NonNullableKeys<O> : never;