import { PlatformAccessory, Service } from 'homebridge';
import { ISolarSystemConfigStatus } from '../configStatus';
import { SolarSystemDevice } from '../devices/solarSystemDevice';
import { ConnectMyPoolHomeAutomationHomebridgePlatform } from '../platform';
import { PoolStatus } from '../status';
import { Accessory } from './accessory';
/**
 * Solar System Accessory
 * An instance of this class is created for each accessory your platform registers
 * Each accessory may expose multiple services of different service types.
 */
export declare class SolarSystemAccessory extends Accessory {
    readonly platform: ConnectMyPoolHomeAutomationHomebridgePlatform;
    readonly accessory: PlatformAccessory;
    private stateCurrentHeatingCooling;
    private stateTargetHeatingCooling;
    private currentTemperature;
    private currentTargetTemperature;
    private solarSystemConfigStatus;
    private readonly sunrise;
    private readonly sunset;
    constructor(platform: ConnectMyPoolHomeAutomationHomebridgePlatform, accessory: PlatformAccessory, device: SolarSystemDevice, status: PoolStatus);
    protected setUpServices(): void;
    protected createSolarSystemService(): Service;
    protected createPoolTemperatureService(): Service;
    private isDayTime;
    protected getSolarSystemConfigStatus(status: PoolStatus): ISolarSystemConfigStatus;
    setConfigStatus(status: PoolStatus): void;
    updateStatus(status: PoolStatus): Promise<void>;
    getCurrentTemperature(): number;
    getTargetTemperature(): number;
    setTargetTemperature(value: any): void;
    getCurrentHeatingCoolingState(): number;
    getTargetHeatingCoolingState(): number;
    setTargetHeatingCoolingState(value: any): void;
}
//# sourceMappingURL=solarSystemAccessory.d.ts.map