homebridge-homeconnect
Version:
A Homebridge plugin that connects Home Connect appliances to Apple HomeKit
1,221 lines • 98 kB
TypeScript
import { ApplianceGeneric } from './appliance-generic.js';
declare const ApplianceCleaningRobot_base: {
new (...args: any[]): {
readonly batteryService: import("homebridge").Service;
updateBatteryHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly programService: import("homebridge").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(updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
addConfiguredPrograms(config: import("./config-types.js").ApplianceProgramConfig[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
updateProgramHC(value: import("./has-programs.js").UpdateProgramHCValue): Promise<void>;
addProgram({ name, key, selectonly, options }: import("./has-programs.js").CheckedProgramConfig, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): import("homebridge").Service;
addActiveProgramControl(supportsPause: boolean | undefined, supportsResume: boolean | undefined, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[]): Promise<void>;
setSchemaProgramOptions<Key extends import("./api-value-types.js").ProgramKey>(program: import("./api-value.js").ProgramDefinitionKV<Key>): Promise<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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
activeService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
readonly eventService: import("homebridge").Service[];
labelService?: import("homebridge").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("homebridge").Service;
addLabelService(): import("homebridge").Service;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly activeService?: import("homebridge").Service;
updateActiveHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly powerService?: import("homebridge").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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & typeof import("./appliance-generic.js").ApplianceBase;
export declare class ApplianceCleaningRobot extends ApplianceCleaningRobot_base {
constructor(...args: ConstructorParameters<typeof ApplianceGeneric>);
}
declare const ApplianceDishwasher_base: {
new (...args: any[]): {
initHasChildLock(): Promise<void>;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
powerService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
readonly programService: import("homebridge").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(updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
addConfiguredPrograms(config: import("./config-types.js").ApplianceProgramConfig[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
updateProgramHC(value: import("./has-programs.js").UpdateProgramHCValue): Promise<void>;
addProgram({ name, key, selectonly, options }: import("./has-programs.js").CheckedProgramConfig, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): import("homebridge").Service;
addActiveProgramControl(supportsPause: boolean | undefined, supportsResume: boolean | undefined, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[]): Promise<void>;
setSchemaProgramOptions<Key extends import("./api-value-types.js").ProgramKey>(program: import("./api-value.js").ProgramDefinitionKV<Key>): Promise<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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
activeService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
updateRemoteControlHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
powerService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
updateRemainingTimeHK(state: "active" | "idle" | "delayed start"): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
activeService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
lightService: import("homebridge").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("homebridge").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("homebridge").Service;
updateLightHC(type: string, settings: import("./has-light.js").LightSettings, service: import("homebridge").Service, value: import("./has-light.js").UpdateLightHCValue): Promise<void>;
addLightOn(type: string, settings: import("./has-light.js").LightSettings<"on">, service: import("homebridge").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("homebridge").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("homebridge").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("homebridge").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("homebridge").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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly eventService: import("homebridge").Service[];
labelService?: import("homebridge").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("homebridge").Service;
addLabelService(): import("homebridge").Service;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly doorService: Partial<Record<import("./has-door.js").DoorStatusKey, import("homebridge").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("homebridge").Service;
addDoorControl(service: import("homebridge").Service, supportsOpen: boolean, supportsPartly: boolean): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly activeService?: import("homebridge").Service;
updateActiveHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly powerService?: import("homebridge").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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & typeof import("./appliance-generic.js").ApplianceBase;
export declare class ApplianceDishwasher extends ApplianceDishwasher_base {
constructor(...args: ConstructorParameters<typeof ApplianceGeneric>);
}
declare const ApplianceLaundry_base: {
new (...args: any[]): {
initHasChildLock(): Promise<void>;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
powerService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
readonly programService: import("homebridge").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(updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
addConfiguredPrograms(config: import("./config-types.js").ApplianceProgramConfig[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[], updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): void;
updateProgramHC(value: import("./has-programs.js").UpdateProgramHCValue): Promise<void>;
addProgram({ name, key, selectonly, options }: import("./has-programs.js").CheckedProgramConfig, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): import("homebridge").Service;
addActiveProgramControl(supportsPause: boolean | undefined, supportsResume: boolean | undefined, updateProgramHC: (value: import("./has-programs.js").UpdateProgramHCValue) => void | Promise<void>): 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[]): Promise<void>;
setSchemaProgramOptions<Key extends import("./api-value-types.js").ProgramKey>(program: import("./api-value.js").ProgramDefinitionKV<Key>): Promise<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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
activeService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
updateRemoteControlHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
powerService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
updateRemainingTimeHK(state: "active" | "idle" | "delayed start"): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
activeService?: import("homebridge").Service;
};
} & {
new (...args: any[]): {
readonly eventService: import("homebridge").Service[];
labelService?: import("homebridge").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("homebridge").Service;
addLabelService(): import("homebridge").Service;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly doorService: Partial<Record<import("./has-door.js").DoorStatusKey, import("homebridge").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("homebridge").Service;
addDoorControl(service: import("homebridge").Service, supportsOpen: boolean, supportsPartly: boolean): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly activeService?: import("homebridge").Service;
updateActiveHK(): void;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & {
new (...args: any[]): {
readonly powerService?: import("homebridge").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("homebridge").Service;
readonly Characteristic: typeof import("homebridge").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("homebridge").Service;
readonly obsoleteServices: import("homebridge").Service[];
disconnectedHapStatusError: boolean;
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("homebridge").Service & {
new (displayName?: string, subtype?: string): import("homebridge").Service;
UUID: string;
}, suffix?: string, subtype?: string): import("homebridge").Service;
cleanupServices(): void;
cleanupOldVersions(): void;
unregister(): void;
identify(): Promise<void>;
hasOptionalFeature(service: string, name: string, group?: string, enableByDefault?: boolean): boolean;
setOptionalFeatures(): Promise<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>;
registerDisconnectedOnGet(): void;
onGet(characteristic: import("homebridge").Characteristic): import("homebridge").Nullable<import("homebridge").CharacteristicValue>;
onSet<Type>(assertIsType: (value: unknown) => asserts value is Type, characteristic: import("homebridge").Characteristic, handler: import("./appliance-generic.js").OnSetHandler<Type>): import("homebridge").Characteristic;
onSetBoolean(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<boolean>): import("homebridge").Characteristic;
onSetNumber(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<number>): import("homebridge").Characteristic;
onSetString(args_0: import("homebridge").Characteristic, args_1: import("./appliance-generic.js").OnSetHandler<string>): import("homebridge").Characteristic;
};
} & typeof import("./appliance-generic.js").ApplianceBase;
declare class ApplianceLaundry extends ApplianceLaundry_base {
}
export declare class ApplianceDryer extends ApplianceLaundry {
constructor(...args: ConstructorParameters<typeof ApplianceGeneric>);
}
export declare class ApplianceWasher extends ApplianceLaundry {
constructor(...args: ConstructorParameters<typeof ApplianceGeneric>);
}
export declare class ApplianceWasherDryer extends ApplianceLaundry {
constructor(...args: ConstructorParameters<typeof ApplianceGeneric>);
}
export {};
//# sourceMappingURL=appliance-cleaning.d.ts.map