UNPKG

homebridge-unifi-access

Version:

Homebridge UniFi Access plugin providing complete HomeKit integration for the UniFi Access ecosystem with full support for most features including autoconfiguration, motion detection, multiple controllers, and realtime updates.

82 lines (81 loc) 2.91 kB
import { AccessDevice } from "./access-device.js"; import type { AccessDeviceConfig } from "unifi-access"; import type { CharacteristicValue, PlatformAccessory } from "homebridge"; import type { AccessController } from "./access-controller.js"; declare const sensorInputs: readonly ["Dps", "Rel", "Ren", "Rex"]; type SensorInput = typeof sensorInputs[number]; export type AccessHubHKProps = { [K in `hk${SensorInput}State` as K extends "hkDpsState" ? never : K]: CharacteristicValue; }; export type AccessHubWiredProps = { [P in `is${SensorInput}Wired`]: boolean; }; export interface AccessHub extends AccessHubHKProps, AccessHubWiredProps { } export declare class AccessHub extends AccessDevice { private _hkDpsState; private _hkLockState; private _hkSideDoorDpsState; private _hkSideDoorLockState; private doorbellRingRequestId; private gateTransitionUntil; private lockDelayInterval; private mainDoorLocationId; private sideDoorLocationId; private sideDoorGateTransitionUntil; uda: AccessDeviceConfig; constructor(controller: AccessController, device: AccessDeviceConfig, accessory: PlatformAccessory); protected configureHints(): boolean; private get doorServiceType(); private toLockState; private toDpsState; private isLocked; private isClosed; private discoverDoorIds; private initializeDoorsFromBootstrap; private configureDevice; private configureAccessMethodSwitches; private configureDoorbell; private configureTerminalInputs; private configureSideDoorTerminalInputs; private configureLock; private configureLockService; private configureGarageDoorService; private configureDoorbellTrigger; private configureLockTrigger; private configureSideDoorLock; private configureSideDoorLockTrigger; private configureMqtt; private checkUltraInputs; private hubDoorLockCommand; private hubLockCommand; private hubSideDoorLockCommand; private get hkDpsState(); private set hkDpsState(value); private get hkLockState(); private set hkLockState(value); private updateDoorServiceState; private get hkSideDoorLockState(); private set hkSideDoorLockState(value); private get hubDpsState(); private get hubSideDoorDpsState(); private get hubLockState(); private get hubSideDoorLockState(); private get hubRelState(); private get hubRenState(); private get hubRexState(); private get isSideDoorDpsWired(); private isWired; private getContactSensorState; private setContactSensorState; private hasCapability; private updateDoorFromLocationState; private handleRemoteUnlock; private handleDeviceUpdate; private handleDeviceUpdateV2; private handleLocationUpdate; private handleDoorbellRing; private handleDoorbellCancel; private eventHandler; } export {};