import type { exactOptionalPropertyTypes } from '../tsc-options/index.js'; /** Distributes over `$obj` */ export type CanBeUndefined<$obj, Key extends keyof $obj, True = true, False = false> = exactOptionalPropertyTypes extends false ? boolean : $obj extends any ? Key extends any ? { [k in Key]: undefined; } extends { [k in Key]: $obj[k]; } ? True : False : never : never; /** ⚠️ Prefer {@link CanBeUndefined} - should be faster */ export type CanBeUndefined_<$obj, Key, True = false, False = false> = CanBeUndefined<$obj, Key & keyof $obj, True, False>; //# sourceMappingURL=CanBeUndefined.d.ts.map