18 / 19
Как типизировать Promise.all с разными типами промисов?
Promise.all уже корректно выводит кортеж типов, если передать массив промисов с разными типами. TypeScript определит результат как кортеж вида [User, Post[], Settings]. Если автовывод не справляется, можно явно аннотировать через as const или generic-параметр. Для обработки ошибок используй Promise.allSettled, который возвращает PromiseSettledResult<T>[].