UNPKG

cockatiel

Version:

A resilience and transient-fault-handling library that allows developers to express policies such as Backoff, Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner. Inspired by .NET Polly.

23 lines (22 loc) 868 B
import { ExecuteWrapper } from './common/Executor'; import { IDefaultPolicyContext, IPolicy } from './Policy'; export declare class FallbackPolicy<AltReturn> implements IPolicy<IDefaultPolicyContext, AltReturn> { private readonly executor; private readonly value; readonly _altReturn: AltReturn; /** * @inheritdoc */ readonly onSuccess: import(".").Event<import("./Policy").ISuccessEvent>; /** * @inheritdoc */ readonly onFailure: import(".").Event<import("./Policy").IFailureEvent>; constructor(executor: ExecuteWrapper, value: () => AltReturn); /** * Executes the given function. * @param fn Function to execute. * @returns The function result or fallback value. */ execute<T>(fn: (context: IDefaultPolicyContext) => PromiseLike<T> | T, signal?: AbortSignal): Promise<T | AltReturn>; }