1 |
|
2 | export declare type QoS = 0 | 1 | 2
|
3 | export declare type PacketCmd = 'connack' |
|
4 | 'connect' |
|
5 | 'disconnect' |
|
6 | 'pingreq' |
|
7 | 'pingresp' |
|
8 | 'puback' |
|
9 | 'pubcomp' |
|
10 | 'publish' |
|
11 | 'pubrel' |
|
12 | 'pubrec' |
|
13 | 'suback' |
|
14 | 'subscribe' |
|
15 | 'unsuback' |
|
16 | 'unsubscribe'
|
17 | export interface IPacket {
|
18 | cmd: PacketCmd
|
19 | messageId?: number
|
20 | length?: number
|
21 | }
|
22 | export interface IConnectPacket extends IPacket {
|
23 | cmd: 'connect'
|
24 | clientId: string
|
25 | protocolVersion?: 4 | 3
|
26 | protocolId?: 'MQTT' | 'MQIsdp'
|
27 | clean?: boolean
|
28 | keepalive?: number
|
29 | username?: string
|
30 | password?: Buffer
|
31 | will?: {
|
32 | topic: string
|
33 | payload: Buffer
|
34 | qos?: QoS
|
35 | retain?: boolean
|
36 | }
|
37 | }
|
38 | export interface IPublishPacket extends IPacket {
|
39 | cmd: 'publish'
|
40 | qos: QoS
|
41 | dup: boolean
|
42 | retain: boolean
|
43 | topic: string
|
44 | payload: string | Buffer
|
45 | }
|
46 | export interface IConnackPacket extends IPacket {
|
47 | cmd: 'connack'
|
48 | returnCode: number
|
49 | sessionPresent: boolean
|
50 | }
|
51 | export interface ISubscribePacket extends IPacket {
|
52 | cmd: 'subscribe'
|
53 | subscriptions: Array<{
|
54 | topic: string
|
55 | qos: QoS
|
56 | }>
|
57 | }
|
58 | export interface ISubackPacket extends IPacket {
|
59 | cmd: 'suback'
|
60 | granted: number[]
|
61 | }
|
62 | export interface IUnsubscribePacket extends IPacket {
|
63 | cmd: 'unsubscribe'
|
64 | unsubscriptions: string[]
|
65 | }
|
66 | export interface IUnsubackPacket extends IPacket {
|
67 | cmd: 'unsuback'
|
68 | }
|
69 | export interface IPubackPacket extends IPacket {
|
70 | cmd: 'puback'
|
71 | }
|
72 | export interface IPubcompPacket extends IPacket {
|
73 | cmd: 'pubcomp'
|
74 | }
|
75 | export interface IPubrelPacket extends IPacket {
|
76 | cmd: 'pubrel'
|
77 | }
|
78 | export interface IPubrecPacket extends IPacket {
|
79 | cmd: 'pubrec'
|
80 | }
|
81 | export interface IPingreqPacket extends IPacket {
|
82 | cmd: 'pingreq'
|
83 | }
|
84 | export interface IPingrespPacket extends IPacket {
|
85 | cmd: 'pingresp'
|
86 | }
|
87 | export interface IDisconnectPacket extends IPacket {
|
88 | cmd: 'disconnect'
|
89 | }
|
90 |
|
91 | export declare type Packet = IConnectPacket |
|
92 | IPublishPacket |
|
93 | IConnackPacket |
|
94 | ISubscribePacket |
|
95 | ISubackPacket |
|
96 | IUnsubscribePacket |
|
97 | IUnsubackPacket |
|
98 | IPubackPacket |
|
99 | IPubcompPacket |
|
100 | IPubrelPacket |
|
101 | IPingreqPacket |
|
102 | IPingrespPacket |
|
103 | IDisconnectPacket |
|
104 | IPubrecPacket
|