UNPKG

homebridge-homeconnect

Version:

A Homebridge plugin that connects Home Connect appliances to Apple HomeKit

678 lines (677 loc) 183 kB
import { ApplianceGeneric } from './appliance-generic.js'; import { PowerState } from './api-value-types.js'; declare const ApplianceCoffeeMaker_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 programService: import("hap-nodejs").Service[]; programs: (import("./api-value.js").ProgramDefinitionKV<import("./api-value-types.js").ProgramKey> & { selected?: boolean; })[]; supportsPowerOn: boolean; autoSelectingPrograms: boolean; initHasPrograms(): Promise<void>; initPrograms(): Promise<void>; refreshPrograms(active?: boolean): Promise<void>; missingOptionsHelp(programs: import("./api-value.js").ProgramDefinitionKV[]): void; updateProgramsWithoutSelecting(programKeys: import("./api-value-types.js").ProgramKey[]): Promise<void>; updateProgramsSelectFirst(programKeys: import("./api-value-types.js").ProgramKey[]): Promise<void>; updateCachedProgram<Key extends import("./api-value-types.js").ProgramKey>(details: import("./api-value.js").ProgramDefinitionKV<Key>, selected: boolean): void; selectAndGetAvailableProgram<Key extends import("./api-value-types.js").ProgramKey>(programKey: Key): Promise<import("./api-value.js").ProgramDefinitionKV<Key>>; getAvailableProgram<Key extends import("./api-value-types.js").ProgramKey>(programKey: Key): Promise<import("./api-value.js").ProgramDefinitionKV<Key>>; requireProgramReady(programKey: import("./api-value-types.js").ProgramKey): void; savePrograms(): Promise<void>; updateSelectedProgram(programKey: import("./api-value-types.js").ProgramKey | null): Promise<void>; addAllPrograms(): void; addConfiguredPrograms(config: import("./config-types.js").ApplianceProgramConfig[]): void; assertIsProgramKey<Key extends import("./api-value-types.js").ProgramKey>(programKey: string): asserts programKey is Key; assertIsOptionKey<Key extends import("./api-value.js").OptionKey>(programKey: import("./api-value-types.js").ProgramKey, optionKey: string): asserts optionKey is Key; assertIsOptionValue<Key extends import("./api-value.js").OptionKey>(programKey: import("./api-value-types.js").ProgramKey, optionKey: Key, value: string | number | boolean): asserts value is import("./api-value.js").KVValue<import("./api-value-types.js").OptionValues, Key>; addPrograms(programs: import("./has-programs.js").CheckedProgramConfig[]): void; addProgram({ name, key, selectonly, options }: import("./has-programs.js").CheckedProgramConfig): import("hap-nodejs").Service; addActiveProgramControl(supportsPause?: boolean, supportsResume?: boolean): void; identify(): Promise<void>; makeConfigOption<Key extends import("./api-value.js").OptionKey>(option: import("./api-value.js").OptionDefinitionKV<Key>): Record<string, unknown>; setSchemaPrograms(allPrograms: import("./api-value.js").ProgramDefinitionKV[]): void; setSchemaProgramOptions<Key extends import("./api-value-types.js").ProgramKey>(program: import("./api-value.js").ProgramDefinitionKV<Key>): void; makeSchemaOption<Key extends import("./api-value.js").OptionKey>(option: import("./api-value.js").OptionDefinitionKV<Key>): import("./homebridge-ui/schema-data.js").SchemaProgramOption; makeName(name: string | undefined, key: import("./api-value-types.js").ProgramKey | import("./api-types.js").Value): string; simpleName(name: string | undefined, key: string): string; isOptionRelative(key: import("./api-value.js").OptionKey): key is "BSH.Common.Option.FinishInRelative" | "BSH.Common.Option.StartInRelative"; timeToSeconds(value: string | number): number; 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; 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>; activeService?: import("hap-nodejs").Service; }; } & { new (...args: any[]): { updateRemoteControlHK(): 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[]): { updateRemainingTimeHK(state: "active" | "idle" | "delayed start"): 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>; activeService?: 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[]): { 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 activeService?: import("hap-nodejs").Service; updateActiveHK(): 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?: PowerState; initHasPower(): Promise<void>; updatePowerHK(): void; hasPowerOff(offValue: 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 import("./appliance-generic.js").ApplianceBase; export declare class ApplianceCoffeeMaker extends ApplianceCoffeeMaker_base { constructor(...args: ConstructorParameters<typeof ApplianceGeneric>); } declare const ApplianceCookProcessor_base: { new (...args: any[]): { updateRemainingTimeHK(state: "active" | "idle" | "delayed start"): 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>; activeService?: import("hap-nodejs").Service; }; } & { 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 activeService?: import("hap-nodejs").Service; updateActiveHK(): 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?: PowerState; initHasPower(): Promise<void>; updatePowerHK(): void; hasPowerOff(offValue: 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 import("./appliance-generic.js").ApplianceBase; export declare class ApplianceCookProcessor extends ApplianceCookProcessor_base { constructor(...args: ConstructorParameters<typeof ApplianceGeneric>); } declare const ApplianceHob_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;