Tengo un objeto de tipos de moneda con propiedades como esta:
CurrencyType = { usd: { country: 'United States', symbol: '$USD', icon: <USD /> }, cad: { country: 'Canada', symbol: '$CAD', icon: <CAD /> }, etc... } ¿Cómo puedo escribir el tipo para que tome un valor dinámico para la clave de cada objeto: usd o cad ?
Estoy tratando de encontrar cómo puedo configurar el tipo de mecanografiado para este objeto anterior para que se incluyan los nombres de los objetos.
Básicamente quiero algo como esto:
export interface CurrencyTypes { [currencyName: string]: { country: string; symbol: string; icon: React.ReactNode; }Creo que está buscando algo como esto donde itera sobre los valores de otro tipo.
type CountryCurrency = "usd" | "cad" | "aud"; export interface CurrencyTypes { [Currency in CountryCurrency]: { country: string; symbol: string; icon: React.ReactNode; } } Esto requerirá que cualquier objeto que implemente la interfaz CurrencyTypes tenga todas las claves que sean valores posibles de CountryCurrency