@homebridge-plugins/homebridge-roomba
Version:
homebridge-plugin for Roomba devices
39 lines • 1.73 kB
TypeScript
import type { API, DynamicPlatformPlugin, Logging, PlatformAccessory } from 'homebridge';
import type { RoombaPlatformConfig } from './settings.js';
/**
* Homebridge platform that registers Roomba devices as Homebridge Matter
* RoboticVacuumCleaner accessories. This platform is chosen automatically when
* Homebridge v2 is detected with Matter enabled, unless the user sets
* `enableMatter: false` in the plugin configuration.
*/
export default class RoombaMatterPlatform implements DynamicPlatformPlugin {
private readonly api;
private log;
private readonly config;
private readonly matterAccessories;
private readonly roombaAccessories;
/**
* Cached HAP accessories restored by Homebridge on startup. These are
* accumulated in `configureAccessory` and then unregistered during
* `discoverDevices` because the Matter platform does not use HAP accessories.
*/
private readonly cachedHapAccessories;
version: string;
constructor(log: Logging, config: RoombaPlatformConfig, api: API);
private verifyConfig;
/**
* Required by DynamicPlatformPlugin. Called for each cached HAP accessory
* restored from disk at startup. The Matter platform does not use HAP
* accessories, so we track them here and unregister them during
* `discoverDevices` to avoid leaving stale HAP accessories registered.
*/
configureAccessory(accessory: PlatformAccessory): void;
/**
* Called by Homebridge when a cached Matter accessory is restored from disk.
*/
configureMatterAccessory(accessory: any): void;
private discoveryMethod;
private discoverDevices;
private getVersion;
}
//# sourceMappingURL=Platform.Matter.d.ts.map