/** * Recursively checks entire object so no fields may be undefined or null */ export type RecursiveNonNullable = NonNullableObject & NonNullable; type NonNullableObject = { [K in keyof T]-?: NonNullable & RecursiveNonNullable; }; export {};