UNPKG

homebridge-econet-rheem

Version:

Homebridge plugin for control of Rheem and Ruud thermostats and water heaters

41 lines (40 loc) 1.22 kB
import { PrimitiveTypes } from 'homebridge'; import { DeviceAuth, UserAuth } from './auth.js'; import { Log } from '../tools/log.js'; export interface MQTTListener { mqttMessageReceived(message: Record<string, unknown>): void; } export type MQTTDependency = { log: Log; parentName: string; email: string; auth: DeviceAuth | UserAuth; serialNumber: string; macAddress: string; debug: boolean; }; export declare class MQTT { private readonly dependency; private readonly options; private static readonly INSTANCES; static connect(dependency: MQTTDependency, listener: MQTTListener): MQTT | undefined; private readonly log; private client; private idleTimer?; private shouldReconnect; private isReconnecting; private reconnectCount; private readonly listeners; private readonly topicDesired; private readonly topicReported; private constructor(); private connect; teardown(): void; private messageReceived; publish(payload: Record<string, PrimitiveTypes>): void; private reconnect; private resetIdleTimer; private static readonly KNOWN_KEYS; private static readonly STORAGE_KEY; private saveData; }