/** * Make the keys K of the type T optional. * * e.g. MakeOptional<{ foo: string, bar: number }, "bar"> yields { foo: string, bar?: number } */ export declare type MakeOptional = Omit & Partial>; /** * Like MakeOptional, but works over type unions. */ export declare type DistributiveMakeOptional = T extends any ? MakeOptional : never; /** * Applies an omit over a union of types */ export declare type DistributiveOmit = T extends any ? Omit : never;