import { PlatformAccessory } from 'homebridge';
import { RinnaiTouchPlatform, devices } from '../platform';
import { AccessoryBase } from './AccessoryBase';
export declare class AccessoryService {
    private readonly platform;
    private accessories;
    private deviceModes;
    private modeNames;
    constructor(platform: RinnaiTouchPlatform);
    discover(devices: devices): void;
    discoverThermostats(devices: devices): void;
    discoverHeaterCoolers(devices: devices): void;
    discoverFan(): void;
    discoverZoneSwitches(devices: devices): void;
    discoverAdvanceSwitches(devices: devices): void;
    discoverManualSwitches(devices: devices): void;
    discoverPump(devices: devices): void;
    addAccessory<TAccessory extends AccessoryBase>(Accessory: new (platform: RinnaiTouchPlatform, accessory: PlatformAccessory) => TAccessory, name: string, displayName: string, zone?: string, mode?: string): void;
    removeAccessory(name: string, zone?: string, mode?: string): void;
    configure(platformAccessory: PlatformAccessory): void;
    createAccessory(platformAccessory: PlatformAccessory): AccessoryBase | undefined;
    getKey(name: string, zone?: string, mode?: string): string;
}
//# sourceMappingURL=AccessoryService.d.ts.map