UNPKG

@constructorfleet/ultimate-govee

Version:

Library for interacting with Govee devices written in Typescript.

81 lines 2.82 kB
/// <reference types="node" /> import { MqttClient } from './mqtt.client'; export type MqttIndividualOptions = { _kind: 'individual'; protocol: 'mqtt' | 'mqtts' | 'ws' | 'wss'; brokerHost: string; brokerPort: number; }; export type MqttCombinedOptions = { _kind: 'combined'; brokerUrl: string; }; export type MqttDeserializeMessage<MqttMessageType> = (message: string | Buffer) => MqttMessageType; export type MqttMessageProcessor<MqttMessageType> = { deserializeMessage(message: string | Buffer): MqttMessageType; }; export type MqttMessageHandler<MqttMessageType> = { handle(message: MqttMessageType, topic?: string): Promise<void>; }; export type MqttConnectionOtpions = MqttIndividualOptions | MqttCombinedOptions; export type MqttCredentials = { username?: string; password?: string; clientId?: string; }; export type MqttConnection = { username?: string; password?: string; clientId?: string; topic?: string; brokerUrl: string; }; export type MqttClientFactory = (connection: MqttConnection) => Promise<MqttClient>; export type MqttPublishOptionProperties = Partial<{ payloadFormatIndicator: boolean; messageExpiryInterval: number; topicALias: number; responseTOpic: string; correlationData: Buffer; userProperties: unknown; subscriptionIdentifier: number; contentType: string; }>; export type MqttPublishOptions = Partial<{ qos: number; retain: boolean; dup: boolean; properties: Partial<MqttPublishOptionProperties>; }>; export type MqttSubscribeProperties = Partial<{ subscriptionIdentifier: number; userProperties: unknown; }>; export type MqttSubscribeOptions = Partial<{ qos: number; rap: boolean; rh: boolean; properties: MqttSubscribeProperties; }>; export type MqttUnsubscribeProeprties = Partial<{ subscriptionIdentifier: number; userProperties: unknown; }>; export type MqttUnsubscribeOptions = Partial<{ qos: number; rap: boolean; rh: boolean; properties: MqttUnsubscribeProeprties; }>; export type MqttEndProperties = Partial<{ sessioNExpiryInterval: number; reasonString: string; userProperties: unknown; serverReference: string; }>; export type MqttEndOptions = Partial<{ resposneCode: number; properties: MqttEndProperties; }>; export declare const OPTIONS_TYPE: (MqttConnectionOtpions & MqttMessageProcessor<any>) & Partial<{}>, ASYNC_OPTIONS_TYPE: import("@nestjs/common").ConfigurableModuleAsyncOptions<MqttConnectionOtpions & MqttMessageProcessor<any>, "create"> & Partial<{}>, ConfigurableModuleClass: import("@nestjs/common").ConfigurableModuleCls<MqttConnectionOtpions & MqttMessageProcessor<any>, "forFeature", "create", {}>, MODULE_OPTIONS_TOKEN: string | symbol; //# sourceMappingURL=mqtt.types.d.ts.map