@constructorfleet/ultimate-govee
Version:
Library for interacting with Govee devices written in Typescript.
24 lines • 1.19 kB
TypeScript
/// <reference types="node" />
import { Optional } from '../types';
import { MessageHandler } from './mqtt.client';
import { MqttClientFactory, MqttCredentials, MqttDeserializeMessage, MqttMessageHandler } from './mqtt.types';
export declare class MqttService<IotMessageType> implements MessageHandler {
private readonly deserializer;
private readonly broker;
private readonly factory;
private readonly logger;
private client;
private messageHandler;
private readonly subscriptions;
private readonly subscriptionGrants;
constructor(deserializer: MqttDeserializeMessage<IotMessageType>, broker: string, factory: MqttClientFactory);
protected deserializeMessage(message: string | Buffer): IotMessageType;
handleMessage(topic: string, payload: string | Buffer): Promise<void>;
publish(topic: string, payload: string | Buffer): Promise<void>;
connect(credentials: MqttCredentials, messageHandler: MqttMessageHandler<IotMessageType>): Promise<void>;
disconnect(): Promise<void>;
private createClientAndConnect;
private doSubscribe;
subscribe(topic: Optional<string>): Promise<void>;
}
//# sourceMappingURL=mqtt.service.d.ts.map