Индексируемый тип для массивов в TypeScript

В TypeScript можно делать интерфейсы, которые будут задавать тип пары ключ-значение в массивах и объектах. Такой тип называется индексируемым.

Посмотрим на практике. Давайте создадим интерфейс IArray, который будет задавать пару ключ-элемент для массива. Укажем, что ключом массива будет число (тут у нас других вариантов и нет), а значением - строка:

typescriptinterface IArray {
  [index: number]: string;
}

Теперь объявим переменную arr с нашим индексированным типом:

typescriptlet arr: IArray;

Зададим нашей переменной значение в виде массива строк:

typescriptlet arr: IArray = ['a', 'b', 'c'];

Теперь, если в качестве элементов массива сделать числа, то TypeScript выдаст ошибку:

typescriptlet arr: IArray = [1, 2, 3]; // ошибка
Задание 1

Создайте интерфейс, описывающий массив со значениями в виде чисел.