UNPKG

homebridge-freeathome-local-api

Version:

Control your free@home setup using the local API provided by your System Access Point

47 lines 2.1 kB
import { SystemAccessPoint } from "freeathome-local-api-client"; import { API, Characteristic, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig, Service } from "homebridge"; import { FreeAtHomeContext } from "./freeAtHomeContext.js"; /** The free&#64;home Homebridge platform. */ export declare class FreeAtHomeHomebridgePlatform implements DynamicPlatformPlugin { readonly log: Logger; readonly config: PlatformConfig; readonly api: API; /** The service reference */ readonly Service: typeof Service; /** The characteristic reference */ readonly Characteristic: typeof Characteristic; /** The list of restored cached accessories */ readonly accessories: Array<PlatformAccessory<FreeAtHomeContext>>; private readonly removedAccessories; /** The system access point */ readonly sysap: SystemAccessPoint; private readonly fahAccessories; private readonly fahLogger; private readonly webSocketSubscription; private wsConnectionAttempt; private readonly maxWsRetryCount; private get experimentalMode(); /** * Constructs a new free&#64;home Homebridge platform instance. * @param log {Logger} The logger instance. * @param config {PlatformConfig} The platform configuration. * @param api {API} The API instance. */ constructor(log: Logger, config: PlatformConfig, api: API); /** * Configures the specified accessory. * @param accessory The accessory to be configured. * @description * This function is invoked when homebridge restores cached accessories from disk at startup. * It should be used to setup event handlers for characteristics and update respective values. */ configureAccessory(accessory: PlatformAccessory): void; /** Discovers the supported free&#64;home devices from the System Access Point. */ private discoverDevices; private isViableChannel; private createAccessory; private isIgnoredChannel; private processWebSocketMesage; private resolveAccessoryType; } //# sourceMappingURL=platform.d.ts.map