Bom dia
Primeiramente, parabéns pelo curso e tema escolhido para o projeto. (gostaria muito de ver uma continuação em um curso futuro nessa formação desse mesmo projeto, porém adaptado para consumir dados de um back-end já pronto, por meio de axios ou fetch api, segurança, etc.)
A respeito do type Prato = typeof cardapio[0], Se fosse em uma situação que estivesse integrado a um back-end, qual seria a abordagem recomendada para definir o tipo Prato?, uma vez que cardapio atualmente está em uma pasta do próprio projeto (para simular os dados), se fosse para mapear a estrutura do que seria um Prato do back-end, o ideal seria criar uma interface Cardapio e passando todos os atributos definidos na entidade do back-end? (geralmente aplicado quando se utiliza Angular)
por exemplo:
interface Cardapio {
title: string;
description: string;
photo: string;
size: number;
serving: number;
price: number;
id: number;
category: Category;
}
export type Prato = typeof Cardapio;