UNPKG

homebridge-homeconnect

Version:

A Homebridge plugin that connects Home Connect appliances to Apple HomeKit

635 lines 97.1 kB
import { ApplianceBase, ApplianceGeneric } from './appliance-generic.js'; declare const ApplianceAirConditioner_base: { new (...args: any[]): { readonly activeService: import("hap-nodejs").Service; acPrograms: Map<import("./api-value-types.js").ProgramKey, import("./has-fan-ac.js").ACProgram>; initHasFan(): Promise<void>; addFan(updateHC: (value?: import("./has-fan-ac.js").UpdateFanACHCValue) => Promise<void>): void; updateFanHC({ active, auto, percent }: import("./has-fan-ac.js").UpdateFanACHCValue): Promise<void>; setFan(active: boolean, auto: boolean, percent: number): Promise<void>; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { readonly powerService: import("hap-nodejs").Service; defaultOffValue?: import("./api-value-types.js").PowerState; initHasPower(): Promise<void>; updatePowerHK(): void; hasPowerOff(offValue: import("./api-value-types.js").PowerState): void; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & typeof ApplianceBase; export declare class ApplianceAirConditioner extends ApplianceAirConditioner_base { } declare const ApplianceFreezer_base: { new (...args: any[]): { initHasChildLock(): Promise<void>; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; powerService: import("hap-nodejs").Service; }; } & { new (...args: any[]): { readonly modeService: Partial<Record<import("./api-value.js").SettingKey, import("hap-nodejs").Service>>; readonly modes: Partial<Record<import("./api-value.js").SettingKey, string>>; initHasModes(): Promise<void>; hasMode(settingKey: import("./api-value.js").SettingKey, name: string): void; addModeSwitch(key: import("./api-value.js").SettingKey, name: string): import("hap-nodejs").Service; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { lightService: import("hap-nodejs").Service[]; initHasLight(): Promise<void>; addLightIfSupported(type: string, keys: { on: "BSH.Common.Setting.AmbientLightEnabled" | "Cooking.Common.Setting.Lighting" | "Refrigeration.Common.Setting.Light.External.Power" | "Refrigeration.Common.Setting.Light.Internal.Power"; brightness: "BSH.Common.Setting.AmbientLightBrightness" | "Cooking.Common.Setting.LightingBrightness" | "Refrigeration.Common.Setting.Light.External.Brightness" | "Refrigeration.Common.Setting.Light.Internal.Brightness"; } & { custom?: "BSH.Common.Setting.AmbientLightCustomColor" | undefined; colourtempenum?: "Cooking.Hood.Setting.ColorTemperature" | undefined; colourtempperc?: "Cooking.Hood.Setting.ColorTemperaturePercent" | undefined; colour?: "BSH.Common.Setting.AmbientLightColor" | undefined; }): Promise<import("hap-nodejs").Service | undefined>; refreshLight(type: string, keys: { on: "BSH.Common.Setting.AmbientLightEnabled" | "Cooking.Common.Setting.Lighting" | "Refrigeration.Common.Setting.Light.External.Power" | "Refrigeration.Common.Setting.Light.Internal.Power"; brightness: "BSH.Common.Setting.AmbientLightBrightness" | "Cooking.Common.Setting.LightingBrightness" | "Refrigeration.Common.Setting.Light.External.Brightness" | "Refrigeration.Common.Setting.Light.Internal.Brightness"; } & { custom?: "BSH.Common.Setting.AmbientLightCustomColor" | undefined; colourtempenum?: "Cooking.Hood.Setting.ColorTemperature" | undefined; colourtempperc?: "Cooking.Hood.Setting.ColorTemperaturePercent" | undefined; colour?: "BSH.Common.Setting.AmbientLightColor" | undefined; }, settings: import("./has-light.js").LightSettings, active?: boolean): Promise<void>; addLight(type: string, settings: import("./has-light.js").LightSettings): import("hap-nodejs").Service; updateLightHC(type: string, settings: import("./has-light.js").LightSettings, service: import("hap-nodejs").Service, value: import("./has-light.js").UpdateLightHCValue): Promise<void>; addLightOn(type: string, settings: import("./has-light.js").LightSettings<"on">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightOn(type: string, settings: import("./has-light.js").LightSettings<"on">, on: boolean): Promise<void>; addLightBrightness(type: string, settings: import("./has-light.js").LightSettings<"brightness"> | import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightBrightness(type: string, settings: import("./has-light.js").LightSettings<"brightness">, brightness: number): Promise<void>; addLightColourTemp(type: string, settings: import("./has-light.js").LightSettings<"colourtempperc"> | import("./has-light.js").LightSettings<"colourtempenum">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightColourTemp(type: string, settings: import("./has-light.js").LightSettings<"colourtempperc"> | import("./has-light.js").LightSettings<"colourtempenum">, mirek: number): Promise<void>; addLightColour(type: string, settings: import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightColour(type: string, settings: import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, hue?: number, saturation?: number, value?: number): Promise<void>; toRGB(hue: number, saturation: number, value: number): string; fromRGB(rgbHex: string): import("./has-light.js").HSV; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { readonly eventService: import("hap-nodejs").Service[]; labelService?: import("hap-nodejs").Service; readonly events: import("./has-events.js").EventDescription[]; initHasEvents(): Promise<void>; hasEvent(event: keyof import("./api-value-types.js").EventEventValues, name: string): void; addProgrammableSwitchService({ event, name }: import("./has-events.js").EventDescription): import("hap-nodejs").Service; addLabelService(): import("hap-nodejs").Service; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { readonly doorService: Partial<Record<import("./has-door.js").DoorStatusKey, import("hap-nodejs").Service>>; readonly doors: Partial<Record<import("./has-door.js").DoorStatusKey, string>>; initHasDoor(): Promise<void>; hasDoor(statusKey: import("./has-door.js").DoorStatusKey, name: string): void; addDoor(key: import("./has-door.js").DoorStatusKey, name: string, subtype?: string): import("hap-nodejs").Service; addDoorControl(service: import("hap-nodejs").Service, supportsOpen: boolean, supportsPartly: boolean): void; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { readonly powerService: import("hap-nodejs").Service; defaultOffValue?: import("./api-value-types.js").PowerState; initHasPower(): Promise<void>; updatePowerHK(): void; hasPowerOff(offValue: import("./api-value-types.js").PowerState): void; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & typeof ApplianceBase; export declare class ApplianceFreezer extends ApplianceFreezer_base { constructor(...args: ConstructorParameters<typeof ApplianceGeneric>); } declare const ApplianceFridgeFreezer_base: { new (...args: any[]): { initHasChildLock(): Promise<void>; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; powerService: import("hap-nodejs").Service; }; } & { new (...args: any[]): { readonly modeService: Partial<Record<import("./api-value.js").SettingKey, import("hap-nodejs").Service>>; readonly modes: Partial<Record<import("./api-value.js").SettingKey, string>>; initHasModes(): Promise<void>; hasMode(settingKey: import("./api-value.js").SettingKey, name: string): void; addModeSwitch(key: import("./api-value.js").SettingKey, name: string): import("hap-nodejs").Service; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { lightService: import("hap-nodejs").Service[]; initHasLight(): Promise<void>; addLightIfSupported(type: string, keys: { on: "BSH.Common.Setting.AmbientLightEnabled" | "Cooking.Common.Setting.Lighting" | "Refrigeration.Common.Setting.Light.External.Power" | "Refrigeration.Common.Setting.Light.Internal.Power"; brightness: "BSH.Common.Setting.AmbientLightBrightness" | "Cooking.Common.Setting.LightingBrightness" | "Refrigeration.Common.Setting.Light.External.Brightness" | "Refrigeration.Common.Setting.Light.Internal.Brightness"; } & { custom?: "BSH.Common.Setting.AmbientLightCustomColor" | undefined; colourtempenum?: "Cooking.Hood.Setting.ColorTemperature" | undefined; colourtempperc?: "Cooking.Hood.Setting.ColorTemperaturePercent" | undefined; colour?: "BSH.Common.Setting.AmbientLightColor" | undefined; }): Promise<import("hap-nodejs").Service | undefined>; refreshLight(type: string, keys: { on: "BSH.Common.Setting.AmbientLightEnabled" | "Cooking.Common.Setting.Lighting" | "Refrigeration.Common.Setting.Light.External.Power" | "Refrigeration.Common.Setting.Light.Internal.Power"; brightness: "BSH.Common.Setting.AmbientLightBrightness" | "Cooking.Common.Setting.LightingBrightness" | "Refrigeration.Common.Setting.Light.External.Brightness" | "Refrigeration.Common.Setting.Light.Internal.Brightness"; } & { custom?: "BSH.Common.Setting.AmbientLightCustomColor" | undefined; colourtempenum?: "Cooking.Hood.Setting.ColorTemperature" | undefined; colourtempperc?: "Cooking.Hood.Setting.ColorTemperaturePercent" | undefined; colour?: "BSH.Common.Setting.AmbientLightColor" | undefined; }, settings: import("./has-light.js").LightSettings, active?: boolean): Promise<void>; addLight(type: string, settings: import("./has-light.js").LightSettings): import("hap-nodejs").Service; updateLightHC(type: string, settings: import("./has-light.js").LightSettings, service: import("hap-nodejs").Service, value: import("./has-light.js").UpdateLightHCValue): Promise<void>; addLightOn(type: string, settings: import("./has-light.js").LightSettings<"on">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightOn(type: string, settings: import("./has-light.js").LightSettings<"on">, on: boolean): Promise<void>; addLightBrightness(type: string, settings: import("./has-light.js").LightSettings<"brightness"> | import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightBrightness(type: string, settings: import("./has-light.js").LightSettings<"brightness">, brightness: number): Promise<void>; addLightColourTemp(type: string, settings: import("./has-light.js").LightSettings<"colourtempperc"> | import("./has-light.js").LightSettings<"colourtempenum">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightColourTemp(type: string, settings: import("./has-light.js").LightSettings<"colourtempperc"> | import("./has-light.js").LightSettings<"colourtempenum">, mirek: number): Promise<void>; addLightColour(type: string, settings: import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, updateLightHC: (value: import("./has-light.js").UpdateLightHCValue) => void | Promise<void>): void; setLightColour(type: string, settings: import("./has-light.js").LightSettings<"colour" | "custom">, service: import("hap-nodejs").Service, hue?: number, saturation?: number, value?: number): Promise<void>; toRGB(hue: number, saturation: number, value: number): string; fromRGB(rgbHex: string): import("./has-light.js").HSV; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js").OnSetHandler<number>): import("hap-nodejs").CharacteristicSetHandler; onSetString(handler: import("./appliance-generic.js").OnSetHandler<string>): import("hap-nodejs").CharacteristicSetHandler; trap<Type>(when: string, promise: Promise<Type> | Type, canThrow?: boolean): Promise<Type | undefined>; }; } & { new (...args: any[]): { readonly eventService: import("hap-nodejs").Service[]; labelService?: import("hap-nodejs").Service; readonly events: import("./has-events.js").EventDescription[]; initHasEvents(): Promise<void>; hasEvent(event: keyof import("./api-value-types.js").EventEventValues, name: string): void; addProgrammableSwitchService({ event, name }: import("./has-events.js").EventDescription): import("hap-nodejs").Service; addLabelService(): import("hap-nodejs").Service; readonly Service: typeof import("hap-nodejs").Service; readonly Characteristic: typeof import("hap-nodejs").Characteristic; readonly config: import("./config-types.js").ApplianceConfig; readonly schema: import("./homebridge-ui/schema-data.js").ConfigSchemaData; readonly optionalFeatures: import("./homebridge-ui/schema-data.js").SchemaOptionalFeature[]; readonly cache: import("./persist-cache.js").PersistCache; readonly cachedOperation: Record<string, string>; readonly cachedPromise: Map<string, Promise<unknown>>; readonly asyncInitTasks: { name: string; promise: Promise<void>; }[]; serviceNames: import("./service-name.js").ServiceNames; readonly accessoryInformationService: import("hap-nodejs").Service; readonly obsoleteServices: import("hap-nodejs").Service[]; readonly log: import("homebridge").Logger; readonly platform: import("./platform.js").HomeConnectPlatform; readonly device: import("./homeconnect-device.js").HomeConnectDevice; readonly accessory: import("homebridge").PlatformAccessory; asyncInitialise(name: string, promise: Promise<void>): void; waitAsyncInitialisation(): Promise<void>; makeService(serviceConstructor: typeof import("hap-nodejs").Service & { new (displayName?: string, subtype?: string): import("hap-nodejs").Service; UUID: string; }, suffix?: string, subtype?: string): import("hap-nodejs").Service; cleanupServices(): void; cleanupOldVersions(): void; unregister(): void; identify(): Promise<void>; hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean; setOptionalFeatures(): void; getCached<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; doCachedOperation<Type>(key: string, operation: () => Promise<Type>): Promise<Type>; makeSerialised<Value extends import("./serialised.js").SerialisedValue, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>, defaultValue?: Value): (value?: Value) => Promise<Returns>; makeSerialisedObject<Value extends object, Returns = void>(operation: import("./serialised.js").SerialisedOperation<Value, Returns>): (value?: Value) => Promise<Returns>; onSet<Type>(handler: import("./appliance-generic.js").OnSetHandler<Type>, assertIsType: (value: unknown) => asserts value is Type): import("hap-nodejs").CharacteristicSetHandler; onSetBoolean(handler: import("./appliance-generic.js").OnSetHandler<boolean>): import("hap-nodejs").CharacteristicSetHandler; onSetNumber(handler: import("./appliance-generic.js"