Avatar ·

TypeScript: como percorrer corretamente um dicionário (objeto) em um loop?

Olá a todos! Comecei a estudar TypeScript recentemente e me deparei com uma tarefa que parece simples, mas me deixou travado. Tenho um objeto que uso como dicionário (chaves são strings, valores são números). Preciso percorrer todos os seus pares chave-valor em um loop. Em JavaScript comum, eu faria assim: ```typescript const dict = { apple: 5, banana: 3, orange: 7 }; for (let key in dict) { console.log(key, dict[key]); } ``` Mas o TypeScript reclama de `dict[key]` — diz algo como `Element implicitly has an 'any' type because index expression is not of type 'number'`. Tentei usar `Object.keys`: ```typescript Object.keys(dict).forEach(key => { console.log(key, dict[key]); // erro novamente! }); ``` Também dá erro! Como percorrer corretamente um objeto-dicionário em TypeScript? Preciso que o TypeScript entenda os tipos das chaves e valores, em vez de apenas colocar `any`. E também: qual é a maneira mais performática e típica para essa tarefa? Agradeço desde já pela ajuda.