import { Logger } from 'homebridge';
import { SwitchbotDeviceWoHand } from 'node-switchbot';
import { Optional } from '../types/generalTypes';
export declare class SwitchBotClient {
    private log;
    private readonly client;
    private readonly deviceCache;
    constructor(log: Logger);
    getDevice: (address: string, scanDuration: number, retries?: number, waitBetweenRetries?: number) => Promise<Optional<SwitchbotDeviceWoHand>>;
    setDeviceState: (device: SwitchbotDeviceWoHand, targetState: boolean, retries?: number, waitBeteenRetries?: number) => Promise<void>;
    private getDeviceFromScan;
    private getDeviceFromCache;
    private setDeviceOnCache;
    private attemptRun;
}
//# sourceMappingURL=switchBotClient.d.ts.map