Дженерик тип
Параметры типа есть не только у функций. Их можно объявить у псевдонима типа и получить «шаблон», из которого собираются конкретные типы:
Видеоуроки, интерактивный редактор и сохранение прогресса — бесплатно, сразу после входа.
ВойтиСоздать аккаунт — бесплатноПараметры типа есть не только у функций. Их можно объявить у псевдонима типа и получить «шаблон», из которого собираются конкретные типы:
type Pair<T> = { left: T; right: T };
type Numbers = Pair<number>; // { left: number; right: number }В задании тип Box описан как коробка со строкой, а используется как коробка с числом:
Ошибка: «Type 'Box' is not generic». Запись Box<number> означает «подставь number в параметр Box», а параметров у Box нет. Даже если убрать <number>, станет только хуже: value внутри останется строкой, и число туда не положить.
С такими типами ты уже сталкивался, просто не писал их сам: Array<string>, Promise<number>, Record<string, boolean> устроены именно так.
Добавь Box параметр типа так, чтобы тип поля value определялся этим параметром. Объявление score менять не нужно.