homebridge-econet-rheem
Version:
Homebridge plugin for control of Rheem and Ruud thermostats and water heaters
31 lines (30 loc) • 1.53 kB
TypeScript
import { CharacteristicSetHandler } from 'homebridge';
import { BaseAccessory, NumberCallback, OnUpdateHandler } from '../abstract/base.js';
import { CharacteristicKey, HKCharacteristicKey, MQTTKeys } from '../../model/enums.js';
import { AccessoryDependency, EquipmentData, Setpoint } from '../../model/types.js';
import { TemperatureUnits } from '../../tools/temperature.js';
type TemperatureDefaults = {
setPoint: number;
lowerLimit: number;
upperLimit: number;
};
export declare function TemperatureDefaults(setPoint: number, lowerLimit: number, upperLimit: number): {
setPoint: number;
lowerLimit: number;
upperLimit: number;
};
export type Thresholds = {
minimum: number;
maximum: number;
};
export declare abstract class TemperatureControlAccessory extends BaseAccessory {
private readonly defaults;
protected readonly units: TemperatureUnits;
constructor(dependency: AccessoryDependency, data: EquipmentData, defaults: TemperatureDefaults);
protected setupThreshold(charKey: HKCharacteristicKey, setPoint: Setpoint | undefined, mqttKeys: MQTTKeys): Thresholds;
private bindOnAlertCountUpdate;
private bindOnAlarmUpdate;
protected bindOnUpdateTemperature(charKey: CharacteristicKey, units: TemperatureUnits, logTemplate: string, callback?: NumberCallback): OnUpdateHandler;
protected bindOnSetTemperature(charKey: CharacteristicKey, units: TemperatureUnits, mqttKeys: MQTTKeys, logTemplate: string, debounce?: boolean): CharacteristicSetHandler;
}
export {};