import { PlatformAccessory } from 'homebridge'; import { DingzDaHomebridgePlatform } from '../platform'; import { DeviceInfo } from './commonTypes'; import { DingzLogger } from './dingzLogHelper'; import { AxiosError, AxiosInstance } from 'axios'; import { AccessoryEventBus } from './accessoryEventBus'; import { AxiosDebugHelper } from './axiosDebugHelper'; /** * DingzDaBase Accessory is our base class * - getDeviceStateUpdate() is the one method every child class should override * TODO: #140 [FIX] use interface & class inheritance to make this clearer */ export declare class DingzDaBaseAccessory { protected readonly platform: DingzDaHomebridgePlatform; protected readonly accessory: PlatformAccessory; protected device: DeviceInfo; protected static axiosRetryConfig: { retries: number; retryDelay: (retryNumber: number) => number; shouldResetTimeout: boolean; }; protected static axios: import("axios").AxiosStatic; protected readonly log: DingzLogger; protected readonly request: AxiosInstance; protected readonly debugHelper: AxiosDebugHelper; protected baseUrl: string; protected reachabilityState: null | Error; readonly eb: AccessoryEventBus; constructor(platform: DingzDaHomebridgePlatform, accessory: PlatformAccessory); protected reconfigureAccessory(init?: boolean): void; protected getDeviceStateUpdate(): Promise; /** * Handler for request errors * @param e AxiosError: the error returned by this.request() */ protected handleRequestErrors: (e: AxiosError) => void; identify(): void; } //# sourceMappingURL=dingzDaBaseAccessory.d.ts.map