homebridge-virtual-accessories
Version:
Virtual HomeKit accessories for Homebridge.
38 lines (37 loc) • 1.56 kB
TypeScript
import type { Characteristic, CharacteristicValue, PlatformAccessory, Service, WithUUID } from 'homebridge';
import { VirtualAccessoriesPlatform } from '../platform.js';
import { AccessoryConfiguration } from '../configuration/configurationAccessory.js';
import { Accessory } from '../accessories/accessory.js';
import { Trigger } from './triggers/trigger.js';
/**
* Sensor - Abstract accessory
*/
export declare abstract class BinarySensor extends Accessory {
static readonly ON: boolean;
static readonly OFF: boolean;
static readonly NORMAL_INACTIVE: string;
static readonly TRIGGERED_ACTIVE: string;
static readonly NORMAL: number;
static readonly TRIGGERED: number;
protected trigger: Trigger | undefined;
protected eventDetected: WithUUID<{
new (): Characteristic;
}>;
protected states: {
SensorState: number;
};
constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration);
getTrigger(): Trigger;
getSensorState(): number;
protected abstract getService(): WithUUID<typeof Service>;
protected abstract getEventDetectedCharacteristic(): WithUUID<{
new (): Characteristic;
}>;
getEventDetected(): Promise<CharacteristicValue>;
protected getJsonState(): string;
static getStateName(state: number): string;
/**
* This method is called by this sensor's trigger
*/
triggerSensorState(sensorState: number, trigger: Trigger, isLoggingDisabled?: boolean): Promise<void>;
}