homebridge-virtual-accessories
Version:
Virtual HomeKit accessories for Homebridge.
64 lines (63 loc) • 2.94 kB
TypeScript
import type { CharacteristicValue, PlatformAccessory } from 'homebridge';
import { VirtualAccessoriesPlatform } from '../platform.js';
import { AccessoryConfiguration } from '../configuration/configurationAccessory.js';
import { Accessory } from './accessory.js';
import { UpdatableSensor } from '../sensors/updatableSensor.js';
/**
* HeaterCooler - Accessory implementation
*/
export declare class HeaterCooler extends Accessory implements UpdatableSensor {
static readonly ACCESSORY_TYPE_NAME: string;
static readonly CURRENTLY_INACTIVE: number;
static readonly CURRENTLY_IDLE: number;
static readonly CURRENTLY_HEATING: number;
static readonly CURRENTLY_COOLING: number;
static readonly AUTO: number;
static readonly HEAT: number;
static readonly COOL: number;
static readonly INACTIVE: number;
static readonly ACTIVE: number;
static readonly CELSIUS: number;
static readonly FAHRENHEIT: number;
private readonly stateStorageKey;
private readonly targetStateStorageKey;
private readonly heatingThresholdStorageKey;
private readonly coolingThresholdStorageKey;
private readonly temperatureDisplayUnitsStorageKey;
private deviceType;
private states;
constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration);
setActive(value: CharacteristicValue): Promise<void>;
getActive(): Promise<CharacteristicValue>;
getCurrentHeaterCoolerState(): Promise<CharacteristicValue>;
setTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
getTargetHeaterCoolerState(): Promise<CharacteristicValue>;
getCurrentTemperature(): Promise<CharacteristicValue>;
setCoolingThresholdTemperature(value: CharacteristicValue): Promise<void>;
getCoolingThresholdTemperature(): Promise<CharacteristicValue>;
setHeatingThresholdTemperature(value: CharacteristicValue): Promise<void>;
getHeatingThresholdTemperature(): Promise<CharacteristicValue>;
setTemperatureDisplayUnits(value: CharacteristicValue): Promise<void>;
getTemperatureDisplayUnits(): Promise<CharacteristicValue>;
protected getJsonState(): string;
protected getAccessoryTypeName(): string;
private isHeater;
private isCooler;
private heats;
private cools;
private setDeviceOperationalCondition;
static getActiveName(status: number): string;
static getCurrentStateName(state: number): string;
static getTargetStateName(state: number): string;
static getTemperatureDisplayUnitsName(state: number): string;
/**
* Ensure all the property values are set, then remove as required
*/
private setHeaterCoolerServiceProperties;
private getCurrentStateLabels;
private getTargetStateLabels;
private toCelsius;
private displayTemperature;
private getDegreeUnits;
updateSensor(value: number, accessoryId: string): void;
}