UNPKG

homebridge-ecobee-status

Version:

Homebridge plugin to control Ecobee thermostat Home/Away/Sleep status through HomeKit security system interface

33 lines 1.12 kB
import { AxiosError } from 'axios'; interface RetryOptions { maxAttempts?: number; initialDelay?: number; maxDelay?: number; backoffFactor?: number; totalWindowSeconds?: number; retryableErrors?: string[]; } interface Logger { error: (message: string, error?: Error | AxiosError) => void; warn: (message: string, ...metadata: unknown[]) => void; debug?: (message: string, ...metadata: unknown[]) => void; } export declare class NetworkRetry { private readonly maxAttempts; private readonly initialDelay; private readonly maxDelay; private readonly backoffFactor; private readonly totalWindowMs; private readonly retryableErrors; private consecutiveFailures; private lastSuccessTime; constructor(options?: RetryOptions); isRetryableNetworkError(error: unknown): boolean; private isRetryableError; private formatErrorMessage; private calculateDelay; private shouldReduceVerbosity; execute<T>(operation: () => Promise<T>, logger?: Logger, context?: string): Promise<T>; } export {}; //# sourceMappingURL=network-retry.d.ts.map