json-expression-eval
Version:
json serializable rule engine / boolean expression evaluator
7 lines (6 loc) • 385 B
TypeScript
import { BuiltIn } from './utils';
type _NonNullable<O, Ignore> = {
[K in keyof O]-?: O[K] extends BuiltIn | Ignore ? O[K] : globalThis.NonNullable<O[K]> extends object ? _NonNullable<globalThis.NonNullable<O[K]>, Ignore> : globalThis.NonNullable<O[K]>;
};
export type NonNullable<O extends object, Ignore = never> = O extends unknown ? _NonNullable<O, Ignore> : never;
export {};