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)