Tengo un objeto en el que tanto las propiedades como los valores corresponden a sus respectivos tipos:
type Car = "toyota" | "mazda" | "suzuki" | "porsche"; type Color = "white" | "black" | "yellow" | "red"; const cars = { toyota: "red", porsche: "white", };Sé que puedo asignar un tipo a la propiedad así:
const cars: { [key in Car]: string; } = { toyota: "red", porsche: "white", };Esto funciona, pero me gustaría que el valor sea solo del tipo Color. Lo siguiente no funciona:
const cars: { [key in Car]: [key in Color]; } = { toyota: "red", porsche: "white", };¿Por qué no funciona el código anterior y cómo puedo definir un tipo para el nombre y el valor de la propiedad?