UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge.

40 lines (39 loc) 1.83 kB
import type { ServiceType } from '@homebridge/hap-client'; import type { Socket } from 'socket.io'; import { HapClient } from '@homebridge/hap-client'; import NodeCache from 'node-cache'; import { ConfigService } from '../../core/config/config.service.js'; import { HomebridgeIpcService } from '../../core/homebridge-ipc/homebridge-ipc.service.js'; import { Logger } from '../../core/logger/logger.service.js'; import { MatterService } from '../../core/matter/matter.interfaces.js'; export declare class AccessoriesService { private readonly configService; private readonly logger; private readonly homebridgeIpcService; hapClient: HapClient; accessoriesCache: NodeCache; private matterMonitoringActive; private matterUpdateListener; private activeClients; private matterAccessories; constructor(configService: ConfigService, logger: Logger, homebridgeIpcService: HomebridgeIpcService); connect(client: Socket): Promise<void>; private refreshCharacteristics; loadAccessories(): Promise<ServiceType[]>; getAccessory(uniqueId: string): Promise<MatterService | ServiceType>; private getMatterAccessory; setAccessoryCharacteristic(uniqueId: string, characteristicType: string, value: number | boolean | string): Promise<ServiceType>; getAccessoryLayout(username: string): Promise<any>; saveAccessoryLayout(user: string, layout: Record<string, unknown>): Promise<Record<string, unknown>>; resetInstancePool(): void; private parseMatterUniqueId; private buildMatterUniqueId; private waitForMatterEvent; private attemptMatterEvent; private startMatterMonitoring; private stopMatterMonitoring; private loadMatterAccessories; private transformMatterAccessory; private handleMatterStateUpdate; private handleMatterControl; }