UNPKG

homebridge-flume

Version:

Homebridge plugin to integrate Flume devices into HomeKit.

41 lines (40 loc) 1.35 kB
import { Logger } from 'homebridge'; import { Device } from './device.js'; import * as Types from './types.js'; export declare class FlumeAPI { private readonly username; private readonly password; private readonly clientId; private readonly clientSecret; private readonly refreshInterval; private readonly units; private storagePath; private readonly log; private readonly verbose; private _auth?; readonly locationNames: Map<string, string>; private readonly _devices; private retryIndex; private syncTimer; private lastFullRefresh; private constructor(); static connect(username: string, password: string, clientId: string, clientSecret: string, refreshInterval: number, units: Types.VolumeUnits, storagePath: string, log: Logger, verbose: boolean): Promise<FlumeAPI>; get devices(): Device[]; teardown(): void; private do; private retryIfPossible; private get auth(); private set auth(value); private authenticate; private authRefresh; private refreshAuthIfNecessary; private startSyncTimer; private getLocations; private getDevices; private getDeviceData; getLeakData(deviceId: string): Promise<Types.LeakData | null>; private getUsageData; private synchronizeData; private logHTTP; private logIfVerbose; }