UNPKG

5.4 kBTypeScriptView Raw
1export namespace Replies {
2 interface Empty {
3 }
4 interface AssertQueue {
5 queue: string;
6 messageCount: number;
7 consumerCount: number;
8 }
9 interface PurgeQueue {
10 messageCount: number;
11 }
12 interface DeleteQueue {
13 messageCount: number;
14 }
15 interface AssertExchange {
16 exchange: string;
17 }
18 interface Consume {
19 consumerTag: string;
20 }
21}
22
23export namespace Options {
24 interface Connect {
25 /**
26 * The to be used protocol
27 *
28 * Default value: 'amqp'
29 */
30 protocol?: string;
31 /**
32 * Hostname used for connecting to the server.
33 *
34 * Default value: 'localhost'
35 */
36 hostname?: string;
37 /**
38 * Port used for connecting to the server.
39 *
40 * Default value: 5672
41 */
42 port?: number;
43 /**
44 * Username used for authenticating against the server.
45 *
46 * Default value: 'guest'
47 */
48 username?: string;
49 /**
50 * Password used for authenticating against the server.
51 *
52 * Default value: 'guest'
53 */
54 password?: string;
55 /**
56 * The desired locale for error messages. RabbitMQ only ever uses en_US
57 *
58 * Default value: 'en_US'
59 */
60 locale?: string;
61 /**
62 * The size in bytes of the maximum frame allowed over the connection. 0 means
63 * no limit (but since frames have a size field which is an unsigned 32 bit integer, it’s perforce 2^32 - 1).
64 *
65 * Default value: 0x1000 (4kb) - That's the allowed minimum, it will fit many purposes
66 */
67 frameMax?: number;
68 /**
69 * The period of the connection heartbeat in seconds.
70 *
71 * Default value: 0
72 */
73 heartbeat?: number;
74 /**
75 * What VHost shall be used.
76 *
77 * Default value: '/'
78 */
79 vhost?: string;
80 }
81
82 interface AssertQueue {
83 exclusive?: boolean;
84 durable?: boolean;
85 autoDelete?: boolean;
86 arguments?: any;
87 messageTtl?: number;
88 expires?: number;
89 deadLetterExchange?: string;
90 deadLetterRoutingKey?: string;
91 maxLength?: number;
92 maxPriority?: number;
93 }
94 interface DeleteQueue {
95 ifUnused?: boolean;
96 ifEmpty?: boolean;
97 }
98 interface AssertExchange {
99 durable?: boolean;
100 internal?: boolean;
101 autoDelete?: boolean;
102 alternateExchange?: string;
103 arguments?: any;
104 }
105 interface DeleteExchange {
106 ifUnused?: boolean;
107 }
108 interface Publish {
109 expiration?: string | number;
110 userId?: string;
111 CC?: string | string[];
112
113 mandatory?: boolean;
114 persistent?: boolean;
115 deliveryMode?: boolean | number;
116 BCC?: string | string[];
117
118 contentType?: string;
119 contentEncoding?: string;
120 headers?: any;
121 priority?: number;
122 correlationId?: string;
123 replyTo?: string;
124 messageId?: string;
125 timestamp?: number;
126 type?: string;
127 appId?: string;
128 }
129 interface Consume {
130 consumerTag?: string;
131 noLocal?: boolean;
132 noAck?: boolean;
133 exclusive?: boolean;
134 priority?: number;
135 arguments?: any;
136 }
137 interface Get {
138 noAck?: boolean;
139 }
140}
141
142export interface Message {
143 content: Buffer;
144 fields: MessageFields;
145 properties: MessageProperties;
146}
147
148export interface GetMessage extends Message {
149 fields: GetMessageFields;
150}
151
152export interface ConsumeMessage extends Message {
153 fields: ConsumeMessageFields;
154}
155
156export interface CommonMessageFields {
157 deliveryTag: number;
158 redelivered: boolean;
159 exchange: string;
160 routingKey: string;
161}
162
163export interface MessageFields extends CommonMessageFields {
164 messageCount?: number;
165 consumerTag?: string;
166}
167
168export interface GetMessageFields extends CommonMessageFields {
169 messageCount: number;
170}
171
172export interface ConsumeMessageFields extends CommonMessageFields {
173 deliveryTag: number;
174}
175
176export interface MessageProperties {
177 contentType: any | undefined;
178 contentEncoding: any | undefined;
179 headers: MessagePropertyHeaders;
180 deliveryMode: any | undefined;
181 priority: any | undefined;
182 correlationId: any | undefined;
183 replyTo: any | undefined;
184 expiration: any | undefined;
185 messageId: any | undefined;
186 timestamp: any | undefined;
187 type: any | undefined;
188 userId: any | undefined;
189 appId: any | undefined;
190 clusterId: any | undefined;
191}
192
193export interface MessagePropertyHeaders {
194 "x-first-death-exchange"?: string;
195 "x-first-death-queue"?: string;
196 "x-first-death-reason"?: string;
197 "x-death"?: XDeath[];
198 [key: string]: any;
199}
200
201export interface XDeath {
202 count: number;
203 reason: "rejected" | "expired" | "maxlen";
204 queue: string;
205 time: {
206 "!": "timestamp";
207 value: number;
208 };
209 exchange: string;
210 "original-expiration"?: any;
211 "routing-keys": string[];
212}
213
214export interface ServerProperties {
215 host: string;
216 product: string;
217 version: string;
218 platform: string;
219 copyright?: string;
220 information: string;
221 [key: string]: string | undefined;
222}