ts 递归的将一个对象上的所有方法改成返回promise

type Promiseify<T> = T extends Promise<infer P> ? T : Promise<T>;
type apisPromise<P> = {
  readonly [K in keyof P]: P[K] extends (...args: any) => any
    ? (...arg: Parameters<P[K]>) => Promiseify<ReturnType<P[K]>>
    : P[K] extends Object
    ? apisPromise<P[K]>
    : P[K];
};

by 崮生 from 崮生 • 一些随笔 🎨,欢迎 赞助本文
本文欢迎分享与聚合,全文转载未经授权( 联系我)不许可。