|
-
- export interface OnCancelFunction {
- (cancelHandler: () => void): void;
- shouldReject: boolean;
- }
-
- declare class PCancelable<ValueType> extends Promise<ValueType> {
-
-
- static fn<ReturnType>(
- userFn: (onCancel: OnCancelFunction) => PromiseLike<ReturnType>
- ): () => PCancelable<ReturnType>;
- static fn<Agument1Type, ReturnType>(
- userFn: (
- argument1: Agument1Type,
- onCancel: OnCancelFunction
- ) => PromiseLike<ReturnType>
- ): (argument1: Agument1Type) => PCancelable<ReturnType>;
- static fn<Agument1Type, Agument2Type, ReturnType>(
- userFn: (
- argument1: Agument1Type,
- argument2: Agument2Type,
- onCancel: OnCancelFunction
- ) => PromiseLike<ReturnType>
- ): (
- argument1: Agument1Type,
- argument2: Agument2Type
- ) => PCancelable<ReturnType>;
- static fn<Agument1Type, Agument2Type, Agument3Type, ReturnType>(
- userFn: (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type,
- onCancel: OnCancelFunction
- ) => PromiseLike<ReturnType>
- ): (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type
- ) => PCancelable<ReturnType>;
- static fn<Agument1Type, Agument2Type, Agument3Type, Agument4Type, ReturnType>(
- userFn: (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type,
- argument4: Agument4Type,
- onCancel: OnCancelFunction
- ) => PromiseLike<ReturnType>
- ): (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type,
- argument4: Agument4Type
- ) => PCancelable<ReturnType>;
- static fn<
- Agument1Type,
- Agument2Type,
- Agument3Type,
- Agument4Type,
- Agument5Type,
- ReturnType
- >(
- userFn: (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type,
- argument4: Agument4Type,
- argument5: Agument5Type,
- onCancel: OnCancelFunction
- ) => PromiseLike<ReturnType>
- ): (
- argument1: Agument1Type,
- argument2: Agument2Type,
- argument3: Agument3Type,
- argument4: Agument4Type,
- argument5: Agument5Type
- ) => PCancelable<ReturnType>;
- static fn<ReturnType>(
- userFn: (...arguments: unknown[]) => PromiseLike<ReturnType>
- ): (...arguments: unknown[]) => PCancelable<ReturnType>;
-
-
-
- constructor(
- executor: (
- resolve: (value?: ValueType | PromiseLike<ValueType>) => void,
- reject: (reason?: unknown) => void,
- onCancel: OnCancelFunction
- ) => void
- );
-
- /**
- * Whether the promise is canceled.
- */
- readonly isCanceled: boolean;
-
- /**
- * Cancel the promise and optionally provide a reason.
- *
- * The cancellation is synchronous. Calling it after the promise has settled or multiple times does nothing.
- *
- * @param reason - The cancellation reason to reject the promise with.
- */
- cancel(reason?: string): void;
- }
-
- export default PCancelable;
-
- /**
- * Rejection reason when `.cancel()` is called.
- *
- * It includes a `.isCanceled` property for convenience.
- */
- export class CancelError extends Error {
- readonly name: 'CancelError';
- readonly isCanceled: true;
-
- constructor(reason?: string);
- }
|