/** * XOR in typescript. Amazing. * * @credit tjjfvi * @see https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types#comment123255834_53229567 * @demo https://tsplay.dev/wgLpBN */ declare type UnionKeys = T extends T ? keyof T : never; declare type Expand = T extends T ? { [K in keyof T]: T[K]; } : never; export declare type OneOf = { [K in keyof T]: Expand, keyof T[K]>, never>>>; }[number]; export {};