Tuples отвечают и на literal, и на number indices:Pair[0] — тип первого элемента; Pair[number] — union всех элементов. [0] — один слот, [number] — «любой слот».
Индексировать можно только valid key.User['nope'] — compile error. Вложенные lookup chain: Api['user']['name'].
Итог
Indexed access связывает производные типы с источником; as const + [number] — union из данных без дублирования.
TypeScript: indexed access types — как это работает? · Sobeso