19 / 19
Как типизировать функцию pipe с произвольным числом шагов?
Типизация pipe — одна из самых сложных задач в TypeScript. Нужно гарантировать, что выход каждой функции совпадает со входом следующей. Для ограниченного числа шагов используют перегрузки функций. Для произвольного числа применяют рекурсивные типы кортежей или библиотеки вроде fp-ts. На практике перегрузки на 5-10 шагов покрывают большинство случаев.