import { SystemModel } from './api/models'; import { Service, Characteristic, Logger } from 'homebridge'; import { CharacteristicValue, UnknownContext, WithUUID } from 'homebridge'; import { CarrierInfinityHomebridgePlatform } from './platform'; declare class Wrapper { readonly platform: CarrierInfinityHomebridgePlatform; protected readonly context: UnknownContext; readonly Service: typeof Service; readonly Characteristic: typeof Characteristic; protected readonly system: SystemModel; protected readonly log: Logger; constructor(platform: CarrierInfinityHomebridgePlatform, context: UnknownContext); wrap(service: Service): void; } export declare abstract class MultiWrapper extends Wrapper { protected WRAPPERS: typeof Wrapper[]; wrap(service: Service): void; } export declare abstract class CharacteristicWrapper extends Wrapper { abstract ctype: WithUUID Characteristic>; protected props: {}; protected get: (() => Promise) | undefined; protected set: ((value: CharacteristicValue) => Promise) | undefined; protected default_value: CharacteristicValue | null; wrap(service: Service): void; } export declare abstract class ThermostatCharacteristicWrapper extends CharacteristicWrapper { getActivity(): Promise; getHoldTime(): Promise; } export declare class AccessoryInformation extends Wrapper { wrap(service: Service): void; } export {}; //# sourceMappingURL=characteristics_base.d.ts.map