Consider a tuple like this:
type MyTuple = [A, B];
where A
and B
both have an attribute named key
. For instance,
interface A = {
key: 'sandwiches'
}
interface B = {
key: 'pasta'
}
I desire the following interface:
interface Result {
sandwiches: A;
pasta: B;
}
Is there a way to do this dynamically?
I'm thinking that, if this is achievable, it might look something like:
type MapTuple<T> = {
[K in keyof T]: T[K]["key"]
}
but this doesn't work.
This question is the inverse of Typescript: object type to array type (tuple)