UNPKG

@homebridge-plugins/homebridge-resideo

Version:

The Resideo plugin allows you to access your Resideo device(s) from HomeKit.

50 lines 2.33 kB
import type { API, Logging, PlatformAccessory } from 'homebridge'; import type { ResideoPlatformConfig } from './settings.js'; import { ResideoPlatform } from './Platform.HAP.js'; /** * ResideoMatterPlatform * Extends ResideoPlatform with Homebridge Matter support (Homebridge v2.0+). * When Matter is available and enabled the platform registers Resideo devices * as Matter accessories; otherwise it falls back to the standard HAP path * inherited from ResideoPlatform. */ export declare class ResideoMatterPlatform extends ResideoPlatform { /** * Map of cached Matter accessories restored from disk at startup. * Keyed by UUID so duplicates are avoided on re-launch. */ readonly matterAccessories: Map<string, any>; constructor(log: Logging, config: ResideoPlatformConfig, api: API); /** * Delegates to the base-class implementation so the HAP accessories array * (`this.accessories`) is always populated. This is required for the HAP * fallback path inside `discoverDevices` to work correctly and prevents * duplicate HAP accessories from being created on re-launch. * * When Matter mode is active those HAP accessories will be unregistered at * the start of `discoverDevices`, cleanly migrating away from legacy HAP. */ configureAccessory(accessory: PlatformAccessory): void; /** * Called by Homebridge when a cached Matter accessory is restored from disk. */ configureMatterAccessory(accessory: any): void; /** * Returns true when the running Homebridge instance has Matter available * and the user has Matter enabled (both bridge-level and plugin-level). */ private get matterActive(); /** * Overrides ResideoPlatform.discoverDevices. * * When Matter is active all discovered Resideo devices are registered as * Matter accessories via `api.matter.registerPlatformAccessories`. * Any previously cached HAP accessories are unregistered first to avoid * leaving stale HAP accessories when transitioning to Matter. * * When Matter is not active the call is delegated to the parent HAP * implementation so the plugin continues to work with Homebridge v1.x. */ protected discoverDevices(): Promise<void>; } //# sourceMappingURL=Platform.Matter.d.ts.map