Tengo un archivo de Fonts simple que estoy importando con solo información en este momento que contiene Arial pero contendrá otros más adelante.
Fuentes.ts
interface Font { [key: string]: { 'full': string, 'trial': string } } interface FontList { [key: string]: Font } export const FONT_LIST: FontList = { 'Arial': { 'Regular': { 'full': 'blahblah', 'trial': 'blahblah' }, 'Bold': { 'full': 'blahblah', 'trial': 'blahblah' }, }, }En una función, estoy tratando de obtener el valor en función de su derecho
import { Fonts } from './Fonts' function foo(postscriptName:string, style: string) { const entitlement = "full"; const selectedFont = FONT_LIST[postscriptName][style][entitlement]; return selectedFont; } Para selectedFont , recibo un error de TS de: Type 'string' is not assignable to type '{ family: string; style: string; postscriptName: string; }'
para depurar, incluso probé selectedFont = FONT_LIST['Arial']['Bold']['full]; para asegurar que los valores estén ahí, pero recibo el mismo error.
Espero volver "blahblah".