I would like a type to enforce the following
given:
interface Foo {
key1: bool;
key2: string;
...:
keyn: <whatever>;
}
I'd like something like:
OnlyOnePropery<Foo>
where only following would be accepted for the type:
{ key1: bool;}
xor{key2: string;}
xor...
xor{keyn: <whatever>;}
So basically one and only one key value pair.