@daiso-tech/core
Version:
The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.
19 lines (18 loc) • 951 B
TypeScript
/**
* @module CircuitBreaker
*/
import { type BackoffPolicy } from "../../../../backoff-policies/_module.js";
import { type CircuitBreakerPolicy } from "../../../../circuit-breaker/implementations/adapters/database-circuit-breaker-adapter/circuit-breaker-policy.js";
import { type DatabaseCircuitBreakerUpdateStateFn } from "../../../../circuit-breaker/implementations/adapters/database-circuit-breaker-adapter/types.js";
/**
* @internal
*/
export declare class CircuitBreakerStateManager<TMetrics = unknown> {
private readonly circuitBreakerPolicy;
private readonly backoffPolicy;
constructor(circuitBreakerPolicy: CircuitBreakerPolicy<TMetrics>, backoffPolicy: BackoffPolicy);
updateState: DatabaseCircuitBreakerUpdateStateFn<TMetrics>;
trackFailure: DatabaseCircuitBreakerUpdateStateFn<TMetrics>;
trackSuccess: DatabaseCircuitBreakerUpdateStateFn<TMetrics>;
isolate: DatabaseCircuitBreakerUpdateStateFn<TMetrics>;
}