/** * Interface for the circuit breaker. */ export default interface ICircuitBreaker { /** * Is the circuit breaker tripped. * @returns {boolean} Is the circuit breaker tripped. */ get isTripped(): boolean; /** * Reset the circuit breaker. * @returns {boolean} Is the circuit breaker tripped. */ reset(): boolean; /** * Test the circuit breaker. * @returns {void} * @throws {CircuitBreakerError} Circuit breaker is tripped. */ test(): void; /** * Trip the circuit breaker. * @returns {boolean} Is the circuit breaker tripped. */ trip(): boolean; }