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