import { API, Characteristic, DynamicPlatformPlugin, Logging, PlatformAccessory, PlatformConfig, Service } from 'homebridge';
import { DaikinOptionsInterface } from './daikinconfig.js';
/**
 * HomebridgePlatform
 * This class is the main constructor for your plugin, this is where you should
 * parse the user config and discover/register accessories with Homebridge.
 */
export declare class DaikinOnePlusPlatform implements DynamicPlatformPlugin {
    private readonly accessories;
    readonly api: API;
    config: DaikinOptionsInterface;
    readonly log: Logging;
    readonly Service: typeof Service;
    readonly Characteristic: typeof Characteristic;
    private readonly daikinApi;
    private discoverTimer;
    constructor(log: Logging, config: PlatformConfig, api: API);
    private discover;
    /**
     * This function is invoked when homebridge restores cached accessories from disk at startup.
     * It should be used to setup event handlers for characteristics and update respective values.
     */
    configureAccessory(accessory: PlatformAccessory): void;
    /**
     * This is an example method showing how to register discovered accessories.
     * Accessories must only be registered once, previously created accessories
     * must not be registered again to prevent "duplicate UUID" errors.
     */
    discoverDevices(): Promise<void>;
    private discoverEmergencyHeatSwitch;
    private discoverOneCleanFan;
    private discoverCirculateAirFan;
    private discoverScheduleSwitch;
    private discoverAwaySwitch;
    private discoverIndoorAqi;
    private discoverOutdoorAqi;
    private discoverIndoorHumSensor;
    private discoverOutdoorHumSensor;
    private discoverThermostat;
    private discoverOutdoorTemp;
    private accessoryName;
    debug(message: string, ...parameters: unknown[]): void;
}
//# sourceMappingURL=platform.d.ts.map