import type { CharacteristicValue, PlatformAccessory } from 'homebridge';
import type { SmartHQPlatform } from '../platform.js';
import type { devicesConfig, SmartHqContext } from '../settings.js';
import { deviceBase } from './device.js';
declare enum OperationMode {
    COOL = "00",
    FAN_ONLY = "01",
    ENERGY_SAVER = "02",
    HEAT = "03",
    DRY = "04"
}
export declare class SmartHQAirConditioner extends deviceBase {
    protected readonly platform: SmartHQPlatform;
    protected readonly accessory: PlatformAccessory<SmartHqContext>;
    protected readonly device: SmartHqContext['device'] & devicesConfig;
    private readonly HEATER_COOLER_SVC_NAME;
    private readonly heaterCoolerSvc;
    private readonly MODE_SWITCH_SVC_PREFIX;
    private readonly modeSwitchSvc;
    constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
    private getErdValue;
    private setErdValue;
    private getPowerState;
    private setPowerState;
    private getAmbientTemperature;
    private getTemperature;
    private setTemperature;
    private getTemperatureDisplayUnits;
    private setTemperatureDisplayUnits;
    private getOperationMode;
    private setOperationMode;
    private getFanSetting;
    private setFanSetting;
    private getFilterStatus;
    private getSwingMode;
    private setSwingMode;
    handleGetActive(): Promise<CharacteristicValue>;
    handleSetActive(value: CharacteristicValue): Promise<void>;
    handleGetCurrentHeaterCoolerState(): Promise<number>;
    handleGetTargetHeaterCoolerState(): Promise<CharacteristicValue>;
    handleSetTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
    handleGetCurrentTemperature(): Promise<number>;
    handleGetCoolingThresholdTemperature(): Promise<number>;
    handleSetCoolingThresholdTemperature(value: CharacteristicValue): Promise<void>;
    handleGetHeatingThresholdTemperature(): Promise<number>;
    handleSetHeatingThresholdTemperature(value: CharacteristicValue): Promise<void>;
    handleGetRotationSpeed(): Promise<CharacteristicValue>;
    handleSetRotationSpeed(value: CharacteristicValue): Promise<void>;
    handleGetTemperatureDisplayUnits(): Promise<CharacteristicValue>;
    handleSetTemperatureDisplayUnits(value: CharacteristicValue): Promise<void>;
    handleGetFilterChangeIndication(): Promise<CharacteristicValue>;
    handleGetSwingMode(): Promise<CharacteristicValue>;
    handleSetSwingMode(value: CharacteristicValue): Promise<void>;
    handleGetOperationMode(mode: OperationMode): Promise<CharacteristicValue>;
    handleSetOperationMode(mode: OperationMode, value: CharacteristicValue): Promise<void>;
    handleGetOperationModeName(mode: OperationMode): string;
    refreshState(): Promise<void>;
    private fahrenheitToCelsius;
    private celsiusToFahrenheit;
}
export {};
//# sourceMappingURL=airConditioner.d.ts.map