homebridge-fibaro-home-center
Version:
Homebridge plugin for Fibaro Home Center (2, 2 Lite, 3, 3 Lite, Yubii Home).
59 lines • 2.28 kB
TypeScript
import { API, DynamicPlatformPlugin, Logging, PlatformAccessory, PlatformConfig } from 'homebridge';
import { FibaroClient } from './fibaro-api';
import { SetFunctions } from './setFunctions';
import { GetFunctions } from './getFunctions';
import { Poller } from './pollerupdate';
/**
* HomebridgePlatform
* This class is the main constructor for your plugin, this is where you should
* parse the user config and discover/register accessories with Homebridge.
*/
export declare class FibaroHC implements DynamicPlatformPlugin {
readonly log: Logging;
readonly config: PlatformConfig;
readonly api: API;
readonly Service: typeof import("homebridge").Service;
readonly Characteristic: typeof import("homebridge").Characteristic;
readonly accessories: PlatformAccessory[];
updateSubscriptions: Array<unknown>;
poller?: Poller;
scenes: Record<string, string>;
climateZones: Record<string, string>;
info: Record<string, string>;
fibaroClient?: FibaroClient;
setFunctions?: SetFunctions;
getFunctions?: GetFunctions;
loginTimeout: NodeJS.Timeout | null;
rooms: {
id: number;
name: string;
}[];
devices: any;
constructor(log: Logging, config: PlatformConfig, api: API);
private setupConfig;
private setupPollerPeriod;
private setupThermostatMaxTemp;
private setupDefaultConfigValues;
private setupUrl;
private initializeFibaroClient;
login(): Promise<void>;
private fetchInfo;
private processScenes;
private processZones;
private processHeatingZones;
private processClimateZones;
private fetchDevicesAndRooms;
private handleLoginError;
/**
* 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;
processDevices(): void;
addAccessory(device: any): void;
removeAccessory(accessory: any): void;
findServiceByName(name: any, service: any): import("homebridge").Service | undefined;
isOldApi(): boolean | "";
getRoomNameById(roomId: number): string | undefined;
}
//# sourceMappingURL=platform.d.ts.map