UNPKG

@pietrolubini/homebridge-ecoflow

Version:
28 lines (27 loc) 1.54 kB
import { DeviceInfo } from '@ecoflow/apis/containers/deviceInfo'; import { EcoFlowHttpApiManager } from '@ecoflow/apis/ecoFlowHttpApiManager'; import { MqttSetMessage } from '@ecoflow/apis/interfaces/mqttApiContracts'; import { MachineIdProvider } from '@ecoflow/helpers/machineIdProvider'; import { Subscription } from 'rxjs'; export declare class EcoFlowMqttApiManager { private readonly httpApiManager; private readonly machineIdProvider; private readonly mqttClientContainers; constructor(httpApiManager: EcoFlowHttpApiManager, machineIdProvider: MachineIdProvider); destroy(): Promise<void>; subscribeOnQuotaTopic(deviceInfo: DeviceInfo): Promise<boolean>; subscribeOnSetReplyTopic(deviceInfo: DeviceInfo): Promise<boolean>; subscribeOnStatusTopic(deviceInfo: DeviceInfo): Promise<boolean>; subscribeOnQuotaMessage<TMessage>(deviceInfo: DeviceInfo, callback: (message: TMessage) => void): Subscription | undefined; subscribeOnSetReplyMessage<TMessage>(deviceInfo: DeviceInfo, callback: (message: TMessage) => void): Subscription | undefined; subscribeOnStatusMessage<TMessage>(deviceInfo: DeviceInfo, callback: (message: TMessage) => void): Subscription | undefined; sendSetCommand(deviceInfo: DeviceInfo, message: MqttSetMessage): Promise<void>; private connect; private connectMqttClient; private subscribeOnTopic; private subscribeOnMessage; private processReceivedMessage; private acquireCertificate; private getMqttClientContainer; private parseTopic; }