UNPKG

homebridge-virtual-accessories

Version:
37 lines (36 loc) 1.53 kB
import type { CharacteristicValue, PlatformAccessory } from 'homebridge'; import { VirtualAccessoriesPlatform } from '../platform.js'; import { AccessoryConfiguration } from '../configuration/configurationAccessory.js'; import { Accessory } from './accessory.js'; import { TriggerableCompanionSensor } from '../sensors/companions/companionSensors.js'; import { Timer } from '../utils/timer.js'; /** * Switch - Accessory implementation */ export declare class Switch extends Accessory { static readonly ACCESSORY_TYPE_NAME: string; static readonly ON: boolean; static readonly OFF: boolean; private readonly stateStorageKey; private readonly timerStartTimeStorageKey; private readonly timerDurationStorageKey; private readonly timerIsRunningStorageKey; protected resetTimer?: Timer; protected companionSensor?: TriggerableCompanionSensor; protected muteLogging: boolean; protected states: { SwitchState: boolean; SensorState: number; }; constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration); setOn(value: CharacteristicValue): Promise<void>; getOn(): Promise<CharacteristicValue>; protected getJsonState(): string; protected getAccessoryTypeName(): string; static getStateName(state: boolean): string; private determineSensorState; private setupResetTimer; private createCompanionSensor; private restoreRunningTimer; private onTimerExpired; }