import { HomebridgeContextProps } from 'homebridge-base-platform';
import { Service, Characteristic, PlatformAccessory } from 'homebridge';
import { CozytouchAccessoryWrapper } from '../cozytouch-accessory-wrapper';
import { CozytouchDevice } from "../../cozytouch-device";
export declare enum WaterHeatingState {
    softwareVersion = "core:DHWPSoftwareVersionState"
}
export declare abstract class WaterheatingAccessoryWrapper extends CozytouchAccessoryWrapper {
    protected readonly thermostatService: Service;
    protected currentHeatingCharacteristic: Characteristic;
    protected targetHeatingCharacteristic: Characteristic;
    protected currentTemperatureCharacteristic: Characteristic;
    protected targetTemperatureCharacteristic: Characteristic;
    constructor(context: HomebridgeContextProps, accessory: PlatformAccessory, device: CozytouchDevice);
    protected initThermostatService(): any;
    protected getSoftwareVersion(): string | undefined;
    abstract getCurrentHeatingState(): Promise<number>;
    abstract getTargetHeatingState(): Promise<number>;
    abstract setTargetHeatingState(state: number): Promise<boolean>;
    abstract getCurrentTemperature(): Promise<number>;
    abstract getTargetTemperature(): Promise<number>;
    abstract setTargetTemperature(temperature: number): Promise<boolean>;
}
