homebridge-nibe
Version:
Homebridge plugin for Nibe services
42 lines (41 loc) • 1.25 kB
TypeScript
import { EventEmitter } from 'events';
import { Data, DataFetcher } from '../DataDomain';
import { Logger } from '../PlatformDomain';
import * as api from './MyUplinkApiModel';
interface Options {
clientId: string;
clientSecret: string;
interval: number;
language: string;
showApiResponse: boolean;
}
export declare class MyUplinkApiFetcher extends EventEmitter implements DataFetcher {
private options;
private log;
private interval;
private active;
private systems;
private auth;
private cache;
private currentlySetting;
constructor(options: Options, log: Logger);
start(): void;
stop(): void;
private fetch;
private getToken;
private fetchSystems;
private fetchDeviceInfo;
private fetchPremiumSubscriptions;
private fetchData;
static mapData(system: api.System, subscriptions: string[], device: api.Device, deviceInfo: api.DeviceInfo, response: api.Parameter[]): Data;
private getFromMyUplink;
setValue(deviceId: string, paramId: string, value: any): Promise<void>;
private checkError;
private getSession;
private setSession;
private clearSession;
private isTokenExpired;
private _onData;
private _onError;
}
export {};