Type Alias Async<T>

Async<T>: {
    [K in keyof T]: T[K] extends ((...args: any[]) => unknown)
        ? ((...args: Parameters<T[K]>) => Promise<ReturnType<T[K]>>)
        : T[K]
}

converts all the methods in an interface to be async functions

Type Parameters

  • T