В TypeScript получение
keyof [string, number] кортежа даст не "0" | "1", а:"0" | "1" | "length" | "push" | "toString" | ...Пу-пу-пу...
Хочешь только индексы?
type IndexKeys<T extends any[]> = Extract<keyof T, `${number}`>;
Теперь
IndexKeys<[string, number]> → "0" | "1".Проклято.
#ts #keyof