Поделиться через


Resolved type

Более узкая версия типа Awaited TypeScript 4.5, которая рекурсивно разворачивает "ожидаемый тип", эмулируя поведение await.

type Resolved<T> = (T extends { then(onfulfilled: F) => any } ? (F extends (value: V) => any ? Resolved<V> : never) : T)