import { API, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig, Service, Characteristic } from 'homebridge';
import ACContext from './@types/ACContext';
import { AutomationReturn } from './services/HttpService';
import { DeviceConfiguration } from './configModel';
export declare class Platform implements DynamicPlatformPlugin {
    readonly log: Logger;
    readonly config: PlatformConfig;
    readonly api: API;
    readonly Service: typeof Service;
    readonly Characteristic: typeof Characteristic;
    readonly accessories: PlatformAccessory<ACContext>[];
    private readonly registeredDevices;
    private httpService?;
    private readonly mqttClient?;
    get devices(): DeviceConfiguration[];
    constructor(log: Logger, config: PlatformConfig, api: API);
    httpHandler(uri: string): AutomationReturn;
    configureAccessory(accessory: PlatformAccessory<ACContext>): void;
    private onDeviceFound;
    private onDeviceUpdated;
    private initializeMqttClient;
    private onMqttConnected;
    private onMqttClose;
    private onMessage;
    private static createMqttOptions;
}
//# sourceMappingURL=platform.d.ts.map