import { PlatformAccessory, Service } from 'homebridge'; import { AccessorySubject } from './accessory_subject'; import { UnifiOccupancyPlatform } from './platform'; export declare abstract class AccessoryHandler { protected readonly platform: UnifiOccupancyPlatform; protected _accessory?: PlatformAccessory | null | undefined; private _subject?; private _room?; static SUBJECT_CLASS_NAME: string; static SUBJECT_CONTEXT_KEY: string; static ROOM_CONTEXT_KEY: string; static supportsAccessory(accessory: PlatformAccessory): boolean; static supportsSubject(subject: AccessorySubject): boolean; protected service?: Service | null; private _active; private _buildingAccessory; constructor(platform: UnifiOccupancyPlatform, _accessory?: PlatformAccessory | null | undefined, _subject?: AccessorySubject | null | undefined, _room?: string | null | undefined); get accessory(): PlatformAccessory | null; setAccessoryContext(): void; setupAccessory(): void; protected abstract subjectFromContext(context: any): AccessorySubject | null; get subjectContextKey(): string; get subject(): AccessorySubject | null; set subject(subject: AccessorySubject | null); get room(): string | null; set room(room: string | null); get displayName(): string; get uuid(): any; abstract get active(): any; get config(): any; protected abstract shouldHaveAccessory(existingAccessory?: PlatformAccessory | null): boolean; update(): boolean; get valid(): boolean; abstract get subjectContext(): object; } //# sourceMappingURL=accessory_handler.d.ts.map