Если кратко, то TS не использует extends-условия с типами-параметрами в правой части для вывода этих типов-параметров (условие TIterable extends Iterable<TValue> не накладывает ограничений на TValue, даже при вычисленном значении TIterable), поэтому в первом случае TS не может вывести TValue из TIterable: play.
Обсуждают сегодня