/** * @author k8w * email: me@k8w.io */ import 'core-js/es/promise/finally'; export declare class SuperPromise implements Promise { readonly [Symbol.toStringTag] = "SuperPromise"; protected _promise: Promise; /** have been rs or rj */ isCompleted: boolean; isAborted: boolean; constructor(executor: (resolve: (value: T | PromiseLike) => void, reject: (reason: any) => void) => void); /** * Abort event * @param handler */ onAbort?: () => void; /** * 立即取消该Promise * 如果取消成功或之前已经取消,则返回true * 如果取消失败(已经resolve或reject),则返回false */ abort(): boolean; then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): SuperPromise; catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): SuperPromise; finally(onfinally?: (() => void) | undefined | null): SuperPromise; }