import { CharacteristicGetCallback, CharacteristicSetCallback, CharacteristicValue, PlatformAccessory } from 'homebridge';
import { EightSleepPodPlatformPlugin } from './platform';
export { Levels, Sides } from 'eightsleep/dist/cjs/EightSleepAppApi';
declare type TargetHeaterCoolerStateType = 0 | 1 | 2;
declare type PositiveLevelsType = 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100;
/**
 * Platform 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 EightsleepPodPlatformAccessory {
    private readonly platform;
    private readonly accessory;
    private service;
    private eightSleepPod;
    private targetHeatCool;
    constructor(platform: EightSleepPodPlatformPlugin, accessory: PlatformAccessory);
    getActiveState: (cb: CharacteristicGetCallback<number>) => Promise<void>;
    setActiveState: (active: CharacteristicValue, cb: CharacteristicSetCallback) => Promise<void>;
    getCurrentHeaterCoolerState: (cb: CharacteristicGetCallback<number>) => Promise<void>;
    getTargetHeaterCoolerState: (cb: CharacteristicGetCallback<TargetHeaterCoolerStateType>) => Promise<void>;
    setTargetHeaterCoolerState: (state: CharacteristicValue, cb: CharacteristicSetCallback) => Promise<void>;
    getRotationSpeed: (cb: CharacteristicGetCallback<PositiveLevelsType>) => Promise<void>;
    setRotationSpeed: (rotationSpeed: CharacteristicValue, cb: CharacteristicSetCallback) => Promise<void>;
    getCurrentTemperature: (cb: CharacteristicGetCallback<number>) => Promise<void>;
}
//# sourceMappingURL=platformAccessory.d.ts.map