/// /// import { MQTToTConnectPacketOptions } from './mqttot.connect.request.packet'; import { ConnectRequestOptions, DefaultPacketReadResultMap, DefaultPacketWriteOptions, MqttClient, MqttMessage, MqttMessageOutgoing, PacketFlowFunc, PacketType } from 'mqtts'; import { MQTToTConnectResponsePacket } from './mqttot.connect.response.packet'; import { SocksProxy } from 'socks'; import { ConnectionOptions } from 'tls'; type MQTToTReadMap = Omit & { [PacketType.ConnAck]: MQTToTConnectResponsePacket; }; type MQTToTWriteMap = Omit & { [PacketType.Connect]: MQTToTConnectPacketOptions; }; export declare class MQTToTClient extends MqttClient { protected connectPayloadProvider: () => Promise; protected connectPayload?: Buffer; protected requirePayload: boolean; protected mqttotDebug: (msg: string) => void; constructor(options: { url: string; payloadProvider: () => Promise; enableTrace?: boolean; autoReconnect: boolean; requirePayload: boolean; socksOptions?: SocksProxy; additionalOptions?: ConnectionOptions; }); protected registerListeners(): void; connect(options?: ConnectRequestOptions): Promise; protected getConnectFlow(): PacketFlowFunc; /** * Compresses the payload * @param {MqttMessage} message * @returns {Promise} */ mqttotPublish(message: MqttMessage): Promise; } export declare function mqttotConnectFlow(payload: Buffer, requirePayload: boolean): PacketFlowFunc; export {};