@azure/web-pubsub-client-protobuf 1.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js ADDED
@@ -0,0 +1,4392 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ // minimal library entry point.
6
+ module.exports = require("./src/index-minimal");
7
+
8
+ /*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
9
+
10
+ // Common aliases
11
+ const $Reader = undefined, $Writer = undefined, $util = undefined;
12
+
13
+ // Exported root namespace
14
+ const $root = undefined || (undefined = {});
15
+
16
+ const UpstreamMessage = $root.UpstreamMessage = (() => {
17
+
18
+ /**
19
+ * Properties of an UpstreamMessage.
20
+ * @exports IUpstreamMessage
21
+ * @interface IUpstreamMessage
22
+ * @property {UpstreamMessage.ISendToGroupMessage|null} [sendToGroupMessage] UpstreamMessage sendToGroupMessage
23
+ * @property {UpstreamMessage.IEventMessage|null} [eventMessage] UpstreamMessage eventMessage
24
+ * @property {UpstreamMessage.IJoinGroupMessage|null} [joinGroupMessage] UpstreamMessage joinGroupMessage
25
+ * @property {UpstreamMessage.ILeaveGroupMessage|null} [leaveGroupMessage] UpstreamMessage leaveGroupMessage
26
+ * @property {UpstreamMessage.ISequenceAckMessage|null} [sequenceAckMessage] UpstreamMessage sequenceAckMessage
27
+ */
28
+
29
+ /**
30
+ * Constructs a new UpstreamMessage.
31
+ * @exports UpstreamMessage
32
+ * @classdesc Represents an UpstreamMessage.
33
+ * @implements IUpstreamMessage
34
+ * @constructor
35
+ * @param {IUpstreamMessage=} [properties] Properties to set
36
+ */
37
+ function UpstreamMessage(properties) {
38
+ if (properties)
39
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
40
+ if (properties[keys[i]] != null)
41
+ this[keys[i]] = properties[keys[i]];
42
+ }
43
+
44
+ /**
45
+ * UpstreamMessage sendToGroupMessage.
46
+ * @member {UpstreamMessage.ISendToGroupMessage|null|undefined} sendToGroupMessage
47
+ * @memberof UpstreamMessage
48
+ * @instance
49
+ */
50
+ UpstreamMessage.prototype.sendToGroupMessage = null;
51
+
52
+ /**
53
+ * UpstreamMessage eventMessage.
54
+ * @member {UpstreamMessage.IEventMessage|null|undefined} eventMessage
55
+ * @memberof UpstreamMessage
56
+ * @instance
57
+ */
58
+ UpstreamMessage.prototype.eventMessage = null;
59
+
60
+ /**
61
+ * UpstreamMessage joinGroupMessage.
62
+ * @member {UpstreamMessage.IJoinGroupMessage|null|undefined} joinGroupMessage
63
+ * @memberof UpstreamMessage
64
+ * @instance
65
+ */
66
+ UpstreamMessage.prototype.joinGroupMessage = null;
67
+
68
+ /**
69
+ * UpstreamMessage leaveGroupMessage.
70
+ * @member {UpstreamMessage.ILeaveGroupMessage|null|undefined} leaveGroupMessage
71
+ * @memberof UpstreamMessage
72
+ * @instance
73
+ */
74
+ UpstreamMessage.prototype.leaveGroupMessage = null;
75
+
76
+ /**
77
+ * UpstreamMessage sequenceAckMessage.
78
+ * @member {UpstreamMessage.ISequenceAckMessage|null|undefined} sequenceAckMessage
79
+ * @memberof UpstreamMessage
80
+ * @instance
81
+ */
82
+ UpstreamMessage.prototype.sequenceAckMessage = null;
83
+
84
+ // OneOf field names bound to virtual getters and setters
85
+ let $oneOfFields;
86
+
87
+ /**
88
+ * UpstreamMessage message.
89
+ * @member {"sendToGroupMessage"|"eventMessage"|"joinGroupMessage"|"leaveGroupMessage"|"sequenceAckMessage"|undefined} message
90
+ * @memberof UpstreamMessage
91
+ * @instance
92
+ */
93
+ Object.defineProperty(UpstreamMessage.prototype, "message", {
94
+ get: $util.oneOfGetter($oneOfFields = ["sendToGroupMessage", "eventMessage", "joinGroupMessage", "leaveGroupMessage", "sequenceAckMessage"]),
95
+ set: $util.oneOfSetter($oneOfFields)
96
+ });
97
+
98
+ /**
99
+ * Creates a new UpstreamMessage instance using the specified properties.
100
+ * @function create
101
+ * @memberof UpstreamMessage
102
+ * @static
103
+ * @param {IUpstreamMessage=} [properties] Properties to set
104
+ * @returns {UpstreamMessage} UpstreamMessage instance
105
+ */
106
+ UpstreamMessage.create = function create(properties) {
107
+ return new UpstreamMessage(properties);
108
+ };
109
+
110
+ /**
111
+ * Encodes the specified UpstreamMessage message. Does not implicitly {@link UpstreamMessage.verify|verify} messages.
112
+ * @function encode
113
+ * @memberof UpstreamMessage
114
+ * @static
115
+ * @param {IUpstreamMessage} message UpstreamMessage message or plain object to encode
116
+ * @param {$protobuf.Writer} [writer] Writer to encode to
117
+ * @returns {$protobuf.Writer} Writer
118
+ */
119
+ UpstreamMessage.encode = function encode(message, writer) {
120
+ if (!writer)
121
+ writer = $Writer.create();
122
+ if (message.sendToGroupMessage != null && Object.hasOwnProperty.call(message, "sendToGroupMessage"))
123
+ $root.UpstreamMessage.SendToGroupMessage.encode(message.sendToGroupMessage, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
124
+ if (message.eventMessage != null && Object.hasOwnProperty.call(message, "eventMessage"))
125
+ $root.UpstreamMessage.EventMessage.encode(message.eventMessage, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
126
+ if (message.joinGroupMessage != null && Object.hasOwnProperty.call(message, "joinGroupMessage"))
127
+ $root.UpstreamMessage.JoinGroupMessage.encode(message.joinGroupMessage, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
128
+ if (message.leaveGroupMessage != null && Object.hasOwnProperty.call(message, "leaveGroupMessage"))
129
+ $root.UpstreamMessage.LeaveGroupMessage.encode(message.leaveGroupMessage, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
130
+ if (message.sequenceAckMessage != null && Object.hasOwnProperty.call(message, "sequenceAckMessage"))
131
+ $root.UpstreamMessage.SequenceAckMessage.encode(message.sequenceAckMessage, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
132
+ return writer;
133
+ };
134
+
135
+ /**
136
+ * Encodes the specified UpstreamMessage message, length delimited. Does not implicitly {@link UpstreamMessage.verify|verify} messages.
137
+ * @function encodeDelimited
138
+ * @memberof UpstreamMessage
139
+ * @static
140
+ * @param {IUpstreamMessage} message UpstreamMessage message or plain object to encode
141
+ * @param {$protobuf.Writer} [writer] Writer to encode to
142
+ * @returns {$protobuf.Writer} Writer
143
+ */
144
+ UpstreamMessage.encodeDelimited = function encodeDelimited(message, writer) {
145
+ return this.encode(message, writer).ldelim();
146
+ };
147
+
148
+ /**
149
+ * Decodes an UpstreamMessage message from the specified reader or buffer.
150
+ * @function decode
151
+ * @memberof UpstreamMessage
152
+ * @static
153
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
154
+ * @param {number} [length] Message length if known beforehand
155
+ * @returns {UpstreamMessage} UpstreamMessage
156
+ * @throws {Error} If the payload is not a reader or valid buffer
157
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
158
+ */
159
+ UpstreamMessage.decode = function decode(reader, length) {
160
+ if (!(reader instanceof $Reader))
161
+ reader = $Reader.create(reader);
162
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage();
163
+ while (reader.pos < end) {
164
+ let tag = reader.uint32();
165
+ switch (tag >>> 3) {
166
+ case 1: {
167
+ message.sendToGroupMessage = $root.UpstreamMessage.SendToGroupMessage.decode(reader, reader.uint32());
168
+ break;
169
+ }
170
+ case 5: {
171
+ message.eventMessage = $root.UpstreamMessage.EventMessage.decode(reader, reader.uint32());
172
+ break;
173
+ }
174
+ case 6: {
175
+ message.joinGroupMessage = $root.UpstreamMessage.JoinGroupMessage.decode(reader, reader.uint32());
176
+ break;
177
+ }
178
+ case 7: {
179
+ message.leaveGroupMessage = $root.UpstreamMessage.LeaveGroupMessage.decode(reader, reader.uint32());
180
+ break;
181
+ }
182
+ case 8: {
183
+ message.sequenceAckMessage = $root.UpstreamMessage.SequenceAckMessage.decode(reader, reader.uint32());
184
+ break;
185
+ }
186
+ default:
187
+ reader.skipType(tag & 7);
188
+ break;
189
+ }
190
+ }
191
+ return message;
192
+ };
193
+
194
+ /**
195
+ * Decodes an UpstreamMessage message from the specified reader or buffer, length delimited.
196
+ * @function decodeDelimited
197
+ * @memberof UpstreamMessage
198
+ * @static
199
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
200
+ * @returns {UpstreamMessage} UpstreamMessage
201
+ * @throws {Error} If the payload is not a reader or valid buffer
202
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
203
+ */
204
+ UpstreamMessage.decodeDelimited = function decodeDelimited(reader) {
205
+ if (!(reader instanceof $Reader))
206
+ reader = new $Reader(reader);
207
+ return this.decode(reader, reader.uint32());
208
+ };
209
+
210
+ /**
211
+ * Verifies an UpstreamMessage message.
212
+ * @function verify
213
+ * @memberof UpstreamMessage
214
+ * @static
215
+ * @param {Object.<string,*>} message Plain object to verify
216
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
217
+ */
218
+ UpstreamMessage.verify = function verify(message) {
219
+ if (typeof message !== "object" || message === null)
220
+ return "object expected";
221
+ let properties = {};
222
+ if (message.sendToGroupMessage != null && message.hasOwnProperty("sendToGroupMessage")) {
223
+ properties.message = 1;
224
+ {
225
+ let error = $root.UpstreamMessage.SendToGroupMessage.verify(message.sendToGroupMessage);
226
+ if (error)
227
+ return "sendToGroupMessage." + error;
228
+ }
229
+ }
230
+ if (message.eventMessage != null && message.hasOwnProperty("eventMessage")) {
231
+ if (properties.message === 1)
232
+ return "message: multiple values";
233
+ properties.message = 1;
234
+ {
235
+ let error = $root.UpstreamMessage.EventMessage.verify(message.eventMessage);
236
+ if (error)
237
+ return "eventMessage." + error;
238
+ }
239
+ }
240
+ if (message.joinGroupMessage != null && message.hasOwnProperty("joinGroupMessage")) {
241
+ if (properties.message === 1)
242
+ return "message: multiple values";
243
+ properties.message = 1;
244
+ {
245
+ let error = $root.UpstreamMessage.JoinGroupMessage.verify(message.joinGroupMessage);
246
+ if (error)
247
+ return "joinGroupMessage." + error;
248
+ }
249
+ }
250
+ if (message.leaveGroupMessage != null && message.hasOwnProperty("leaveGroupMessage")) {
251
+ if (properties.message === 1)
252
+ return "message: multiple values";
253
+ properties.message = 1;
254
+ {
255
+ let error = $root.UpstreamMessage.LeaveGroupMessage.verify(message.leaveGroupMessage);
256
+ if (error)
257
+ return "leaveGroupMessage." + error;
258
+ }
259
+ }
260
+ if (message.sequenceAckMessage != null && message.hasOwnProperty("sequenceAckMessage")) {
261
+ if (properties.message === 1)
262
+ return "message: multiple values";
263
+ properties.message = 1;
264
+ {
265
+ let error = $root.UpstreamMessage.SequenceAckMessage.verify(message.sequenceAckMessage);
266
+ if (error)
267
+ return "sequenceAckMessage." + error;
268
+ }
269
+ }
270
+ return null;
271
+ };
272
+
273
+ /**
274
+ * Creates an UpstreamMessage message from a plain object. Also converts values to their respective internal types.
275
+ * @function fromObject
276
+ * @memberof UpstreamMessage
277
+ * @static
278
+ * @param {Object.<string,*>} object Plain object
279
+ * @returns {UpstreamMessage} UpstreamMessage
280
+ */
281
+ UpstreamMessage.fromObject = function fromObject(object) {
282
+ if (object instanceof $root.UpstreamMessage)
283
+ return object;
284
+ let message = new $root.UpstreamMessage();
285
+ if (object.sendToGroupMessage != null) {
286
+ if (typeof object.sendToGroupMessage !== "object")
287
+ throw TypeError(".UpstreamMessage.sendToGroupMessage: object expected");
288
+ message.sendToGroupMessage = $root.UpstreamMessage.SendToGroupMessage.fromObject(object.sendToGroupMessage);
289
+ }
290
+ if (object.eventMessage != null) {
291
+ if (typeof object.eventMessage !== "object")
292
+ throw TypeError(".UpstreamMessage.eventMessage: object expected");
293
+ message.eventMessage = $root.UpstreamMessage.EventMessage.fromObject(object.eventMessage);
294
+ }
295
+ if (object.joinGroupMessage != null) {
296
+ if (typeof object.joinGroupMessage !== "object")
297
+ throw TypeError(".UpstreamMessage.joinGroupMessage: object expected");
298
+ message.joinGroupMessage = $root.UpstreamMessage.JoinGroupMessage.fromObject(object.joinGroupMessage);
299
+ }
300
+ if (object.leaveGroupMessage != null) {
301
+ if (typeof object.leaveGroupMessage !== "object")
302
+ throw TypeError(".UpstreamMessage.leaveGroupMessage: object expected");
303
+ message.leaveGroupMessage = $root.UpstreamMessage.LeaveGroupMessage.fromObject(object.leaveGroupMessage);
304
+ }
305
+ if (object.sequenceAckMessage != null) {
306
+ if (typeof object.sequenceAckMessage !== "object")
307
+ throw TypeError(".UpstreamMessage.sequenceAckMessage: object expected");
308
+ message.sequenceAckMessage = $root.UpstreamMessage.SequenceAckMessage.fromObject(object.sequenceAckMessage);
309
+ }
310
+ return message;
311
+ };
312
+
313
+ /**
314
+ * Creates a plain object from an UpstreamMessage message. Also converts values to other types if specified.
315
+ * @function toObject
316
+ * @memberof UpstreamMessage
317
+ * @static
318
+ * @param {UpstreamMessage} message UpstreamMessage
319
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
320
+ * @returns {Object.<string,*>} Plain object
321
+ */
322
+ UpstreamMessage.toObject = function toObject(message, options) {
323
+ if (!options)
324
+ options = {};
325
+ let object = {};
326
+ if (message.sendToGroupMessage != null && message.hasOwnProperty("sendToGroupMessage")) {
327
+ object.sendToGroupMessage = $root.UpstreamMessage.SendToGroupMessage.toObject(message.sendToGroupMessage, options);
328
+ if (options.oneofs)
329
+ object.message = "sendToGroupMessage";
330
+ }
331
+ if (message.eventMessage != null && message.hasOwnProperty("eventMessage")) {
332
+ object.eventMessage = $root.UpstreamMessage.EventMessage.toObject(message.eventMessage, options);
333
+ if (options.oneofs)
334
+ object.message = "eventMessage";
335
+ }
336
+ if (message.joinGroupMessage != null && message.hasOwnProperty("joinGroupMessage")) {
337
+ object.joinGroupMessage = $root.UpstreamMessage.JoinGroupMessage.toObject(message.joinGroupMessage, options);
338
+ if (options.oneofs)
339
+ object.message = "joinGroupMessage";
340
+ }
341
+ if (message.leaveGroupMessage != null && message.hasOwnProperty("leaveGroupMessage")) {
342
+ object.leaveGroupMessage = $root.UpstreamMessage.LeaveGroupMessage.toObject(message.leaveGroupMessage, options);
343
+ if (options.oneofs)
344
+ object.message = "leaveGroupMessage";
345
+ }
346
+ if (message.sequenceAckMessage != null && message.hasOwnProperty("sequenceAckMessage")) {
347
+ object.sequenceAckMessage = $root.UpstreamMessage.SequenceAckMessage.toObject(message.sequenceAckMessage, options);
348
+ if (options.oneofs)
349
+ object.message = "sequenceAckMessage";
350
+ }
351
+ return object;
352
+ };
353
+
354
+ /**
355
+ * Converts this UpstreamMessage to JSON.
356
+ * @function toJSON
357
+ * @memberof UpstreamMessage
358
+ * @instance
359
+ * @returns {Object.<string,*>} JSON object
360
+ */
361
+ UpstreamMessage.prototype.toJSON = function toJSON() {
362
+ return this.constructor.toObject(this, undefined);
363
+ };
364
+
365
+ /**
366
+ * Gets the default type url for UpstreamMessage
367
+ * @function getTypeUrl
368
+ * @memberof UpstreamMessage
369
+ * @static
370
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
371
+ * @returns {string} The default type url
372
+ */
373
+ UpstreamMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
374
+ if (typeUrlPrefix === undefined) {
375
+ typeUrlPrefix = "type.googleapis.com";
376
+ }
377
+ return typeUrlPrefix + "/UpstreamMessage";
378
+ };
379
+
380
+ UpstreamMessage.SendToGroupMessage = (function() {
381
+
382
+ /**
383
+ * Properties of a SendToGroupMessage.
384
+ * @memberof UpstreamMessage
385
+ * @interface ISendToGroupMessage
386
+ * @property {string|null} [group] SendToGroupMessage group
387
+ * @property {number|Long|null} [ackId] SendToGroupMessage ackId
388
+ * @property {IMessageData|null} [data] SendToGroupMessage data
389
+ * @property {boolean|null} [noEcho] SendToGroupMessage noEcho
390
+ */
391
+
392
+ /**
393
+ * Constructs a new SendToGroupMessage.
394
+ * @memberof UpstreamMessage
395
+ * @classdesc Represents a SendToGroupMessage.
396
+ * @implements ISendToGroupMessage
397
+ * @constructor
398
+ * @param {UpstreamMessage.ISendToGroupMessage=} [properties] Properties to set
399
+ */
400
+ function SendToGroupMessage(properties) {
401
+ if (properties)
402
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
403
+ if (properties[keys[i]] != null)
404
+ this[keys[i]] = properties[keys[i]];
405
+ }
406
+
407
+ /**
408
+ * SendToGroupMessage group.
409
+ * @member {string} group
410
+ * @memberof UpstreamMessage.SendToGroupMessage
411
+ * @instance
412
+ */
413
+ SendToGroupMessage.prototype.group = "";
414
+
415
+ /**
416
+ * SendToGroupMessage ackId.
417
+ * @member {number|Long|null|undefined} ackId
418
+ * @memberof UpstreamMessage.SendToGroupMessage
419
+ * @instance
420
+ */
421
+ SendToGroupMessage.prototype.ackId = null;
422
+
423
+ /**
424
+ * SendToGroupMessage data.
425
+ * @member {IMessageData|null|undefined} data
426
+ * @memberof UpstreamMessage.SendToGroupMessage
427
+ * @instance
428
+ */
429
+ SendToGroupMessage.prototype.data = null;
430
+
431
+ /**
432
+ * SendToGroupMessage noEcho.
433
+ * @member {boolean|null|undefined} noEcho
434
+ * @memberof UpstreamMessage.SendToGroupMessage
435
+ * @instance
436
+ */
437
+ SendToGroupMessage.prototype.noEcho = null;
438
+
439
+ // OneOf field names bound to virtual getters and setters
440
+ let $oneOfFields;
441
+
442
+ /**
443
+ * SendToGroupMessage _ackId.
444
+ * @member {"ackId"|undefined} _ackId
445
+ * @memberof UpstreamMessage.SendToGroupMessage
446
+ * @instance
447
+ */
448
+ Object.defineProperty(SendToGroupMessage.prototype, "_ackId", {
449
+ get: $util.oneOfGetter($oneOfFields = ["ackId"]),
450
+ set: $util.oneOfSetter($oneOfFields)
451
+ });
452
+
453
+ /**
454
+ * SendToGroupMessage _noEcho.
455
+ * @member {"noEcho"|undefined} _noEcho
456
+ * @memberof UpstreamMessage.SendToGroupMessage
457
+ * @instance
458
+ */
459
+ Object.defineProperty(SendToGroupMessage.prototype, "_noEcho", {
460
+ get: $util.oneOfGetter($oneOfFields = ["noEcho"]),
461
+ set: $util.oneOfSetter($oneOfFields)
462
+ });
463
+
464
+ /**
465
+ * Creates a new SendToGroupMessage instance using the specified properties.
466
+ * @function create
467
+ * @memberof UpstreamMessage.SendToGroupMessage
468
+ * @static
469
+ * @param {UpstreamMessage.ISendToGroupMessage=} [properties] Properties to set
470
+ * @returns {UpstreamMessage.SendToGroupMessage} SendToGroupMessage instance
471
+ */
472
+ SendToGroupMessage.create = function create(properties) {
473
+ return new SendToGroupMessage(properties);
474
+ };
475
+
476
+ /**
477
+ * Encodes the specified SendToGroupMessage message. Does not implicitly {@link UpstreamMessage.SendToGroupMessage.verify|verify} messages.
478
+ * @function encode
479
+ * @memberof UpstreamMessage.SendToGroupMessage
480
+ * @static
481
+ * @param {UpstreamMessage.ISendToGroupMessage} message SendToGroupMessage message or plain object to encode
482
+ * @param {$protobuf.Writer} [writer] Writer to encode to
483
+ * @returns {$protobuf.Writer} Writer
484
+ */
485
+ SendToGroupMessage.encode = function encode(message, writer) {
486
+ if (!writer)
487
+ writer = $Writer.create();
488
+ if (message.group != null && Object.hasOwnProperty.call(message, "group"))
489
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.group);
490
+ if (message.ackId != null && Object.hasOwnProperty.call(message, "ackId"))
491
+ writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.ackId);
492
+ if (message.data != null && Object.hasOwnProperty.call(message, "data"))
493
+ $root.MessageData.encode(message.data, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
494
+ if (message.noEcho != null && Object.hasOwnProperty.call(message, "noEcho"))
495
+ writer.uint32(/* id 4, wireType 0 =*/32).bool(message.noEcho);
496
+ return writer;
497
+ };
498
+
499
+ /**
500
+ * Encodes the specified SendToGroupMessage message, length delimited. Does not implicitly {@link UpstreamMessage.SendToGroupMessage.verify|verify} messages.
501
+ * @function encodeDelimited
502
+ * @memberof UpstreamMessage.SendToGroupMessage
503
+ * @static
504
+ * @param {UpstreamMessage.ISendToGroupMessage} message SendToGroupMessage message or plain object to encode
505
+ * @param {$protobuf.Writer} [writer] Writer to encode to
506
+ * @returns {$protobuf.Writer} Writer
507
+ */
508
+ SendToGroupMessage.encodeDelimited = function encodeDelimited(message, writer) {
509
+ return this.encode(message, writer).ldelim();
510
+ };
511
+
512
+ /**
513
+ * Decodes a SendToGroupMessage message from the specified reader or buffer.
514
+ * @function decode
515
+ * @memberof UpstreamMessage.SendToGroupMessage
516
+ * @static
517
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
518
+ * @param {number} [length] Message length if known beforehand
519
+ * @returns {UpstreamMessage.SendToGroupMessage} SendToGroupMessage
520
+ * @throws {Error} If the payload is not a reader or valid buffer
521
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
522
+ */
523
+ SendToGroupMessage.decode = function decode(reader, length) {
524
+ if (!(reader instanceof $Reader))
525
+ reader = $Reader.create(reader);
526
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage.SendToGroupMessage();
527
+ while (reader.pos < end) {
528
+ let tag = reader.uint32();
529
+ switch (tag >>> 3) {
530
+ case 1: {
531
+ message.group = reader.string();
532
+ break;
533
+ }
534
+ case 2: {
535
+ message.ackId = reader.uint64();
536
+ break;
537
+ }
538
+ case 3: {
539
+ message.data = $root.MessageData.decode(reader, reader.uint32());
540
+ break;
541
+ }
542
+ case 4: {
543
+ message.noEcho = reader.bool();
544
+ break;
545
+ }
546
+ default:
547
+ reader.skipType(tag & 7);
548
+ break;
549
+ }
550
+ }
551
+ return message;
552
+ };
553
+
554
+ /**
555
+ * Decodes a SendToGroupMessage message from the specified reader or buffer, length delimited.
556
+ * @function decodeDelimited
557
+ * @memberof UpstreamMessage.SendToGroupMessage
558
+ * @static
559
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
560
+ * @returns {UpstreamMessage.SendToGroupMessage} SendToGroupMessage
561
+ * @throws {Error} If the payload is not a reader or valid buffer
562
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
563
+ */
564
+ SendToGroupMessage.decodeDelimited = function decodeDelimited(reader) {
565
+ if (!(reader instanceof $Reader))
566
+ reader = new $Reader(reader);
567
+ return this.decode(reader, reader.uint32());
568
+ };
569
+
570
+ /**
571
+ * Verifies a SendToGroupMessage message.
572
+ * @function verify
573
+ * @memberof UpstreamMessage.SendToGroupMessage
574
+ * @static
575
+ * @param {Object.<string,*>} message Plain object to verify
576
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
577
+ */
578
+ SendToGroupMessage.verify = function verify(message) {
579
+ if (typeof message !== "object" || message === null)
580
+ return "object expected";
581
+ if (message.group != null && message.hasOwnProperty("group"))
582
+ if (!$util.isString(message.group))
583
+ return "group: string expected";
584
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
585
+ if (!$util.isInteger(message.ackId) && !(message.ackId && $util.isInteger(message.ackId.low) && $util.isInteger(message.ackId.high)))
586
+ return "ackId: integer|Long expected";
587
+ }
588
+ if (message.data != null && message.hasOwnProperty("data")) {
589
+ let error = $root.MessageData.verify(message.data);
590
+ if (error)
591
+ return "data." + error;
592
+ }
593
+ if (message.noEcho != null && message.hasOwnProperty("noEcho")) {
594
+ if (typeof message.noEcho !== "boolean")
595
+ return "noEcho: boolean expected";
596
+ }
597
+ return null;
598
+ };
599
+
600
+ /**
601
+ * Creates a SendToGroupMessage message from a plain object. Also converts values to their respective internal types.
602
+ * @function fromObject
603
+ * @memberof UpstreamMessage.SendToGroupMessage
604
+ * @static
605
+ * @param {Object.<string,*>} object Plain object
606
+ * @returns {UpstreamMessage.SendToGroupMessage} SendToGroupMessage
607
+ */
608
+ SendToGroupMessage.fromObject = function fromObject(object) {
609
+ if (object instanceof $root.UpstreamMessage.SendToGroupMessage)
610
+ return object;
611
+ let message = new $root.UpstreamMessage.SendToGroupMessage();
612
+ if (object.group != null)
613
+ message.group = String(object.group);
614
+ if (object.ackId != null)
615
+ if ($util.Long)
616
+ (message.ackId = $util.Long.fromValue(object.ackId)).unsigned = true;
617
+ else if (typeof object.ackId === "string")
618
+ message.ackId = parseInt(object.ackId, 10);
619
+ else if (typeof object.ackId === "number")
620
+ message.ackId = object.ackId;
621
+ else if (typeof object.ackId === "object")
622
+ message.ackId = new $util.LongBits(object.ackId.low >>> 0, object.ackId.high >>> 0).toNumber(true);
623
+ if (object.data != null) {
624
+ if (typeof object.data !== "object")
625
+ throw TypeError(".UpstreamMessage.SendToGroupMessage.data: object expected");
626
+ message.data = $root.MessageData.fromObject(object.data);
627
+ }
628
+ if (object.noEcho != null)
629
+ message.noEcho = Boolean(object.noEcho);
630
+ return message;
631
+ };
632
+
633
+ /**
634
+ * Creates a plain object from a SendToGroupMessage message. Also converts values to other types if specified.
635
+ * @function toObject
636
+ * @memberof UpstreamMessage.SendToGroupMessage
637
+ * @static
638
+ * @param {UpstreamMessage.SendToGroupMessage} message SendToGroupMessage
639
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
640
+ * @returns {Object.<string,*>} Plain object
641
+ */
642
+ SendToGroupMessage.toObject = function toObject(message, options) {
643
+ if (!options)
644
+ options = {};
645
+ let object = {};
646
+ if (options.defaults) {
647
+ object.group = "";
648
+ object.data = null;
649
+ }
650
+ if (message.group != null && message.hasOwnProperty("group"))
651
+ object.group = message.group;
652
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
653
+ if (typeof message.ackId === "number")
654
+ object.ackId = options.longs === String ? String(message.ackId) : message.ackId;
655
+ else
656
+ object.ackId = options.longs === String ? $util.Long.prototype.toString.call(message.ackId) : options.longs === Number ? new $util.LongBits(message.ackId.low >>> 0, message.ackId.high >>> 0).toNumber(true) : message.ackId;
657
+ if (options.oneofs)
658
+ object._ackId = "ackId";
659
+ }
660
+ if (message.data != null && message.hasOwnProperty("data"))
661
+ object.data = $root.MessageData.toObject(message.data, options);
662
+ if (message.noEcho != null && message.hasOwnProperty("noEcho")) {
663
+ object.noEcho = message.noEcho;
664
+ if (options.oneofs)
665
+ object._noEcho = "noEcho";
666
+ }
667
+ return object;
668
+ };
669
+
670
+ /**
671
+ * Converts this SendToGroupMessage to JSON.
672
+ * @function toJSON
673
+ * @memberof UpstreamMessage.SendToGroupMessage
674
+ * @instance
675
+ * @returns {Object.<string,*>} JSON object
676
+ */
677
+ SendToGroupMessage.prototype.toJSON = function toJSON() {
678
+ return this.constructor.toObject(this, undefined);
679
+ };
680
+
681
+ /**
682
+ * Gets the default type url for SendToGroupMessage
683
+ * @function getTypeUrl
684
+ * @memberof UpstreamMessage.SendToGroupMessage
685
+ * @static
686
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
687
+ * @returns {string} The default type url
688
+ */
689
+ SendToGroupMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
690
+ if (typeUrlPrefix === undefined) {
691
+ typeUrlPrefix = "type.googleapis.com";
692
+ }
693
+ return typeUrlPrefix + "/UpstreamMessage.SendToGroupMessage";
694
+ };
695
+
696
+ return SendToGroupMessage;
697
+ })();
698
+
699
+ UpstreamMessage.EventMessage = (function() {
700
+
701
+ /**
702
+ * Properties of an EventMessage.
703
+ * @memberof UpstreamMessage
704
+ * @interface IEventMessage
705
+ * @property {string|null} [event] EventMessage event
706
+ * @property {IMessageData|null} [data] EventMessage data
707
+ * @property {number|Long|null} [ackId] EventMessage ackId
708
+ */
709
+
710
+ /**
711
+ * Constructs a new EventMessage.
712
+ * @memberof UpstreamMessage
713
+ * @classdesc Represents an EventMessage.
714
+ * @implements IEventMessage
715
+ * @constructor
716
+ * @param {UpstreamMessage.IEventMessage=} [properties] Properties to set
717
+ */
718
+ function EventMessage(properties) {
719
+ if (properties)
720
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
721
+ if (properties[keys[i]] != null)
722
+ this[keys[i]] = properties[keys[i]];
723
+ }
724
+
725
+ /**
726
+ * EventMessage event.
727
+ * @member {string} event
728
+ * @memberof UpstreamMessage.EventMessage
729
+ * @instance
730
+ */
731
+ EventMessage.prototype.event = "";
732
+
733
+ /**
734
+ * EventMessage data.
735
+ * @member {IMessageData|null|undefined} data
736
+ * @memberof UpstreamMessage.EventMessage
737
+ * @instance
738
+ */
739
+ EventMessage.prototype.data = null;
740
+
741
+ /**
742
+ * EventMessage ackId.
743
+ * @member {number|Long|null|undefined} ackId
744
+ * @memberof UpstreamMessage.EventMessage
745
+ * @instance
746
+ */
747
+ EventMessage.prototype.ackId = null;
748
+
749
+ // OneOf field names bound to virtual getters and setters
750
+ let $oneOfFields;
751
+
752
+ /**
753
+ * EventMessage _ackId.
754
+ * @member {"ackId"|undefined} _ackId
755
+ * @memberof UpstreamMessage.EventMessage
756
+ * @instance
757
+ */
758
+ Object.defineProperty(EventMessage.prototype, "_ackId", {
759
+ get: $util.oneOfGetter($oneOfFields = ["ackId"]),
760
+ set: $util.oneOfSetter($oneOfFields)
761
+ });
762
+
763
+ /**
764
+ * Creates a new EventMessage instance using the specified properties.
765
+ * @function create
766
+ * @memberof UpstreamMessage.EventMessage
767
+ * @static
768
+ * @param {UpstreamMessage.IEventMessage=} [properties] Properties to set
769
+ * @returns {UpstreamMessage.EventMessage} EventMessage instance
770
+ */
771
+ EventMessage.create = function create(properties) {
772
+ return new EventMessage(properties);
773
+ };
774
+
775
+ /**
776
+ * Encodes the specified EventMessage message. Does not implicitly {@link UpstreamMessage.EventMessage.verify|verify} messages.
777
+ * @function encode
778
+ * @memberof UpstreamMessage.EventMessage
779
+ * @static
780
+ * @param {UpstreamMessage.IEventMessage} message EventMessage message or plain object to encode
781
+ * @param {$protobuf.Writer} [writer] Writer to encode to
782
+ * @returns {$protobuf.Writer} Writer
783
+ */
784
+ EventMessage.encode = function encode(message, writer) {
785
+ if (!writer)
786
+ writer = $Writer.create();
787
+ if (message.event != null && Object.hasOwnProperty.call(message, "event"))
788
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.event);
789
+ if (message.data != null && Object.hasOwnProperty.call(message, "data"))
790
+ $root.MessageData.encode(message.data, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
791
+ if (message.ackId != null && Object.hasOwnProperty.call(message, "ackId"))
792
+ writer.uint32(/* id 3, wireType 0 =*/24).uint64(message.ackId);
793
+ return writer;
794
+ };
795
+
796
+ /**
797
+ * Encodes the specified EventMessage message, length delimited. Does not implicitly {@link UpstreamMessage.EventMessage.verify|verify} messages.
798
+ * @function encodeDelimited
799
+ * @memberof UpstreamMessage.EventMessage
800
+ * @static
801
+ * @param {UpstreamMessage.IEventMessage} message EventMessage message or plain object to encode
802
+ * @param {$protobuf.Writer} [writer] Writer to encode to
803
+ * @returns {$protobuf.Writer} Writer
804
+ */
805
+ EventMessage.encodeDelimited = function encodeDelimited(message, writer) {
806
+ return this.encode(message, writer).ldelim();
807
+ };
808
+
809
+ /**
810
+ * Decodes an EventMessage message from the specified reader or buffer.
811
+ * @function decode
812
+ * @memberof UpstreamMessage.EventMessage
813
+ * @static
814
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
815
+ * @param {number} [length] Message length if known beforehand
816
+ * @returns {UpstreamMessage.EventMessage} EventMessage
817
+ * @throws {Error} If the payload is not a reader or valid buffer
818
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
819
+ */
820
+ EventMessage.decode = function decode(reader, length) {
821
+ if (!(reader instanceof $Reader))
822
+ reader = $Reader.create(reader);
823
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage.EventMessage();
824
+ while (reader.pos < end) {
825
+ let tag = reader.uint32();
826
+ switch (tag >>> 3) {
827
+ case 1: {
828
+ message.event = reader.string();
829
+ break;
830
+ }
831
+ case 2: {
832
+ message.data = $root.MessageData.decode(reader, reader.uint32());
833
+ break;
834
+ }
835
+ case 3: {
836
+ message.ackId = reader.uint64();
837
+ break;
838
+ }
839
+ default:
840
+ reader.skipType(tag & 7);
841
+ break;
842
+ }
843
+ }
844
+ return message;
845
+ };
846
+
847
+ /**
848
+ * Decodes an EventMessage message from the specified reader or buffer, length delimited.
849
+ * @function decodeDelimited
850
+ * @memberof UpstreamMessage.EventMessage
851
+ * @static
852
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
853
+ * @returns {UpstreamMessage.EventMessage} EventMessage
854
+ * @throws {Error} If the payload is not a reader or valid buffer
855
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
856
+ */
857
+ EventMessage.decodeDelimited = function decodeDelimited(reader) {
858
+ if (!(reader instanceof $Reader))
859
+ reader = new $Reader(reader);
860
+ return this.decode(reader, reader.uint32());
861
+ };
862
+
863
+ /**
864
+ * Verifies an EventMessage message.
865
+ * @function verify
866
+ * @memberof UpstreamMessage.EventMessage
867
+ * @static
868
+ * @param {Object.<string,*>} message Plain object to verify
869
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
870
+ */
871
+ EventMessage.verify = function verify(message) {
872
+ if (typeof message !== "object" || message === null)
873
+ return "object expected";
874
+ if (message.event != null && message.hasOwnProperty("event"))
875
+ if (!$util.isString(message.event))
876
+ return "event: string expected";
877
+ if (message.data != null && message.hasOwnProperty("data")) {
878
+ let error = $root.MessageData.verify(message.data);
879
+ if (error)
880
+ return "data." + error;
881
+ }
882
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
883
+ if (!$util.isInteger(message.ackId) && !(message.ackId && $util.isInteger(message.ackId.low) && $util.isInteger(message.ackId.high)))
884
+ return "ackId: integer|Long expected";
885
+ }
886
+ return null;
887
+ };
888
+
889
+ /**
890
+ * Creates an EventMessage message from a plain object. Also converts values to their respective internal types.
891
+ * @function fromObject
892
+ * @memberof UpstreamMessage.EventMessage
893
+ * @static
894
+ * @param {Object.<string,*>} object Plain object
895
+ * @returns {UpstreamMessage.EventMessage} EventMessage
896
+ */
897
+ EventMessage.fromObject = function fromObject(object) {
898
+ if (object instanceof $root.UpstreamMessage.EventMessage)
899
+ return object;
900
+ let message = new $root.UpstreamMessage.EventMessage();
901
+ if (object.event != null)
902
+ message.event = String(object.event);
903
+ if (object.data != null) {
904
+ if (typeof object.data !== "object")
905
+ throw TypeError(".UpstreamMessage.EventMessage.data: object expected");
906
+ message.data = $root.MessageData.fromObject(object.data);
907
+ }
908
+ if (object.ackId != null)
909
+ if ($util.Long)
910
+ (message.ackId = $util.Long.fromValue(object.ackId)).unsigned = true;
911
+ else if (typeof object.ackId === "string")
912
+ message.ackId = parseInt(object.ackId, 10);
913
+ else if (typeof object.ackId === "number")
914
+ message.ackId = object.ackId;
915
+ else if (typeof object.ackId === "object")
916
+ message.ackId = new $util.LongBits(object.ackId.low >>> 0, object.ackId.high >>> 0).toNumber(true);
917
+ return message;
918
+ };
919
+
920
+ /**
921
+ * Creates a plain object from an EventMessage message. Also converts values to other types if specified.
922
+ * @function toObject
923
+ * @memberof UpstreamMessage.EventMessage
924
+ * @static
925
+ * @param {UpstreamMessage.EventMessage} message EventMessage
926
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
927
+ * @returns {Object.<string,*>} Plain object
928
+ */
929
+ EventMessage.toObject = function toObject(message, options) {
930
+ if (!options)
931
+ options = {};
932
+ let object = {};
933
+ if (options.defaults) {
934
+ object.event = "";
935
+ object.data = null;
936
+ }
937
+ if (message.event != null && message.hasOwnProperty("event"))
938
+ object.event = message.event;
939
+ if (message.data != null && message.hasOwnProperty("data"))
940
+ object.data = $root.MessageData.toObject(message.data, options);
941
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
942
+ if (typeof message.ackId === "number")
943
+ object.ackId = options.longs === String ? String(message.ackId) : message.ackId;
944
+ else
945
+ object.ackId = options.longs === String ? $util.Long.prototype.toString.call(message.ackId) : options.longs === Number ? new $util.LongBits(message.ackId.low >>> 0, message.ackId.high >>> 0).toNumber(true) : message.ackId;
946
+ if (options.oneofs)
947
+ object._ackId = "ackId";
948
+ }
949
+ return object;
950
+ };
951
+
952
+ /**
953
+ * Converts this EventMessage to JSON.
954
+ * @function toJSON
955
+ * @memberof UpstreamMessage.EventMessage
956
+ * @instance
957
+ * @returns {Object.<string,*>} JSON object
958
+ */
959
+ EventMessage.prototype.toJSON = function toJSON() {
960
+ return this.constructor.toObject(this, undefined);
961
+ };
962
+
963
+ /**
964
+ * Gets the default type url for EventMessage
965
+ * @function getTypeUrl
966
+ * @memberof UpstreamMessage.EventMessage
967
+ * @static
968
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
969
+ * @returns {string} The default type url
970
+ */
971
+ EventMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
972
+ if (typeUrlPrefix === undefined) {
973
+ typeUrlPrefix = "type.googleapis.com";
974
+ }
975
+ return typeUrlPrefix + "/UpstreamMessage.EventMessage";
976
+ };
977
+
978
+ return EventMessage;
979
+ })();
980
+
981
+ UpstreamMessage.JoinGroupMessage = (function() {
982
+
983
+ /**
984
+ * Properties of a JoinGroupMessage.
985
+ * @memberof UpstreamMessage
986
+ * @interface IJoinGroupMessage
987
+ * @property {string|null} [group] JoinGroupMessage group
988
+ * @property {number|Long|null} [ackId] JoinGroupMessage ackId
989
+ */
990
+
991
+ /**
992
+ * Constructs a new JoinGroupMessage.
993
+ * @memberof UpstreamMessage
994
+ * @classdesc Represents a JoinGroupMessage.
995
+ * @implements IJoinGroupMessage
996
+ * @constructor
997
+ * @param {UpstreamMessage.IJoinGroupMessage=} [properties] Properties to set
998
+ */
999
+ function JoinGroupMessage(properties) {
1000
+ if (properties)
1001
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1002
+ if (properties[keys[i]] != null)
1003
+ this[keys[i]] = properties[keys[i]];
1004
+ }
1005
+
1006
+ /**
1007
+ * JoinGroupMessage group.
1008
+ * @member {string} group
1009
+ * @memberof UpstreamMessage.JoinGroupMessage
1010
+ * @instance
1011
+ */
1012
+ JoinGroupMessage.prototype.group = "";
1013
+
1014
+ /**
1015
+ * JoinGroupMessage ackId.
1016
+ * @member {number|Long|null|undefined} ackId
1017
+ * @memberof UpstreamMessage.JoinGroupMessage
1018
+ * @instance
1019
+ */
1020
+ JoinGroupMessage.prototype.ackId = null;
1021
+
1022
+ // OneOf field names bound to virtual getters and setters
1023
+ let $oneOfFields;
1024
+
1025
+ /**
1026
+ * JoinGroupMessage _ackId.
1027
+ * @member {"ackId"|undefined} _ackId
1028
+ * @memberof UpstreamMessage.JoinGroupMessage
1029
+ * @instance
1030
+ */
1031
+ Object.defineProperty(JoinGroupMessage.prototype, "_ackId", {
1032
+ get: $util.oneOfGetter($oneOfFields = ["ackId"]),
1033
+ set: $util.oneOfSetter($oneOfFields)
1034
+ });
1035
+
1036
+ /**
1037
+ * Creates a new JoinGroupMessage instance using the specified properties.
1038
+ * @function create
1039
+ * @memberof UpstreamMessage.JoinGroupMessage
1040
+ * @static
1041
+ * @param {UpstreamMessage.IJoinGroupMessage=} [properties] Properties to set
1042
+ * @returns {UpstreamMessage.JoinGroupMessage} JoinGroupMessage instance
1043
+ */
1044
+ JoinGroupMessage.create = function create(properties) {
1045
+ return new JoinGroupMessage(properties);
1046
+ };
1047
+
1048
+ /**
1049
+ * Encodes the specified JoinGroupMessage message. Does not implicitly {@link UpstreamMessage.JoinGroupMessage.verify|verify} messages.
1050
+ * @function encode
1051
+ * @memberof UpstreamMessage.JoinGroupMessage
1052
+ * @static
1053
+ * @param {UpstreamMessage.IJoinGroupMessage} message JoinGroupMessage message or plain object to encode
1054
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1055
+ * @returns {$protobuf.Writer} Writer
1056
+ */
1057
+ JoinGroupMessage.encode = function encode(message, writer) {
1058
+ if (!writer)
1059
+ writer = $Writer.create();
1060
+ if (message.group != null && Object.hasOwnProperty.call(message, "group"))
1061
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.group);
1062
+ if (message.ackId != null && Object.hasOwnProperty.call(message, "ackId"))
1063
+ writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.ackId);
1064
+ return writer;
1065
+ };
1066
+
1067
+ /**
1068
+ * Encodes the specified JoinGroupMessage message, length delimited. Does not implicitly {@link UpstreamMessage.JoinGroupMessage.verify|verify} messages.
1069
+ * @function encodeDelimited
1070
+ * @memberof UpstreamMessage.JoinGroupMessage
1071
+ * @static
1072
+ * @param {UpstreamMessage.IJoinGroupMessage} message JoinGroupMessage message or plain object to encode
1073
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1074
+ * @returns {$protobuf.Writer} Writer
1075
+ */
1076
+ JoinGroupMessage.encodeDelimited = function encodeDelimited(message, writer) {
1077
+ return this.encode(message, writer).ldelim();
1078
+ };
1079
+
1080
+ /**
1081
+ * Decodes a JoinGroupMessage message from the specified reader or buffer.
1082
+ * @function decode
1083
+ * @memberof UpstreamMessage.JoinGroupMessage
1084
+ * @static
1085
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1086
+ * @param {number} [length] Message length if known beforehand
1087
+ * @returns {UpstreamMessage.JoinGroupMessage} JoinGroupMessage
1088
+ * @throws {Error} If the payload is not a reader or valid buffer
1089
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1090
+ */
1091
+ JoinGroupMessage.decode = function decode(reader, length) {
1092
+ if (!(reader instanceof $Reader))
1093
+ reader = $Reader.create(reader);
1094
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage.JoinGroupMessage();
1095
+ while (reader.pos < end) {
1096
+ let tag = reader.uint32();
1097
+ switch (tag >>> 3) {
1098
+ case 1: {
1099
+ message.group = reader.string();
1100
+ break;
1101
+ }
1102
+ case 2: {
1103
+ message.ackId = reader.uint64();
1104
+ break;
1105
+ }
1106
+ default:
1107
+ reader.skipType(tag & 7);
1108
+ break;
1109
+ }
1110
+ }
1111
+ return message;
1112
+ };
1113
+
1114
+ /**
1115
+ * Decodes a JoinGroupMessage message from the specified reader or buffer, length delimited.
1116
+ * @function decodeDelimited
1117
+ * @memberof UpstreamMessage.JoinGroupMessage
1118
+ * @static
1119
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1120
+ * @returns {UpstreamMessage.JoinGroupMessage} JoinGroupMessage
1121
+ * @throws {Error} If the payload is not a reader or valid buffer
1122
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1123
+ */
1124
+ JoinGroupMessage.decodeDelimited = function decodeDelimited(reader) {
1125
+ if (!(reader instanceof $Reader))
1126
+ reader = new $Reader(reader);
1127
+ return this.decode(reader, reader.uint32());
1128
+ };
1129
+
1130
+ /**
1131
+ * Verifies a JoinGroupMessage message.
1132
+ * @function verify
1133
+ * @memberof UpstreamMessage.JoinGroupMessage
1134
+ * @static
1135
+ * @param {Object.<string,*>} message Plain object to verify
1136
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
1137
+ */
1138
+ JoinGroupMessage.verify = function verify(message) {
1139
+ if (typeof message !== "object" || message === null)
1140
+ return "object expected";
1141
+ if (message.group != null && message.hasOwnProperty("group"))
1142
+ if (!$util.isString(message.group))
1143
+ return "group: string expected";
1144
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
1145
+ if (!$util.isInteger(message.ackId) && !(message.ackId && $util.isInteger(message.ackId.low) && $util.isInteger(message.ackId.high)))
1146
+ return "ackId: integer|Long expected";
1147
+ }
1148
+ return null;
1149
+ };
1150
+
1151
+ /**
1152
+ * Creates a JoinGroupMessage message from a plain object. Also converts values to their respective internal types.
1153
+ * @function fromObject
1154
+ * @memberof UpstreamMessage.JoinGroupMessage
1155
+ * @static
1156
+ * @param {Object.<string,*>} object Plain object
1157
+ * @returns {UpstreamMessage.JoinGroupMessage} JoinGroupMessage
1158
+ */
1159
+ JoinGroupMessage.fromObject = function fromObject(object) {
1160
+ if (object instanceof $root.UpstreamMessage.JoinGroupMessage)
1161
+ return object;
1162
+ let message = new $root.UpstreamMessage.JoinGroupMessage();
1163
+ if (object.group != null)
1164
+ message.group = String(object.group);
1165
+ if (object.ackId != null)
1166
+ if ($util.Long)
1167
+ (message.ackId = $util.Long.fromValue(object.ackId)).unsigned = true;
1168
+ else if (typeof object.ackId === "string")
1169
+ message.ackId = parseInt(object.ackId, 10);
1170
+ else if (typeof object.ackId === "number")
1171
+ message.ackId = object.ackId;
1172
+ else if (typeof object.ackId === "object")
1173
+ message.ackId = new $util.LongBits(object.ackId.low >>> 0, object.ackId.high >>> 0).toNumber(true);
1174
+ return message;
1175
+ };
1176
+
1177
+ /**
1178
+ * Creates a plain object from a JoinGroupMessage message. Also converts values to other types if specified.
1179
+ * @function toObject
1180
+ * @memberof UpstreamMessage.JoinGroupMessage
1181
+ * @static
1182
+ * @param {UpstreamMessage.JoinGroupMessage} message JoinGroupMessage
1183
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1184
+ * @returns {Object.<string,*>} Plain object
1185
+ */
1186
+ JoinGroupMessage.toObject = function toObject(message, options) {
1187
+ if (!options)
1188
+ options = {};
1189
+ let object = {};
1190
+ if (options.defaults)
1191
+ object.group = "";
1192
+ if (message.group != null && message.hasOwnProperty("group"))
1193
+ object.group = message.group;
1194
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
1195
+ if (typeof message.ackId === "number")
1196
+ object.ackId = options.longs === String ? String(message.ackId) : message.ackId;
1197
+ else
1198
+ object.ackId = options.longs === String ? $util.Long.prototype.toString.call(message.ackId) : options.longs === Number ? new $util.LongBits(message.ackId.low >>> 0, message.ackId.high >>> 0).toNumber(true) : message.ackId;
1199
+ if (options.oneofs)
1200
+ object._ackId = "ackId";
1201
+ }
1202
+ return object;
1203
+ };
1204
+
1205
+ /**
1206
+ * Converts this JoinGroupMessage to JSON.
1207
+ * @function toJSON
1208
+ * @memberof UpstreamMessage.JoinGroupMessage
1209
+ * @instance
1210
+ * @returns {Object.<string,*>} JSON object
1211
+ */
1212
+ JoinGroupMessage.prototype.toJSON = function toJSON() {
1213
+ return this.constructor.toObject(this, undefined);
1214
+ };
1215
+
1216
+ /**
1217
+ * Gets the default type url for JoinGroupMessage
1218
+ * @function getTypeUrl
1219
+ * @memberof UpstreamMessage.JoinGroupMessage
1220
+ * @static
1221
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1222
+ * @returns {string} The default type url
1223
+ */
1224
+ JoinGroupMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1225
+ if (typeUrlPrefix === undefined) {
1226
+ typeUrlPrefix = "type.googleapis.com";
1227
+ }
1228
+ return typeUrlPrefix + "/UpstreamMessage.JoinGroupMessage";
1229
+ };
1230
+
1231
+ return JoinGroupMessage;
1232
+ })();
1233
+
1234
+ UpstreamMessage.LeaveGroupMessage = (function() {
1235
+
1236
+ /**
1237
+ * Properties of a LeaveGroupMessage.
1238
+ * @memberof UpstreamMessage
1239
+ * @interface ILeaveGroupMessage
1240
+ * @property {string|null} [group] LeaveGroupMessage group
1241
+ * @property {number|Long|null} [ackId] LeaveGroupMessage ackId
1242
+ */
1243
+
1244
+ /**
1245
+ * Constructs a new LeaveGroupMessage.
1246
+ * @memberof UpstreamMessage
1247
+ * @classdesc Represents a LeaveGroupMessage.
1248
+ * @implements ILeaveGroupMessage
1249
+ * @constructor
1250
+ * @param {UpstreamMessage.ILeaveGroupMessage=} [properties] Properties to set
1251
+ */
1252
+ function LeaveGroupMessage(properties) {
1253
+ if (properties)
1254
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1255
+ if (properties[keys[i]] != null)
1256
+ this[keys[i]] = properties[keys[i]];
1257
+ }
1258
+
1259
+ /**
1260
+ * LeaveGroupMessage group.
1261
+ * @member {string} group
1262
+ * @memberof UpstreamMessage.LeaveGroupMessage
1263
+ * @instance
1264
+ */
1265
+ LeaveGroupMessage.prototype.group = "";
1266
+
1267
+ /**
1268
+ * LeaveGroupMessage ackId.
1269
+ * @member {number|Long|null|undefined} ackId
1270
+ * @memberof UpstreamMessage.LeaveGroupMessage
1271
+ * @instance
1272
+ */
1273
+ LeaveGroupMessage.prototype.ackId = null;
1274
+
1275
+ // OneOf field names bound to virtual getters and setters
1276
+ let $oneOfFields;
1277
+
1278
+ /**
1279
+ * LeaveGroupMessage _ackId.
1280
+ * @member {"ackId"|undefined} _ackId
1281
+ * @memberof UpstreamMessage.LeaveGroupMessage
1282
+ * @instance
1283
+ */
1284
+ Object.defineProperty(LeaveGroupMessage.prototype, "_ackId", {
1285
+ get: $util.oneOfGetter($oneOfFields = ["ackId"]),
1286
+ set: $util.oneOfSetter($oneOfFields)
1287
+ });
1288
+
1289
+ /**
1290
+ * Creates a new LeaveGroupMessage instance using the specified properties.
1291
+ * @function create
1292
+ * @memberof UpstreamMessage.LeaveGroupMessage
1293
+ * @static
1294
+ * @param {UpstreamMessage.ILeaveGroupMessage=} [properties] Properties to set
1295
+ * @returns {UpstreamMessage.LeaveGroupMessage} LeaveGroupMessage instance
1296
+ */
1297
+ LeaveGroupMessage.create = function create(properties) {
1298
+ return new LeaveGroupMessage(properties);
1299
+ };
1300
+
1301
+ /**
1302
+ * Encodes the specified LeaveGroupMessage message. Does not implicitly {@link UpstreamMessage.LeaveGroupMessage.verify|verify} messages.
1303
+ * @function encode
1304
+ * @memberof UpstreamMessage.LeaveGroupMessage
1305
+ * @static
1306
+ * @param {UpstreamMessage.ILeaveGroupMessage} message LeaveGroupMessage message or plain object to encode
1307
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1308
+ * @returns {$protobuf.Writer} Writer
1309
+ */
1310
+ LeaveGroupMessage.encode = function encode(message, writer) {
1311
+ if (!writer)
1312
+ writer = $Writer.create();
1313
+ if (message.group != null && Object.hasOwnProperty.call(message, "group"))
1314
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.group);
1315
+ if (message.ackId != null && Object.hasOwnProperty.call(message, "ackId"))
1316
+ writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.ackId);
1317
+ return writer;
1318
+ };
1319
+
1320
+ /**
1321
+ * Encodes the specified LeaveGroupMessage message, length delimited. Does not implicitly {@link UpstreamMessage.LeaveGroupMessage.verify|verify} messages.
1322
+ * @function encodeDelimited
1323
+ * @memberof UpstreamMessage.LeaveGroupMessage
1324
+ * @static
1325
+ * @param {UpstreamMessage.ILeaveGroupMessage} message LeaveGroupMessage message or plain object to encode
1326
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1327
+ * @returns {$protobuf.Writer} Writer
1328
+ */
1329
+ LeaveGroupMessage.encodeDelimited = function encodeDelimited(message, writer) {
1330
+ return this.encode(message, writer).ldelim();
1331
+ };
1332
+
1333
+ /**
1334
+ * Decodes a LeaveGroupMessage message from the specified reader or buffer.
1335
+ * @function decode
1336
+ * @memberof UpstreamMessage.LeaveGroupMessage
1337
+ * @static
1338
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1339
+ * @param {number} [length] Message length if known beforehand
1340
+ * @returns {UpstreamMessage.LeaveGroupMessage} LeaveGroupMessage
1341
+ * @throws {Error} If the payload is not a reader or valid buffer
1342
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1343
+ */
1344
+ LeaveGroupMessage.decode = function decode(reader, length) {
1345
+ if (!(reader instanceof $Reader))
1346
+ reader = $Reader.create(reader);
1347
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage.LeaveGroupMessage();
1348
+ while (reader.pos < end) {
1349
+ let tag = reader.uint32();
1350
+ switch (tag >>> 3) {
1351
+ case 1: {
1352
+ message.group = reader.string();
1353
+ break;
1354
+ }
1355
+ case 2: {
1356
+ message.ackId = reader.uint64();
1357
+ break;
1358
+ }
1359
+ default:
1360
+ reader.skipType(tag & 7);
1361
+ break;
1362
+ }
1363
+ }
1364
+ return message;
1365
+ };
1366
+
1367
+ /**
1368
+ * Decodes a LeaveGroupMessage message from the specified reader or buffer, length delimited.
1369
+ * @function decodeDelimited
1370
+ * @memberof UpstreamMessage.LeaveGroupMessage
1371
+ * @static
1372
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1373
+ * @returns {UpstreamMessage.LeaveGroupMessage} LeaveGroupMessage
1374
+ * @throws {Error} If the payload is not a reader or valid buffer
1375
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1376
+ */
1377
+ LeaveGroupMessage.decodeDelimited = function decodeDelimited(reader) {
1378
+ if (!(reader instanceof $Reader))
1379
+ reader = new $Reader(reader);
1380
+ return this.decode(reader, reader.uint32());
1381
+ };
1382
+
1383
+ /**
1384
+ * Verifies a LeaveGroupMessage message.
1385
+ * @function verify
1386
+ * @memberof UpstreamMessage.LeaveGroupMessage
1387
+ * @static
1388
+ * @param {Object.<string,*>} message Plain object to verify
1389
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
1390
+ */
1391
+ LeaveGroupMessage.verify = function verify(message) {
1392
+ if (typeof message !== "object" || message === null)
1393
+ return "object expected";
1394
+ if (message.group != null && message.hasOwnProperty("group"))
1395
+ if (!$util.isString(message.group))
1396
+ return "group: string expected";
1397
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
1398
+ if (!$util.isInteger(message.ackId) && !(message.ackId && $util.isInteger(message.ackId.low) && $util.isInteger(message.ackId.high)))
1399
+ return "ackId: integer|Long expected";
1400
+ }
1401
+ return null;
1402
+ };
1403
+
1404
+ /**
1405
+ * Creates a LeaveGroupMessage message from a plain object. Also converts values to their respective internal types.
1406
+ * @function fromObject
1407
+ * @memberof UpstreamMessage.LeaveGroupMessage
1408
+ * @static
1409
+ * @param {Object.<string,*>} object Plain object
1410
+ * @returns {UpstreamMessage.LeaveGroupMessage} LeaveGroupMessage
1411
+ */
1412
+ LeaveGroupMessage.fromObject = function fromObject(object) {
1413
+ if (object instanceof $root.UpstreamMessage.LeaveGroupMessage)
1414
+ return object;
1415
+ let message = new $root.UpstreamMessage.LeaveGroupMessage();
1416
+ if (object.group != null)
1417
+ message.group = String(object.group);
1418
+ if (object.ackId != null)
1419
+ if ($util.Long)
1420
+ (message.ackId = $util.Long.fromValue(object.ackId)).unsigned = true;
1421
+ else if (typeof object.ackId === "string")
1422
+ message.ackId = parseInt(object.ackId, 10);
1423
+ else if (typeof object.ackId === "number")
1424
+ message.ackId = object.ackId;
1425
+ else if (typeof object.ackId === "object")
1426
+ message.ackId = new $util.LongBits(object.ackId.low >>> 0, object.ackId.high >>> 0).toNumber(true);
1427
+ return message;
1428
+ };
1429
+
1430
+ /**
1431
+ * Creates a plain object from a LeaveGroupMessage message. Also converts values to other types if specified.
1432
+ * @function toObject
1433
+ * @memberof UpstreamMessage.LeaveGroupMessage
1434
+ * @static
1435
+ * @param {UpstreamMessage.LeaveGroupMessage} message LeaveGroupMessage
1436
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1437
+ * @returns {Object.<string,*>} Plain object
1438
+ */
1439
+ LeaveGroupMessage.toObject = function toObject(message, options) {
1440
+ if (!options)
1441
+ options = {};
1442
+ let object = {};
1443
+ if (options.defaults)
1444
+ object.group = "";
1445
+ if (message.group != null && message.hasOwnProperty("group"))
1446
+ object.group = message.group;
1447
+ if (message.ackId != null && message.hasOwnProperty("ackId")) {
1448
+ if (typeof message.ackId === "number")
1449
+ object.ackId = options.longs === String ? String(message.ackId) : message.ackId;
1450
+ else
1451
+ object.ackId = options.longs === String ? $util.Long.prototype.toString.call(message.ackId) : options.longs === Number ? new $util.LongBits(message.ackId.low >>> 0, message.ackId.high >>> 0).toNumber(true) : message.ackId;
1452
+ if (options.oneofs)
1453
+ object._ackId = "ackId";
1454
+ }
1455
+ return object;
1456
+ };
1457
+
1458
+ /**
1459
+ * Converts this LeaveGroupMessage to JSON.
1460
+ * @function toJSON
1461
+ * @memberof UpstreamMessage.LeaveGroupMessage
1462
+ * @instance
1463
+ * @returns {Object.<string,*>} JSON object
1464
+ */
1465
+ LeaveGroupMessage.prototype.toJSON = function toJSON() {
1466
+ return this.constructor.toObject(this, undefined);
1467
+ };
1468
+
1469
+ /**
1470
+ * Gets the default type url for LeaveGroupMessage
1471
+ * @function getTypeUrl
1472
+ * @memberof UpstreamMessage.LeaveGroupMessage
1473
+ * @static
1474
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1475
+ * @returns {string} The default type url
1476
+ */
1477
+ LeaveGroupMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1478
+ if (typeUrlPrefix === undefined) {
1479
+ typeUrlPrefix = "type.googleapis.com";
1480
+ }
1481
+ return typeUrlPrefix + "/UpstreamMessage.LeaveGroupMessage";
1482
+ };
1483
+
1484
+ return LeaveGroupMessage;
1485
+ })();
1486
+
1487
+ UpstreamMessage.SequenceAckMessage = (function() {
1488
+
1489
+ /**
1490
+ * Properties of a SequenceAckMessage.
1491
+ * @memberof UpstreamMessage
1492
+ * @interface ISequenceAckMessage
1493
+ * @property {number|Long|null} [sequenceId] SequenceAckMessage sequenceId
1494
+ */
1495
+
1496
+ /**
1497
+ * Constructs a new SequenceAckMessage.
1498
+ * @memberof UpstreamMessage
1499
+ * @classdesc Represents a SequenceAckMessage.
1500
+ * @implements ISequenceAckMessage
1501
+ * @constructor
1502
+ * @param {UpstreamMessage.ISequenceAckMessage=} [properties] Properties to set
1503
+ */
1504
+ function SequenceAckMessage(properties) {
1505
+ if (properties)
1506
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1507
+ if (properties[keys[i]] != null)
1508
+ this[keys[i]] = properties[keys[i]];
1509
+ }
1510
+
1511
+ /**
1512
+ * SequenceAckMessage sequenceId.
1513
+ * @member {number|Long} sequenceId
1514
+ * @memberof UpstreamMessage.SequenceAckMessage
1515
+ * @instance
1516
+ */
1517
+ SequenceAckMessage.prototype.sequenceId = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
1518
+
1519
+ /**
1520
+ * Creates a new SequenceAckMessage instance using the specified properties.
1521
+ * @function create
1522
+ * @memberof UpstreamMessage.SequenceAckMessage
1523
+ * @static
1524
+ * @param {UpstreamMessage.ISequenceAckMessage=} [properties] Properties to set
1525
+ * @returns {UpstreamMessage.SequenceAckMessage} SequenceAckMessage instance
1526
+ */
1527
+ SequenceAckMessage.create = function create(properties) {
1528
+ return new SequenceAckMessage(properties);
1529
+ };
1530
+
1531
+ /**
1532
+ * Encodes the specified SequenceAckMessage message. Does not implicitly {@link UpstreamMessage.SequenceAckMessage.verify|verify} messages.
1533
+ * @function encode
1534
+ * @memberof UpstreamMessage.SequenceAckMessage
1535
+ * @static
1536
+ * @param {UpstreamMessage.ISequenceAckMessage} message SequenceAckMessage message or plain object to encode
1537
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1538
+ * @returns {$protobuf.Writer} Writer
1539
+ */
1540
+ SequenceAckMessage.encode = function encode(message, writer) {
1541
+ if (!writer)
1542
+ writer = $Writer.create();
1543
+ if (message.sequenceId != null && Object.hasOwnProperty.call(message, "sequenceId"))
1544
+ writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.sequenceId);
1545
+ return writer;
1546
+ };
1547
+
1548
+ /**
1549
+ * Encodes the specified SequenceAckMessage message, length delimited. Does not implicitly {@link UpstreamMessage.SequenceAckMessage.verify|verify} messages.
1550
+ * @function encodeDelimited
1551
+ * @memberof UpstreamMessage.SequenceAckMessage
1552
+ * @static
1553
+ * @param {UpstreamMessage.ISequenceAckMessage} message SequenceAckMessage message or plain object to encode
1554
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1555
+ * @returns {$protobuf.Writer} Writer
1556
+ */
1557
+ SequenceAckMessage.encodeDelimited = function encodeDelimited(message, writer) {
1558
+ return this.encode(message, writer).ldelim();
1559
+ };
1560
+
1561
+ /**
1562
+ * Decodes a SequenceAckMessage message from the specified reader or buffer.
1563
+ * @function decode
1564
+ * @memberof UpstreamMessage.SequenceAckMessage
1565
+ * @static
1566
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1567
+ * @param {number} [length] Message length if known beforehand
1568
+ * @returns {UpstreamMessage.SequenceAckMessage} SequenceAckMessage
1569
+ * @throws {Error} If the payload is not a reader or valid buffer
1570
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1571
+ */
1572
+ SequenceAckMessage.decode = function decode(reader, length) {
1573
+ if (!(reader instanceof $Reader))
1574
+ reader = $Reader.create(reader);
1575
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.UpstreamMessage.SequenceAckMessage();
1576
+ while (reader.pos < end) {
1577
+ let tag = reader.uint32();
1578
+ switch (tag >>> 3) {
1579
+ case 1: {
1580
+ message.sequenceId = reader.uint64();
1581
+ break;
1582
+ }
1583
+ default:
1584
+ reader.skipType(tag & 7);
1585
+ break;
1586
+ }
1587
+ }
1588
+ return message;
1589
+ };
1590
+
1591
+ /**
1592
+ * Decodes a SequenceAckMessage message from the specified reader or buffer, length delimited.
1593
+ * @function decodeDelimited
1594
+ * @memberof UpstreamMessage.SequenceAckMessage
1595
+ * @static
1596
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1597
+ * @returns {UpstreamMessage.SequenceAckMessage} SequenceAckMessage
1598
+ * @throws {Error} If the payload is not a reader or valid buffer
1599
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1600
+ */
1601
+ SequenceAckMessage.decodeDelimited = function decodeDelimited(reader) {
1602
+ if (!(reader instanceof $Reader))
1603
+ reader = new $Reader(reader);
1604
+ return this.decode(reader, reader.uint32());
1605
+ };
1606
+
1607
+ /**
1608
+ * Verifies a SequenceAckMessage message.
1609
+ * @function verify
1610
+ * @memberof UpstreamMessage.SequenceAckMessage
1611
+ * @static
1612
+ * @param {Object.<string,*>} message Plain object to verify
1613
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
1614
+ */
1615
+ SequenceAckMessage.verify = function verify(message) {
1616
+ if (typeof message !== "object" || message === null)
1617
+ return "object expected";
1618
+ if (message.sequenceId != null && message.hasOwnProperty("sequenceId"))
1619
+ if (!$util.isInteger(message.sequenceId) && !(message.sequenceId && $util.isInteger(message.sequenceId.low) && $util.isInteger(message.sequenceId.high)))
1620
+ return "sequenceId: integer|Long expected";
1621
+ return null;
1622
+ };
1623
+
1624
+ /**
1625
+ * Creates a SequenceAckMessage message from a plain object. Also converts values to their respective internal types.
1626
+ * @function fromObject
1627
+ * @memberof UpstreamMessage.SequenceAckMessage
1628
+ * @static
1629
+ * @param {Object.<string,*>} object Plain object
1630
+ * @returns {UpstreamMessage.SequenceAckMessage} SequenceAckMessage
1631
+ */
1632
+ SequenceAckMessage.fromObject = function fromObject(object) {
1633
+ if (object instanceof $root.UpstreamMessage.SequenceAckMessage)
1634
+ return object;
1635
+ let message = new $root.UpstreamMessage.SequenceAckMessage();
1636
+ if (object.sequenceId != null)
1637
+ if ($util.Long)
1638
+ (message.sequenceId = $util.Long.fromValue(object.sequenceId)).unsigned = true;
1639
+ else if (typeof object.sequenceId === "string")
1640
+ message.sequenceId = parseInt(object.sequenceId, 10);
1641
+ else if (typeof object.sequenceId === "number")
1642
+ message.sequenceId = object.sequenceId;
1643
+ else if (typeof object.sequenceId === "object")
1644
+ message.sequenceId = new $util.LongBits(object.sequenceId.low >>> 0, object.sequenceId.high >>> 0).toNumber(true);
1645
+ return message;
1646
+ };
1647
+
1648
+ /**
1649
+ * Creates a plain object from a SequenceAckMessage message. Also converts values to other types if specified.
1650
+ * @function toObject
1651
+ * @memberof UpstreamMessage.SequenceAckMessage
1652
+ * @static
1653
+ * @param {UpstreamMessage.SequenceAckMessage} message SequenceAckMessage
1654
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1655
+ * @returns {Object.<string,*>} Plain object
1656
+ */
1657
+ SequenceAckMessage.toObject = function toObject(message, options) {
1658
+ if (!options)
1659
+ options = {};
1660
+ let object = {};
1661
+ if (options.defaults)
1662
+ if ($util.Long) {
1663
+ let long = new $util.Long(0, 0, true);
1664
+ object.sequenceId = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
1665
+ } else
1666
+ object.sequenceId = options.longs === String ? "0" : 0;
1667
+ if (message.sequenceId != null && message.hasOwnProperty("sequenceId"))
1668
+ if (typeof message.sequenceId === "number")
1669
+ object.sequenceId = options.longs === String ? String(message.sequenceId) : message.sequenceId;
1670
+ else
1671
+ object.sequenceId = options.longs === String ? $util.Long.prototype.toString.call(message.sequenceId) : options.longs === Number ? new $util.LongBits(message.sequenceId.low >>> 0, message.sequenceId.high >>> 0).toNumber(true) : message.sequenceId;
1672
+ return object;
1673
+ };
1674
+
1675
+ /**
1676
+ * Converts this SequenceAckMessage to JSON.
1677
+ * @function toJSON
1678
+ * @memberof UpstreamMessage.SequenceAckMessage
1679
+ * @instance
1680
+ * @returns {Object.<string,*>} JSON object
1681
+ */
1682
+ SequenceAckMessage.prototype.toJSON = function toJSON() {
1683
+ return this.constructor.toObject(this, undefined);
1684
+ };
1685
+
1686
+ /**
1687
+ * Gets the default type url for SequenceAckMessage
1688
+ * @function getTypeUrl
1689
+ * @memberof UpstreamMessage.SequenceAckMessage
1690
+ * @static
1691
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1692
+ * @returns {string} The default type url
1693
+ */
1694
+ SequenceAckMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1695
+ if (typeUrlPrefix === undefined) {
1696
+ typeUrlPrefix = "type.googleapis.com";
1697
+ }
1698
+ return typeUrlPrefix + "/UpstreamMessage.SequenceAckMessage";
1699
+ };
1700
+
1701
+ return SequenceAckMessage;
1702
+ })();
1703
+
1704
+ return UpstreamMessage;
1705
+ })();
1706
+
1707
+ const DownstreamMessage = $root.DownstreamMessage = (() => {
1708
+
1709
+ /**
1710
+ * Properties of a DownstreamMessage.
1711
+ * @exports IDownstreamMessage
1712
+ * @interface IDownstreamMessage
1713
+ * @property {DownstreamMessage.IAckMessage|null} [ackMessage] DownstreamMessage ackMessage
1714
+ * @property {DownstreamMessage.IDataMessage|null} [dataMessage] DownstreamMessage dataMessage
1715
+ * @property {DownstreamMessage.ISystemMessage|null} [systemMessage] DownstreamMessage systemMessage
1716
+ */
1717
+
1718
+ /**
1719
+ * Constructs a new DownstreamMessage.
1720
+ * @exports DownstreamMessage
1721
+ * @classdesc Represents a DownstreamMessage.
1722
+ * @implements IDownstreamMessage
1723
+ * @constructor
1724
+ * @param {IDownstreamMessage=} [properties] Properties to set
1725
+ */
1726
+ function DownstreamMessage(properties) {
1727
+ if (properties)
1728
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1729
+ if (properties[keys[i]] != null)
1730
+ this[keys[i]] = properties[keys[i]];
1731
+ }
1732
+
1733
+ /**
1734
+ * DownstreamMessage ackMessage.
1735
+ * @member {DownstreamMessage.IAckMessage|null|undefined} ackMessage
1736
+ * @memberof DownstreamMessage
1737
+ * @instance
1738
+ */
1739
+ DownstreamMessage.prototype.ackMessage = null;
1740
+
1741
+ /**
1742
+ * DownstreamMessage dataMessage.
1743
+ * @member {DownstreamMessage.IDataMessage|null|undefined} dataMessage
1744
+ * @memberof DownstreamMessage
1745
+ * @instance
1746
+ */
1747
+ DownstreamMessage.prototype.dataMessage = null;
1748
+
1749
+ /**
1750
+ * DownstreamMessage systemMessage.
1751
+ * @member {DownstreamMessage.ISystemMessage|null|undefined} systemMessage
1752
+ * @memberof DownstreamMessage
1753
+ * @instance
1754
+ */
1755
+ DownstreamMessage.prototype.systemMessage = null;
1756
+
1757
+ // OneOf field names bound to virtual getters and setters
1758
+ let $oneOfFields;
1759
+
1760
+ /**
1761
+ * DownstreamMessage message.
1762
+ * @member {"ackMessage"|"dataMessage"|"systemMessage"|undefined} message
1763
+ * @memberof DownstreamMessage
1764
+ * @instance
1765
+ */
1766
+ Object.defineProperty(DownstreamMessage.prototype, "message", {
1767
+ get: $util.oneOfGetter($oneOfFields = ["ackMessage", "dataMessage", "systemMessage"]),
1768
+ set: $util.oneOfSetter($oneOfFields)
1769
+ });
1770
+
1771
+ /**
1772
+ * Creates a new DownstreamMessage instance using the specified properties.
1773
+ * @function create
1774
+ * @memberof DownstreamMessage
1775
+ * @static
1776
+ * @param {IDownstreamMessage=} [properties] Properties to set
1777
+ * @returns {DownstreamMessage} DownstreamMessage instance
1778
+ */
1779
+ DownstreamMessage.create = function create(properties) {
1780
+ return new DownstreamMessage(properties);
1781
+ };
1782
+
1783
+ /**
1784
+ * Encodes the specified DownstreamMessage message. Does not implicitly {@link DownstreamMessage.verify|verify} messages.
1785
+ * @function encode
1786
+ * @memberof DownstreamMessage
1787
+ * @static
1788
+ * @param {IDownstreamMessage} message DownstreamMessage message or plain object to encode
1789
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1790
+ * @returns {$protobuf.Writer} Writer
1791
+ */
1792
+ DownstreamMessage.encode = function encode(message, writer) {
1793
+ if (!writer)
1794
+ writer = $Writer.create();
1795
+ if (message.ackMessage != null && Object.hasOwnProperty.call(message, "ackMessage"))
1796
+ $root.DownstreamMessage.AckMessage.encode(message.ackMessage, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
1797
+ if (message.dataMessage != null && Object.hasOwnProperty.call(message, "dataMessage"))
1798
+ $root.DownstreamMessage.DataMessage.encode(message.dataMessage, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
1799
+ if (message.systemMessage != null && Object.hasOwnProperty.call(message, "systemMessage"))
1800
+ $root.DownstreamMessage.SystemMessage.encode(message.systemMessage, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
1801
+ return writer;
1802
+ };
1803
+
1804
+ /**
1805
+ * Encodes the specified DownstreamMessage message, length delimited. Does not implicitly {@link DownstreamMessage.verify|verify} messages.
1806
+ * @function encodeDelimited
1807
+ * @memberof DownstreamMessage
1808
+ * @static
1809
+ * @param {IDownstreamMessage} message DownstreamMessage message or plain object to encode
1810
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1811
+ * @returns {$protobuf.Writer} Writer
1812
+ */
1813
+ DownstreamMessage.encodeDelimited = function encodeDelimited(message, writer) {
1814
+ return this.encode(message, writer).ldelim();
1815
+ };
1816
+
1817
+ /**
1818
+ * Decodes a DownstreamMessage message from the specified reader or buffer.
1819
+ * @function decode
1820
+ * @memberof DownstreamMessage
1821
+ * @static
1822
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1823
+ * @param {number} [length] Message length if known beforehand
1824
+ * @returns {DownstreamMessage} DownstreamMessage
1825
+ * @throws {Error} If the payload is not a reader or valid buffer
1826
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1827
+ */
1828
+ DownstreamMessage.decode = function decode(reader, length) {
1829
+ if (!(reader instanceof $Reader))
1830
+ reader = $Reader.create(reader);
1831
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage();
1832
+ while (reader.pos < end) {
1833
+ let tag = reader.uint32();
1834
+ switch (tag >>> 3) {
1835
+ case 1: {
1836
+ message.ackMessage = $root.DownstreamMessage.AckMessage.decode(reader, reader.uint32());
1837
+ break;
1838
+ }
1839
+ case 2: {
1840
+ message.dataMessage = $root.DownstreamMessage.DataMessage.decode(reader, reader.uint32());
1841
+ break;
1842
+ }
1843
+ case 3: {
1844
+ message.systemMessage = $root.DownstreamMessage.SystemMessage.decode(reader, reader.uint32());
1845
+ break;
1846
+ }
1847
+ default:
1848
+ reader.skipType(tag & 7);
1849
+ break;
1850
+ }
1851
+ }
1852
+ return message;
1853
+ };
1854
+
1855
+ /**
1856
+ * Decodes a DownstreamMessage message from the specified reader or buffer, length delimited.
1857
+ * @function decodeDelimited
1858
+ * @memberof DownstreamMessage
1859
+ * @static
1860
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1861
+ * @returns {DownstreamMessage} DownstreamMessage
1862
+ * @throws {Error} If the payload is not a reader or valid buffer
1863
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1864
+ */
1865
+ DownstreamMessage.decodeDelimited = function decodeDelimited(reader) {
1866
+ if (!(reader instanceof $Reader))
1867
+ reader = new $Reader(reader);
1868
+ return this.decode(reader, reader.uint32());
1869
+ };
1870
+
1871
+ /**
1872
+ * Verifies a DownstreamMessage message.
1873
+ * @function verify
1874
+ * @memberof DownstreamMessage
1875
+ * @static
1876
+ * @param {Object.<string,*>} message Plain object to verify
1877
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
1878
+ */
1879
+ DownstreamMessage.verify = function verify(message) {
1880
+ if (typeof message !== "object" || message === null)
1881
+ return "object expected";
1882
+ let properties = {};
1883
+ if (message.ackMessage != null && message.hasOwnProperty("ackMessage")) {
1884
+ properties.message = 1;
1885
+ {
1886
+ let error = $root.DownstreamMessage.AckMessage.verify(message.ackMessage);
1887
+ if (error)
1888
+ return "ackMessage." + error;
1889
+ }
1890
+ }
1891
+ if (message.dataMessage != null && message.hasOwnProperty("dataMessage")) {
1892
+ if (properties.message === 1)
1893
+ return "message: multiple values";
1894
+ properties.message = 1;
1895
+ {
1896
+ let error = $root.DownstreamMessage.DataMessage.verify(message.dataMessage);
1897
+ if (error)
1898
+ return "dataMessage." + error;
1899
+ }
1900
+ }
1901
+ if (message.systemMessage != null && message.hasOwnProperty("systemMessage")) {
1902
+ if (properties.message === 1)
1903
+ return "message: multiple values";
1904
+ properties.message = 1;
1905
+ {
1906
+ let error = $root.DownstreamMessage.SystemMessage.verify(message.systemMessage);
1907
+ if (error)
1908
+ return "systemMessage." + error;
1909
+ }
1910
+ }
1911
+ return null;
1912
+ };
1913
+
1914
+ /**
1915
+ * Creates a DownstreamMessage message from a plain object. Also converts values to their respective internal types.
1916
+ * @function fromObject
1917
+ * @memberof DownstreamMessage
1918
+ * @static
1919
+ * @param {Object.<string,*>} object Plain object
1920
+ * @returns {DownstreamMessage} DownstreamMessage
1921
+ */
1922
+ DownstreamMessage.fromObject = function fromObject(object) {
1923
+ if (object instanceof $root.DownstreamMessage)
1924
+ return object;
1925
+ let message = new $root.DownstreamMessage();
1926
+ if (object.ackMessage != null) {
1927
+ if (typeof object.ackMessage !== "object")
1928
+ throw TypeError(".DownstreamMessage.ackMessage: object expected");
1929
+ message.ackMessage = $root.DownstreamMessage.AckMessage.fromObject(object.ackMessage);
1930
+ }
1931
+ if (object.dataMessage != null) {
1932
+ if (typeof object.dataMessage !== "object")
1933
+ throw TypeError(".DownstreamMessage.dataMessage: object expected");
1934
+ message.dataMessage = $root.DownstreamMessage.DataMessage.fromObject(object.dataMessage);
1935
+ }
1936
+ if (object.systemMessage != null) {
1937
+ if (typeof object.systemMessage !== "object")
1938
+ throw TypeError(".DownstreamMessage.systemMessage: object expected");
1939
+ message.systemMessage = $root.DownstreamMessage.SystemMessage.fromObject(object.systemMessage);
1940
+ }
1941
+ return message;
1942
+ };
1943
+
1944
+ /**
1945
+ * Creates a plain object from a DownstreamMessage message. Also converts values to other types if specified.
1946
+ * @function toObject
1947
+ * @memberof DownstreamMessage
1948
+ * @static
1949
+ * @param {DownstreamMessage} message DownstreamMessage
1950
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1951
+ * @returns {Object.<string,*>} Plain object
1952
+ */
1953
+ DownstreamMessage.toObject = function toObject(message, options) {
1954
+ if (!options)
1955
+ options = {};
1956
+ let object = {};
1957
+ if (message.ackMessage != null && message.hasOwnProperty("ackMessage")) {
1958
+ object.ackMessage = $root.DownstreamMessage.AckMessage.toObject(message.ackMessage, options);
1959
+ if (options.oneofs)
1960
+ object.message = "ackMessage";
1961
+ }
1962
+ if (message.dataMessage != null && message.hasOwnProperty("dataMessage")) {
1963
+ object.dataMessage = $root.DownstreamMessage.DataMessage.toObject(message.dataMessage, options);
1964
+ if (options.oneofs)
1965
+ object.message = "dataMessage";
1966
+ }
1967
+ if (message.systemMessage != null && message.hasOwnProperty("systemMessage")) {
1968
+ object.systemMessage = $root.DownstreamMessage.SystemMessage.toObject(message.systemMessage, options);
1969
+ if (options.oneofs)
1970
+ object.message = "systemMessage";
1971
+ }
1972
+ return object;
1973
+ };
1974
+
1975
+ /**
1976
+ * Converts this DownstreamMessage to JSON.
1977
+ * @function toJSON
1978
+ * @memberof DownstreamMessage
1979
+ * @instance
1980
+ * @returns {Object.<string,*>} JSON object
1981
+ */
1982
+ DownstreamMessage.prototype.toJSON = function toJSON() {
1983
+ return this.constructor.toObject(this, undefined);
1984
+ };
1985
+
1986
+ /**
1987
+ * Gets the default type url for DownstreamMessage
1988
+ * @function getTypeUrl
1989
+ * @memberof DownstreamMessage
1990
+ * @static
1991
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1992
+ * @returns {string} The default type url
1993
+ */
1994
+ DownstreamMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1995
+ if (typeUrlPrefix === undefined) {
1996
+ typeUrlPrefix = "type.googleapis.com";
1997
+ }
1998
+ return typeUrlPrefix + "/DownstreamMessage";
1999
+ };
2000
+
2001
+ DownstreamMessage.AckMessage = (function() {
2002
+
2003
+ /**
2004
+ * Properties of an AckMessage.
2005
+ * @memberof DownstreamMessage
2006
+ * @interface IAckMessage
2007
+ * @property {number|Long|null} [ackId] AckMessage ackId
2008
+ * @property {boolean|null} [success] AckMessage success
2009
+ * @property {DownstreamMessage.AckMessage.IErrorMessage|null} [error] AckMessage error
2010
+ */
2011
+
2012
+ /**
2013
+ * Constructs a new AckMessage.
2014
+ * @memberof DownstreamMessage
2015
+ * @classdesc Represents an AckMessage.
2016
+ * @implements IAckMessage
2017
+ * @constructor
2018
+ * @param {DownstreamMessage.IAckMessage=} [properties] Properties to set
2019
+ */
2020
+ function AckMessage(properties) {
2021
+ if (properties)
2022
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2023
+ if (properties[keys[i]] != null)
2024
+ this[keys[i]] = properties[keys[i]];
2025
+ }
2026
+
2027
+ /**
2028
+ * AckMessage ackId.
2029
+ * @member {number|Long} ackId
2030
+ * @memberof DownstreamMessage.AckMessage
2031
+ * @instance
2032
+ */
2033
+ AckMessage.prototype.ackId = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
2034
+
2035
+ /**
2036
+ * AckMessage success.
2037
+ * @member {boolean} success
2038
+ * @memberof DownstreamMessage.AckMessage
2039
+ * @instance
2040
+ */
2041
+ AckMessage.prototype.success = false;
2042
+
2043
+ /**
2044
+ * AckMessage error.
2045
+ * @member {DownstreamMessage.AckMessage.IErrorMessage|null|undefined} error
2046
+ * @memberof DownstreamMessage.AckMessage
2047
+ * @instance
2048
+ */
2049
+ AckMessage.prototype.error = null;
2050
+
2051
+ // OneOf field names bound to virtual getters and setters
2052
+ let $oneOfFields;
2053
+
2054
+ /**
2055
+ * AckMessage _error.
2056
+ * @member {"error"|undefined} _error
2057
+ * @memberof DownstreamMessage.AckMessage
2058
+ * @instance
2059
+ */
2060
+ Object.defineProperty(AckMessage.prototype, "_error", {
2061
+ get: $util.oneOfGetter($oneOfFields = ["error"]),
2062
+ set: $util.oneOfSetter($oneOfFields)
2063
+ });
2064
+
2065
+ /**
2066
+ * Creates a new AckMessage instance using the specified properties.
2067
+ * @function create
2068
+ * @memberof DownstreamMessage.AckMessage
2069
+ * @static
2070
+ * @param {DownstreamMessage.IAckMessage=} [properties] Properties to set
2071
+ * @returns {DownstreamMessage.AckMessage} AckMessage instance
2072
+ */
2073
+ AckMessage.create = function create(properties) {
2074
+ return new AckMessage(properties);
2075
+ };
2076
+
2077
+ /**
2078
+ * Encodes the specified AckMessage message. Does not implicitly {@link DownstreamMessage.AckMessage.verify|verify} messages.
2079
+ * @function encode
2080
+ * @memberof DownstreamMessage.AckMessage
2081
+ * @static
2082
+ * @param {DownstreamMessage.IAckMessage} message AckMessage message or plain object to encode
2083
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2084
+ * @returns {$protobuf.Writer} Writer
2085
+ */
2086
+ AckMessage.encode = function encode(message, writer) {
2087
+ if (!writer)
2088
+ writer = $Writer.create();
2089
+ if (message.ackId != null && Object.hasOwnProperty.call(message, "ackId"))
2090
+ writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.ackId);
2091
+ if (message.success != null && Object.hasOwnProperty.call(message, "success"))
2092
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.success);
2093
+ if (message.error != null && Object.hasOwnProperty.call(message, "error"))
2094
+ $root.DownstreamMessage.AckMessage.ErrorMessage.encode(message.error, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
2095
+ return writer;
2096
+ };
2097
+
2098
+ /**
2099
+ * Encodes the specified AckMessage message, length delimited. Does not implicitly {@link DownstreamMessage.AckMessage.verify|verify} messages.
2100
+ * @function encodeDelimited
2101
+ * @memberof DownstreamMessage.AckMessage
2102
+ * @static
2103
+ * @param {DownstreamMessage.IAckMessage} message AckMessage message or plain object to encode
2104
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2105
+ * @returns {$protobuf.Writer} Writer
2106
+ */
2107
+ AckMessage.encodeDelimited = function encodeDelimited(message, writer) {
2108
+ return this.encode(message, writer).ldelim();
2109
+ };
2110
+
2111
+ /**
2112
+ * Decodes an AckMessage message from the specified reader or buffer.
2113
+ * @function decode
2114
+ * @memberof DownstreamMessage.AckMessage
2115
+ * @static
2116
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2117
+ * @param {number} [length] Message length if known beforehand
2118
+ * @returns {DownstreamMessage.AckMessage} AckMessage
2119
+ * @throws {Error} If the payload is not a reader or valid buffer
2120
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2121
+ */
2122
+ AckMessage.decode = function decode(reader, length) {
2123
+ if (!(reader instanceof $Reader))
2124
+ reader = $Reader.create(reader);
2125
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.AckMessage();
2126
+ while (reader.pos < end) {
2127
+ let tag = reader.uint32();
2128
+ switch (tag >>> 3) {
2129
+ case 1: {
2130
+ message.ackId = reader.uint64();
2131
+ break;
2132
+ }
2133
+ case 2: {
2134
+ message.success = reader.bool();
2135
+ break;
2136
+ }
2137
+ case 3: {
2138
+ message.error = $root.DownstreamMessage.AckMessage.ErrorMessage.decode(reader, reader.uint32());
2139
+ break;
2140
+ }
2141
+ default:
2142
+ reader.skipType(tag & 7);
2143
+ break;
2144
+ }
2145
+ }
2146
+ return message;
2147
+ };
2148
+
2149
+ /**
2150
+ * Decodes an AckMessage message from the specified reader or buffer, length delimited.
2151
+ * @function decodeDelimited
2152
+ * @memberof DownstreamMessage.AckMessage
2153
+ * @static
2154
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2155
+ * @returns {DownstreamMessage.AckMessage} AckMessage
2156
+ * @throws {Error} If the payload is not a reader or valid buffer
2157
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2158
+ */
2159
+ AckMessage.decodeDelimited = function decodeDelimited(reader) {
2160
+ if (!(reader instanceof $Reader))
2161
+ reader = new $Reader(reader);
2162
+ return this.decode(reader, reader.uint32());
2163
+ };
2164
+
2165
+ /**
2166
+ * Verifies an AckMessage message.
2167
+ * @function verify
2168
+ * @memberof DownstreamMessage.AckMessage
2169
+ * @static
2170
+ * @param {Object.<string,*>} message Plain object to verify
2171
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
2172
+ */
2173
+ AckMessage.verify = function verify(message) {
2174
+ if (typeof message !== "object" || message === null)
2175
+ return "object expected";
2176
+ if (message.ackId != null && message.hasOwnProperty("ackId"))
2177
+ if (!$util.isInteger(message.ackId) && !(message.ackId && $util.isInteger(message.ackId.low) && $util.isInteger(message.ackId.high)))
2178
+ return "ackId: integer|Long expected";
2179
+ if (message.success != null && message.hasOwnProperty("success"))
2180
+ if (typeof message.success !== "boolean")
2181
+ return "success: boolean expected";
2182
+ if (message.error != null && message.hasOwnProperty("error")) {
2183
+ {
2184
+ let error = $root.DownstreamMessage.AckMessage.ErrorMessage.verify(message.error);
2185
+ if (error)
2186
+ return "error." + error;
2187
+ }
2188
+ }
2189
+ return null;
2190
+ };
2191
+
2192
+ /**
2193
+ * Creates an AckMessage message from a plain object. Also converts values to their respective internal types.
2194
+ * @function fromObject
2195
+ * @memberof DownstreamMessage.AckMessage
2196
+ * @static
2197
+ * @param {Object.<string,*>} object Plain object
2198
+ * @returns {DownstreamMessage.AckMessage} AckMessage
2199
+ */
2200
+ AckMessage.fromObject = function fromObject(object) {
2201
+ if (object instanceof $root.DownstreamMessage.AckMessage)
2202
+ return object;
2203
+ let message = new $root.DownstreamMessage.AckMessage();
2204
+ if (object.ackId != null)
2205
+ if ($util.Long)
2206
+ (message.ackId = $util.Long.fromValue(object.ackId)).unsigned = true;
2207
+ else if (typeof object.ackId === "string")
2208
+ message.ackId = parseInt(object.ackId, 10);
2209
+ else if (typeof object.ackId === "number")
2210
+ message.ackId = object.ackId;
2211
+ else if (typeof object.ackId === "object")
2212
+ message.ackId = new $util.LongBits(object.ackId.low >>> 0, object.ackId.high >>> 0).toNumber(true);
2213
+ if (object.success != null)
2214
+ message.success = Boolean(object.success);
2215
+ if (object.error != null) {
2216
+ if (typeof object.error !== "object")
2217
+ throw TypeError(".DownstreamMessage.AckMessage.error: object expected");
2218
+ message.error = $root.DownstreamMessage.AckMessage.ErrorMessage.fromObject(object.error);
2219
+ }
2220
+ return message;
2221
+ };
2222
+
2223
+ /**
2224
+ * Creates a plain object from an AckMessage message. Also converts values to other types if specified.
2225
+ * @function toObject
2226
+ * @memberof DownstreamMessage.AckMessage
2227
+ * @static
2228
+ * @param {DownstreamMessage.AckMessage} message AckMessage
2229
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2230
+ * @returns {Object.<string,*>} Plain object
2231
+ */
2232
+ AckMessage.toObject = function toObject(message, options) {
2233
+ if (!options)
2234
+ options = {};
2235
+ let object = {};
2236
+ if (options.defaults) {
2237
+ if ($util.Long) {
2238
+ let long = new $util.Long(0, 0, true);
2239
+ object.ackId = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
2240
+ } else
2241
+ object.ackId = options.longs === String ? "0" : 0;
2242
+ object.success = false;
2243
+ }
2244
+ if (message.ackId != null && message.hasOwnProperty("ackId"))
2245
+ if (typeof message.ackId === "number")
2246
+ object.ackId = options.longs === String ? String(message.ackId) : message.ackId;
2247
+ else
2248
+ object.ackId = options.longs === String ? $util.Long.prototype.toString.call(message.ackId) : options.longs === Number ? new $util.LongBits(message.ackId.low >>> 0, message.ackId.high >>> 0).toNumber(true) : message.ackId;
2249
+ if (message.success != null && message.hasOwnProperty("success"))
2250
+ object.success = message.success;
2251
+ if (message.error != null && message.hasOwnProperty("error")) {
2252
+ object.error = $root.DownstreamMessage.AckMessage.ErrorMessage.toObject(message.error, options);
2253
+ if (options.oneofs)
2254
+ object._error = "error";
2255
+ }
2256
+ return object;
2257
+ };
2258
+
2259
+ /**
2260
+ * Converts this AckMessage to JSON.
2261
+ * @function toJSON
2262
+ * @memberof DownstreamMessage.AckMessage
2263
+ * @instance
2264
+ * @returns {Object.<string,*>} JSON object
2265
+ */
2266
+ AckMessage.prototype.toJSON = function toJSON() {
2267
+ return this.constructor.toObject(this, undefined);
2268
+ };
2269
+
2270
+ /**
2271
+ * Gets the default type url for AckMessage
2272
+ * @function getTypeUrl
2273
+ * @memberof DownstreamMessage.AckMessage
2274
+ * @static
2275
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2276
+ * @returns {string} The default type url
2277
+ */
2278
+ AckMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2279
+ if (typeUrlPrefix === undefined) {
2280
+ typeUrlPrefix = "type.googleapis.com";
2281
+ }
2282
+ return typeUrlPrefix + "/DownstreamMessage.AckMessage";
2283
+ };
2284
+
2285
+ AckMessage.ErrorMessage = (function() {
2286
+
2287
+ /**
2288
+ * Properties of an ErrorMessage.
2289
+ * @memberof DownstreamMessage.AckMessage
2290
+ * @interface IErrorMessage
2291
+ * @property {string|null} [name] ErrorMessage name
2292
+ * @property {string|null} [message] ErrorMessage message
2293
+ */
2294
+
2295
+ /**
2296
+ * Constructs a new ErrorMessage.
2297
+ * @memberof DownstreamMessage.AckMessage
2298
+ * @classdesc Represents an ErrorMessage.
2299
+ * @implements IErrorMessage
2300
+ * @constructor
2301
+ * @param {DownstreamMessage.AckMessage.IErrorMessage=} [properties] Properties to set
2302
+ */
2303
+ function ErrorMessage(properties) {
2304
+ if (properties)
2305
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2306
+ if (properties[keys[i]] != null)
2307
+ this[keys[i]] = properties[keys[i]];
2308
+ }
2309
+
2310
+ /**
2311
+ * ErrorMessage name.
2312
+ * @member {string} name
2313
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2314
+ * @instance
2315
+ */
2316
+ ErrorMessage.prototype.name = "";
2317
+
2318
+ /**
2319
+ * ErrorMessage message.
2320
+ * @member {string} message
2321
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2322
+ * @instance
2323
+ */
2324
+ ErrorMessage.prototype.message = "";
2325
+
2326
+ /**
2327
+ * Creates a new ErrorMessage instance using the specified properties.
2328
+ * @function create
2329
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2330
+ * @static
2331
+ * @param {DownstreamMessage.AckMessage.IErrorMessage=} [properties] Properties to set
2332
+ * @returns {DownstreamMessage.AckMessage.ErrorMessage} ErrorMessage instance
2333
+ */
2334
+ ErrorMessage.create = function create(properties) {
2335
+ return new ErrorMessage(properties);
2336
+ };
2337
+
2338
+ /**
2339
+ * Encodes the specified ErrorMessage message. Does not implicitly {@link DownstreamMessage.AckMessage.ErrorMessage.verify|verify} messages.
2340
+ * @function encode
2341
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2342
+ * @static
2343
+ * @param {DownstreamMessage.AckMessage.IErrorMessage} message ErrorMessage message or plain object to encode
2344
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2345
+ * @returns {$protobuf.Writer} Writer
2346
+ */
2347
+ ErrorMessage.encode = function encode(message, writer) {
2348
+ if (!writer)
2349
+ writer = $Writer.create();
2350
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
2351
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
2352
+ if (message.message != null && Object.hasOwnProperty.call(message, "message"))
2353
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.message);
2354
+ return writer;
2355
+ };
2356
+
2357
+ /**
2358
+ * Encodes the specified ErrorMessage message, length delimited. Does not implicitly {@link DownstreamMessage.AckMessage.ErrorMessage.verify|verify} messages.
2359
+ * @function encodeDelimited
2360
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2361
+ * @static
2362
+ * @param {DownstreamMessage.AckMessage.IErrorMessage} message ErrorMessage message or plain object to encode
2363
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2364
+ * @returns {$protobuf.Writer} Writer
2365
+ */
2366
+ ErrorMessage.encodeDelimited = function encodeDelimited(message, writer) {
2367
+ return this.encode(message, writer).ldelim();
2368
+ };
2369
+
2370
+ /**
2371
+ * Decodes an ErrorMessage message from the specified reader or buffer.
2372
+ * @function decode
2373
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2374
+ * @static
2375
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2376
+ * @param {number} [length] Message length if known beforehand
2377
+ * @returns {DownstreamMessage.AckMessage.ErrorMessage} ErrorMessage
2378
+ * @throws {Error} If the payload is not a reader or valid buffer
2379
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2380
+ */
2381
+ ErrorMessage.decode = function decode(reader, length) {
2382
+ if (!(reader instanceof $Reader))
2383
+ reader = $Reader.create(reader);
2384
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.AckMessage.ErrorMessage();
2385
+ while (reader.pos < end) {
2386
+ let tag = reader.uint32();
2387
+ switch (tag >>> 3) {
2388
+ case 1: {
2389
+ message.name = reader.string();
2390
+ break;
2391
+ }
2392
+ case 2: {
2393
+ message.message = reader.string();
2394
+ break;
2395
+ }
2396
+ default:
2397
+ reader.skipType(tag & 7);
2398
+ break;
2399
+ }
2400
+ }
2401
+ return message;
2402
+ };
2403
+
2404
+ /**
2405
+ * Decodes an ErrorMessage message from the specified reader or buffer, length delimited.
2406
+ * @function decodeDelimited
2407
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2408
+ * @static
2409
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2410
+ * @returns {DownstreamMessage.AckMessage.ErrorMessage} ErrorMessage
2411
+ * @throws {Error} If the payload is not a reader or valid buffer
2412
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2413
+ */
2414
+ ErrorMessage.decodeDelimited = function decodeDelimited(reader) {
2415
+ if (!(reader instanceof $Reader))
2416
+ reader = new $Reader(reader);
2417
+ return this.decode(reader, reader.uint32());
2418
+ };
2419
+
2420
+ /**
2421
+ * Verifies an ErrorMessage message.
2422
+ * @function verify
2423
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2424
+ * @static
2425
+ * @param {Object.<string,*>} message Plain object to verify
2426
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
2427
+ */
2428
+ ErrorMessage.verify = function verify(message) {
2429
+ if (typeof message !== "object" || message === null)
2430
+ return "object expected";
2431
+ if (message.name != null && message.hasOwnProperty("name"))
2432
+ if (!$util.isString(message.name))
2433
+ return "name: string expected";
2434
+ if (message.message != null && message.hasOwnProperty("message"))
2435
+ if (!$util.isString(message.message))
2436
+ return "message: string expected";
2437
+ return null;
2438
+ };
2439
+
2440
+ /**
2441
+ * Creates an ErrorMessage message from a plain object. Also converts values to their respective internal types.
2442
+ * @function fromObject
2443
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2444
+ * @static
2445
+ * @param {Object.<string,*>} object Plain object
2446
+ * @returns {DownstreamMessage.AckMessage.ErrorMessage} ErrorMessage
2447
+ */
2448
+ ErrorMessage.fromObject = function fromObject(object) {
2449
+ if (object instanceof $root.DownstreamMessage.AckMessage.ErrorMessage)
2450
+ return object;
2451
+ let message = new $root.DownstreamMessage.AckMessage.ErrorMessage();
2452
+ if (object.name != null)
2453
+ message.name = String(object.name);
2454
+ if (object.message != null)
2455
+ message.message = String(object.message);
2456
+ return message;
2457
+ };
2458
+
2459
+ /**
2460
+ * Creates a plain object from an ErrorMessage message. Also converts values to other types if specified.
2461
+ * @function toObject
2462
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2463
+ * @static
2464
+ * @param {DownstreamMessage.AckMessage.ErrorMessage} message ErrorMessage
2465
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2466
+ * @returns {Object.<string,*>} Plain object
2467
+ */
2468
+ ErrorMessage.toObject = function toObject(message, options) {
2469
+ if (!options)
2470
+ options = {};
2471
+ let object = {};
2472
+ if (options.defaults) {
2473
+ object.name = "";
2474
+ object.message = "";
2475
+ }
2476
+ if (message.name != null && message.hasOwnProperty("name"))
2477
+ object.name = message.name;
2478
+ if (message.message != null && message.hasOwnProperty("message"))
2479
+ object.message = message.message;
2480
+ return object;
2481
+ };
2482
+
2483
+ /**
2484
+ * Converts this ErrorMessage to JSON.
2485
+ * @function toJSON
2486
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2487
+ * @instance
2488
+ * @returns {Object.<string,*>} JSON object
2489
+ */
2490
+ ErrorMessage.prototype.toJSON = function toJSON() {
2491
+ return this.constructor.toObject(this, undefined);
2492
+ };
2493
+
2494
+ /**
2495
+ * Gets the default type url for ErrorMessage
2496
+ * @function getTypeUrl
2497
+ * @memberof DownstreamMessage.AckMessage.ErrorMessage
2498
+ * @static
2499
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2500
+ * @returns {string} The default type url
2501
+ */
2502
+ ErrorMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2503
+ if (typeUrlPrefix === undefined) {
2504
+ typeUrlPrefix = "type.googleapis.com";
2505
+ }
2506
+ return typeUrlPrefix + "/DownstreamMessage.AckMessage.ErrorMessage";
2507
+ };
2508
+
2509
+ return ErrorMessage;
2510
+ })();
2511
+
2512
+ return AckMessage;
2513
+ })();
2514
+
2515
+ DownstreamMessage.DataMessage = (function() {
2516
+
2517
+ /**
2518
+ * Properties of a DataMessage.
2519
+ * @memberof DownstreamMessage
2520
+ * @interface IDataMessage
2521
+ * @property {string|null} [from] DataMessage from
2522
+ * @property {string|null} [group] DataMessage group
2523
+ * @property {IMessageData|null} [data] DataMessage data
2524
+ * @property {number|Long|null} [sequenceId] DataMessage sequenceId
2525
+ */
2526
+
2527
+ /**
2528
+ * Constructs a new DataMessage.
2529
+ * @memberof DownstreamMessage
2530
+ * @classdesc Represents a DataMessage.
2531
+ * @implements IDataMessage
2532
+ * @constructor
2533
+ * @param {DownstreamMessage.IDataMessage=} [properties] Properties to set
2534
+ */
2535
+ function DataMessage(properties) {
2536
+ if (properties)
2537
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2538
+ if (properties[keys[i]] != null)
2539
+ this[keys[i]] = properties[keys[i]];
2540
+ }
2541
+
2542
+ /**
2543
+ * DataMessage from.
2544
+ * @member {string} from
2545
+ * @memberof DownstreamMessage.DataMessage
2546
+ * @instance
2547
+ */
2548
+ DataMessage.prototype.from = "";
2549
+
2550
+ /**
2551
+ * DataMessage group.
2552
+ * @member {string|null|undefined} group
2553
+ * @memberof DownstreamMessage.DataMessage
2554
+ * @instance
2555
+ */
2556
+ DataMessage.prototype.group = null;
2557
+
2558
+ /**
2559
+ * DataMessage data.
2560
+ * @member {IMessageData|null|undefined} data
2561
+ * @memberof DownstreamMessage.DataMessage
2562
+ * @instance
2563
+ */
2564
+ DataMessage.prototype.data = null;
2565
+
2566
+ /**
2567
+ * DataMessage sequenceId.
2568
+ * @member {number|Long|null|undefined} sequenceId
2569
+ * @memberof DownstreamMessage.DataMessage
2570
+ * @instance
2571
+ */
2572
+ DataMessage.prototype.sequenceId = null;
2573
+
2574
+ // OneOf field names bound to virtual getters and setters
2575
+ let $oneOfFields;
2576
+
2577
+ /**
2578
+ * DataMessage _group.
2579
+ * @member {"group"|undefined} _group
2580
+ * @memberof DownstreamMessage.DataMessage
2581
+ * @instance
2582
+ */
2583
+ Object.defineProperty(DataMessage.prototype, "_group", {
2584
+ get: $util.oneOfGetter($oneOfFields = ["group"]),
2585
+ set: $util.oneOfSetter($oneOfFields)
2586
+ });
2587
+
2588
+ /**
2589
+ * DataMessage _sequenceId.
2590
+ * @member {"sequenceId"|undefined} _sequenceId
2591
+ * @memberof DownstreamMessage.DataMessage
2592
+ * @instance
2593
+ */
2594
+ Object.defineProperty(DataMessage.prototype, "_sequenceId", {
2595
+ get: $util.oneOfGetter($oneOfFields = ["sequenceId"]),
2596
+ set: $util.oneOfSetter($oneOfFields)
2597
+ });
2598
+
2599
+ /**
2600
+ * Creates a new DataMessage instance using the specified properties.
2601
+ * @function create
2602
+ * @memberof DownstreamMessage.DataMessage
2603
+ * @static
2604
+ * @param {DownstreamMessage.IDataMessage=} [properties] Properties to set
2605
+ * @returns {DownstreamMessage.DataMessage} DataMessage instance
2606
+ */
2607
+ DataMessage.create = function create(properties) {
2608
+ return new DataMessage(properties);
2609
+ };
2610
+
2611
+ /**
2612
+ * Encodes the specified DataMessage message. Does not implicitly {@link DownstreamMessage.DataMessage.verify|verify} messages.
2613
+ * @function encode
2614
+ * @memberof DownstreamMessage.DataMessage
2615
+ * @static
2616
+ * @param {DownstreamMessage.IDataMessage} message DataMessage message or plain object to encode
2617
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2618
+ * @returns {$protobuf.Writer} Writer
2619
+ */
2620
+ DataMessage.encode = function encode(message, writer) {
2621
+ if (!writer)
2622
+ writer = $Writer.create();
2623
+ if (message.from != null && Object.hasOwnProperty.call(message, "from"))
2624
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.from);
2625
+ if (message.group != null && Object.hasOwnProperty.call(message, "group"))
2626
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.group);
2627
+ if (message.data != null && Object.hasOwnProperty.call(message, "data"))
2628
+ $root.MessageData.encode(message.data, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
2629
+ if (message.sequenceId != null && Object.hasOwnProperty.call(message, "sequenceId"))
2630
+ writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.sequenceId);
2631
+ return writer;
2632
+ };
2633
+
2634
+ /**
2635
+ * Encodes the specified DataMessage message, length delimited. Does not implicitly {@link DownstreamMessage.DataMessage.verify|verify} messages.
2636
+ * @function encodeDelimited
2637
+ * @memberof DownstreamMessage.DataMessage
2638
+ * @static
2639
+ * @param {DownstreamMessage.IDataMessage} message DataMessage message or plain object to encode
2640
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2641
+ * @returns {$protobuf.Writer} Writer
2642
+ */
2643
+ DataMessage.encodeDelimited = function encodeDelimited(message, writer) {
2644
+ return this.encode(message, writer).ldelim();
2645
+ };
2646
+
2647
+ /**
2648
+ * Decodes a DataMessage message from the specified reader or buffer.
2649
+ * @function decode
2650
+ * @memberof DownstreamMessage.DataMessage
2651
+ * @static
2652
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2653
+ * @param {number} [length] Message length if known beforehand
2654
+ * @returns {DownstreamMessage.DataMessage} DataMessage
2655
+ * @throws {Error} If the payload is not a reader or valid buffer
2656
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2657
+ */
2658
+ DataMessage.decode = function decode(reader, length) {
2659
+ if (!(reader instanceof $Reader))
2660
+ reader = $Reader.create(reader);
2661
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.DataMessage();
2662
+ while (reader.pos < end) {
2663
+ let tag = reader.uint32();
2664
+ switch (tag >>> 3) {
2665
+ case 1: {
2666
+ message.from = reader.string();
2667
+ break;
2668
+ }
2669
+ case 2: {
2670
+ message.group = reader.string();
2671
+ break;
2672
+ }
2673
+ case 3: {
2674
+ message.data = $root.MessageData.decode(reader, reader.uint32());
2675
+ break;
2676
+ }
2677
+ case 4: {
2678
+ message.sequenceId = reader.uint64();
2679
+ break;
2680
+ }
2681
+ default:
2682
+ reader.skipType(tag & 7);
2683
+ break;
2684
+ }
2685
+ }
2686
+ return message;
2687
+ };
2688
+
2689
+ /**
2690
+ * Decodes a DataMessage message from the specified reader or buffer, length delimited.
2691
+ * @function decodeDelimited
2692
+ * @memberof DownstreamMessage.DataMessage
2693
+ * @static
2694
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2695
+ * @returns {DownstreamMessage.DataMessage} DataMessage
2696
+ * @throws {Error} If the payload is not a reader or valid buffer
2697
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2698
+ */
2699
+ DataMessage.decodeDelimited = function decodeDelimited(reader) {
2700
+ if (!(reader instanceof $Reader))
2701
+ reader = new $Reader(reader);
2702
+ return this.decode(reader, reader.uint32());
2703
+ };
2704
+
2705
+ /**
2706
+ * Verifies a DataMessage message.
2707
+ * @function verify
2708
+ * @memberof DownstreamMessage.DataMessage
2709
+ * @static
2710
+ * @param {Object.<string,*>} message Plain object to verify
2711
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
2712
+ */
2713
+ DataMessage.verify = function verify(message) {
2714
+ if (typeof message !== "object" || message === null)
2715
+ return "object expected";
2716
+ if (message.from != null && message.hasOwnProperty("from"))
2717
+ if (!$util.isString(message.from))
2718
+ return "from: string expected";
2719
+ if (message.group != null && message.hasOwnProperty("group")) {
2720
+ if (!$util.isString(message.group))
2721
+ return "group: string expected";
2722
+ }
2723
+ if (message.data != null && message.hasOwnProperty("data")) {
2724
+ let error = $root.MessageData.verify(message.data);
2725
+ if (error)
2726
+ return "data." + error;
2727
+ }
2728
+ if (message.sequenceId != null && message.hasOwnProperty("sequenceId")) {
2729
+ if (!$util.isInteger(message.sequenceId) && !(message.sequenceId && $util.isInteger(message.sequenceId.low) && $util.isInteger(message.sequenceId.high)))
2730
+ return "sequenceId: integer|Long expected";
2731
+ }
2732
+ return null;
2733
+ };
2734
+
2735
+ /**
2736
+ * Creates a DataMessage message from a plain object. Also converts values to their respective internal types.
2737
+ * @function fromObject
2738
+ * @memberof DownstreamMessage.DataMessage
2739
+ * @static
2740
+ * @param {Object.<string,*>} object Plain object
2741
+ * @returns {DownstreamMessage.DataMessage} DataMessage
2742
+ */
2743
+ DataMessage.fromObject = function fromObject(object) {
2744
+ if (object instanceof $root.DownstreamMessage.DataMessage)
2745
+ return object;
2746
+ let message = new $root.DownstreamMessage.DataMessage();
2747
+ if (object.from != null)
2748
+ message.from = String(object.from);
2749
+ if (object.group != null)
2750
+ message.group = String(object.group);
2751
+ if (object.data != null) {
2752
+ if (typeof object.data !== "object")
2753
+ throw TypeError(".DownstreamMessage.DataMessage.data: object expected");
2754
+ message.data = $root.MessageData.fromObject(object.data);
2755
+ }
2756
+ if (object.sequenceId != null)
2757
+ if ($util.Long)
2758
+ (message.sequenceId = $util.Long.fromValue(object.sequenceId)).unsigned = true;
2759
+ else if (typeof object.sequenceId === "string")
2760
+ message.sequenceId = parseInt(object.sequenceId, 10);
2761
+ else if (typeof object.sequenceId === "number")
2762
+ message.sequenceId = object.sequenceId;
2763
+ else if (typeof object.sequenceId === "object")
2764
+ message.sequenceId = new $util.LongBits(object.sequenceId.low >>> 0, object.sequenceId.high >>> 0).toNumber(true);
2765
+ return message;
2766
+ };
2767
+
2768
+ /**
2769
+ * Creates a plain object from a DataMessage message. Also converts values to other types if specified.
2770
+ * @function toObject
2771
+ * @memberof DownstreamMessage.DataMessage
2772
+ * @static
2773
+ * @param {DownstreamMessage.DataMessage} message DataMessage
2774
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2775
+ * @returns {Object.<string,*>} Plain object
2776
+ */
2777
+ DataMessage.toObject = function toObject(message, options) {
2778
+ if (!options)
2779
+ options = {};
2780
+ let object = {};
2781
+ if (options.defaults) {
2782
+ object.from = "";
2783
+ object.data = null;
2784
+ }
2785
+ if (message.from != null && message.hasOwnProperty("from"))
2786
+ object.from = message.from;
2787
+ if (message.group != null && message.hasOwnProperty("group")) {
2788
+ object.group = message.group;
2789
+ if (options.oneofs)
2790
+ object._group = "group";
2791
+ }
2792
+ if (message.data != null && message.hasOwnProperty("data"))
2793
+ object.data = $root.MessageData.toObject(message.data, options);
2794
+ if (message.sequenceId != null && message.hasOwnProperty("sequenceId")) {
2795
+ if (typeof message.sequenceId === "number")
2796
+ object.sequenceId = options.longs === String ? String(message.sequenceId) : message.sequenceId;
2797
+ else
2798
+ object.sequenceId = options.longs === String ? $util.Long.prototype.toString.call(message.sequenceId) : options.longs === Number ? new $util.LongBits(message.sequenceId.low >>> 0, message.sequenceId.high >>> 0).toNumber(true) : message.sequenceId;
2799
+ if (options.oneofs)
2800
+ object._sequenceId = "sequenceId";
2801
+ }
2802
+ return object;
2803
+ };
2804
+
2805
+ /**
2806
+ * Converts this DataMessage to JSON.
2807
+ * @function toJSON
2808
+ * @memberof DownstreamMessage.DataMessage
2809
+ * @instance
2810
+ * @returns {Object.<string,*>} JSON object
2811
+ */
2812
+ DataMessage.prototype.toJSON = function toJSON() {
2813
+ return this.constructor.toObject(this, undefined);
2814
+ };
2815
+
2816
+ /**
2817
+ * Gets the default type url for DataMessage
2818
+ * @function getTypeUrl
2819
+ * @memberof DownstreamMessage.DataMessage
2820
+ * @static
2821
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2822
+ * @returns {string} The default type url
2823
+ */
2824
+ DataMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2825
+ if (typeUrlPrefix === undefined) {
2826
+ typeUrlPrefix = "type.googleapis.com";
2827
+ }
2828
+ return typeUrlPrefix + "/DownstreamMessage.DataMessage";
2829
+ };
2830
+
2831
+ return DataMessage;
2832
+ })();
2833
+
2834
+ DownstreamMessage.SystemMessage = (function() {
2835
+
2836
+ /**
2837
+ * Properties of a SystemMessage.
2838
+ * @memberof DownstreamMessage
2839
+ * @interface ISystemMessage
2840
+ * @property {DownstreamMessage.SystemMessage.IConnectedMessage|null} [connectedMessage] SystemMessage connectedMessage
2841
+ * @property {DownstreamMessage.SystemMessage.IDisconnectedMessage|null} [disconnectedMessage] SystemMessage disconnectedMessage
2842
+ */
2843
+
2844
+ /**
2845
+ * Constructs a new SystemMessage.
2846
+ * @memberof DownstreamMessage
2847
+ * @classdesc Represents a SystemMessage.
2848
+ * @implements ISystemMessage
2849
+ * @constructor
2850
+ * @param {DownstreamMessage.ISystemMessage=} [properties] Properties to set
2851
+ */
2852
+ function SystemMessage(properties) {
2853
+ if (properties)
2854
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2855
+ if (properties[keys[i]] != null)
2856
+ this[keys[i]] = properties[keys[i]];
2857
+ }
2858
+
2859
+ /**
2860
+ * SystemMessage connectedMessage.
2861
+ * @member {DownstreamMessage.SystemMessage.IConnectedMessage|null|undefined} connectedMessage
2862
+ * @memberof DownstreamMessage.SystemMessage
2863
+ * @instance
2864
+ */
2865
+ SystemMessage.prototype.connectedMessage = null;
2866
+
2867
+ /**
2868
+ * SystemMessage disconnectedMessage.
2869
+ * @member {DownstreamMessage.SystemMessage.IDisconnectedMessage|null|undefined} disconnectedMessage
2870
+ * @memberof DownstreamMessage.SystemMessage
2871
+ * @instance
2872
+ */
2873
+ SystemMessage.prototype.disconnectedMessage = null;
2874
+
2875
+ // OneOf field names bound to virtual getters and setters
2876
+ let $oneOfFields;
2877
+
2878
+ /**
2879
+ * SystemMessage message.
2880
+ * @member {"connectedMessage"|"disconnectedMessage"|undefined} message
2881
+ * @memberof DownstreamMessage.SystemMessage
2882
+ * @instance
2883
+ */
2884
+ Object.defineProperty(SystemMessage.prototype, "message", {
2885
+ get: $util.oneOfGetter($oneOfFields = ["connectedMessage", "disconnectedMessage"]),
2886
+ set: $util.oneOfSetter($oneOfFields)
2887
+ });
2888
+
2889
+ /**
2890
+ * Creates a new SystemMessage instance using the specified properties.
2891
+ * @function create
2892
+ * @memberof DownstreamMessage.SystemMessage
2893
+ * @static
2894
+ * @param {DownstreamMessage.ISystemMessage=} [properties] Properties to set
2895
+ * @returns {DownstreamMessage.SystemMessage} SystemMessage instance
2896
+ */
2897
+ SystemMessage.create = function create(properties) {
2898
+ return new SystemMessage(properties);
2899
+ };
2900
+
2901
+ /**
2902
+ * Encodes the specified SystemMessage message. Does not implicitly {@link DownstreamMessage.SystemMessage.verify|verify} messages.
2903
+ * @function encode
2904
+ * @memberof DownstreamMessage.SystemMessage
2905
+ * @static
2906
+ * @param {DownstreamMessage.ISystemMessage} message SystemMessage message or plain object to encode
2907
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2908
+ * @returns {$protobuf.Writer} Writer
2909
+ */
2910
+ SystemMessage.encode = function encode(message, writer) {
2911
+ if (!writer)
2912
+ writer = $Writer.create();
2913
+ if (message.connectedMessage != null && Object.hasOwnProperty.call(message, "connectedMessage"))
2914
+ $root.DownstreamMessage.SystemMessage.ConnectedMessage.encode(message.connectedMessage, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
2915
+ if (message.disconnectedMessage != null && Object.hasOwnProperty.call(message, "disconnectedMessage"))
2916
+ $root.DownstreamMessage.SystemMessage.DisconnectedMessage.encode(message.disconnectedMessage, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
2917
+ return writer;
2918
+ };
2919
+
2920
+ /**
2921
+ * Encodes the specified SystemMessage message, length delimited. Does not implicitly {@link DownstreamMessage.SystemMessage.verify|verify} messages.
2922
+ * @function encodeDelimited
2923
+ * @memberof DownstreamMessage.SystemMessage
2924
+ * @static
2925
+ * @param {DownstreamMessage.ISystemMessage} message SystemMessage message or plain object to encode
2926
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2927
+ * @returns {$protobuf.Writer} Writer
2928
+ */
2929
+ SystemMessage.encodeDelimited = function encodeDelimited(message, writer) {
2930
+ return this.encode(message, writer).ldelim();
2931
+ };
2932
+
2933
+ /**
2934
+ * Decodes a SystemMessage message from the specified reader or buffer.
2935
+ * @function decode
2936
+ * @memberof DownstreamMessage.SystemMessage
2937
+ * @static
2938
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2939
+ * @param {number} [length] Message length if known beforehand
2940
+ * @returns {DownstreamMessage.SystemMessage} SystemMessage
2941
+ * @throws {Error} If the payload is not a reader or valid buffer
2942
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2943
+ */
2944
+ SystemMessage.decode = function decode(reader, length) {
2945
+ if (!(reader instanceof $Reader))
2946
+ reader = $Reader.create(reader);
2947
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.SystemMessage();
2948
+ while (reader.pos < end) {
2949
+ let tag = reader.uint32();
2950
+ switch (tag >>> 3) {
2951
+ case 1: {
2952
+ message.connectedMessage = $root.DownstreamMessage.SystemMessage.ConnectedMessage.decode(reader, reader.uint32());
2953
+ break;
2954
+ }
2955
+ case 2: {
2956
+ message.disconnectedMessage = $root.DownstreamMessage.SystemMessage.DisconnectedMessage.decode(reader, reader.uint32());
2957
+ break;
2958
+ }
2959
+ default:
2960
+ reader.skipType(tag & 7);
2961
+ break;
2962
+ }
2963
+ }
2964
+ return message;
2965
+ };
2966
+
2967
+ /**
2968
+ * Decodes a SystemMessage message from the specified reader or buffer, length delimited.
2969
+ * @function decodeDelimited
2970
+ * @memberof DownstreamMessage.SystemMessage
2971
+ * @static
2972
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2973
+ * @returns {DownstreamMessage.SystemMessage} SystemMessage
2974
+ * @throws {Error} If the payload is not a reader or valid buffer
2975
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2976
+ */
2977
+ SystemMessage.decodeDelimited = function decodeDelimited(reader) {
2978
+ if (!(reader instanceof $Reader))
2979
+ reader = new $Reader(reader);
2980
+ return this.decode(reader, reader.uint32());
2981
+ };
2982
+
2983
+ /**
2984
+ * Verifies a SystemMessage message.
2985
+ * @function verify
2986
+ * @memberof DownstreamMessage.SystemMessage
2987
+ * @static
2988
+ * @param {Object.<string,*>} message Plain object to verify
2989
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
2990
+ */
2991
+ SystemMessage.verify = function verify(message) {
2992
+ if (typeof message !== "object" || message === null)
2993
+ return "object expected";
2994
+ let properties = {};
2995
+ if (message.connectedMessage != null && message.hasOwnProperty("connectedMessage")) {
2996
+ properties.message = 1;
2997
+ {
2998
+ let error = $root.DownstreamMessage.SystemMessage.ConnectedMessage.verify(message.connectedMessage);
2999
+ if (error)
3000
+ return "connectedMessage." + error;
3001
+ }
3002
+ }
3003
+ if (message.disconnectedMessage != null && message.hasOwnProperty("disconnectedMessage")) {
3004
+ if (properties.message === 1)
3005
+ return "message: multiple values";
3006
+ properties.message = 1;
3007
+ {
3008
+ let error = $root.DownstreamMessage.SystemMessage.DisconnectedMessage.verify(message.disconnectedMessage);
3009
+ if (error)
3010
+ return "disconnectedMessage." + error;
3011
+ }
3012
+ }
3013
+ return null;
3014
+ };
3015
+
3016
+ /**
3017
+ * Creates a SystemMessage message from a plain object. Also converts values to their respective internal types.
3018
+ * @function fromObject
3019
+ * @memberof DownstreamMessage.SystemMessage
3020
+ * @static
3021
+ * @param {Object.<string,*>} object Plain object
3022
+ * @returns {DownstreamMessage.SystemMessage} SystemMessage
3023
+ */
3024
+ SystemMessage.fromObject = function fromObject(object) {
3025
+ if (object instanceof $root.DownstreamMessage.SystemMessage)
3026
+ return object;
3027
+ let message = new $root.DownstreamMessage.SystemMessage();
3028
+ if (object.connectedMessage != null) {
3029
+ if (typeof object.connectedMessage !== "object")
3030
+ throw TypeError(".DownstreamMessage.SystemMessage.connectedMessage: object expected");
3031
+ message.connectedMessage = $root.DownstreamMessage.SystemMessage.ConnectedMessage.fromObject(object.connectedMessage);
3032
+ }
3033
+ if (object.disconnectedMessage != null) {
3034
+ if (typeof object.disconnectedMessage !== "object")
3035
+ throw TypeError(".DownstreamMessage.SystemMessage.disconnectedMessage: object expected");
3036
+ message.disconnectedMessage = $root.DownstreamMessage.SystemMessage.DisconnectedMessage.fromObject(object.disconnectedMessage);
3037
+ }
3038
+ return message;
3039
+ };
3040
+
3041
+ /**
3042
+ * Creates a plain object from a SystemMessage message. Also converts values to other types if specified.
3043
+ * @function toObject
3044
+ * @memberof DownstreamMessage.SystemMessage
3045
+ * @static
3046
+ * @param {DownstreamMessage.SystemMessage} message SystemMessage
3047
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3048
+ * @returns {Object.<string,*>} Plain object
3049
+ */
3050
+ SystemMessage.toObject = function toObject(message, options) {
3051
+ if (!options)
3052
+ options = {};
3053
+ let object = {};
3054
+ if (message.connectedMessage != null && message.hasOwnProperty("connectedMessage")) {
3055
+ object.connectedMessage = $root.DownstreamMessage.SystemMessage.ConnectedMessage.toObject(message.connectedMessage, options);
3056
+ if (options.oneofs)
3057
+ object.message = "connectedMessage";
3058
+ }
3059
+ if (message.disconnectedMessage != null && message.hasOwnProperty("disconnectedMessage")) {
3060
+ object.disconnectedMessage = $root.DownstreamMessage.SystemMessage.DisconnectedMessage.toObject(message.disconnectedMessage, options);
3061
+ if (options.oneofs)
3062
+ object.message = "disconnectedMessage";
3063
+ }
3064
+ return object;
3065
+ };
3066
+
3067
+ /**
3068
+ * Converts this SystemMessage to JSON.
3069
+ * @function toJSON
3070
+ * @memberof DownstreamMessage.SystemMessage
3071
+ * @instance
3072
+ * @returns {Object.<string,*>} JSON object
3073
+ */
3074
+ SystemMessage.prototype.toJSON = function toJSON() {
3075
+ return this.constructor.toObject(this, undefined);
3076
+ };
3077
+
3078
+ /**
3079
+ * Gets the default type url for SystemMessage
3080
+ * @function getTypeUrl
3081
+ * @memberof DownstreamMessage.SystemMessage
3082
+ * @static
3083
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3084
+ * @returns {string} The default type url
3085
+ */
3086
+ SystemMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3087
+ if (typeUrlPrefix === undefined) {
3088
+ typeUrlPrefix = "type.googleapis.com";
3089
+ }
3090
+ return typeUrlPrefix + "/DownstreamMessage.SystemMessage";
3091
+ };
3092
+
3093
+ SystemMessage.ConnectedMessage = (function() {
3094
+
3095
+ /**
3096
+ * Properties of a ConnectedMessage.
3097
+ * @memberof DownstreamMessage.SystemMessage
3098
+ * @interface IConnectedMessage
3099
+ * @property {string|null} [connectionId] ConnectedMessage connectionId
3100
+ * @property {string|null} [userId] ConnectedMessage userId
3101
+ * @property {string|null} [reconnectionToken] ConnectedMessage reconnectionToken
3102
+ */
3103
+
3104
+ /**
3105
+ * Constructs a new ConnectedMessage.
3106
+ * @memberof DownstreamMessage.SystemMessage
3107
+ * @classdesc Represents a ConnectedMessage.
3108
+ * @implements IConnectedMessage
3109
+ * @constructor
3110
+ * @param {DownstreamMessage.SystemMessage.IConnectedMessage=} [properties] Properties to set
3111
+ */
3112
+ function ConnectedMessage(properties) {
3113
+ if (properties)
3114
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3115
+ if (properties[keys[i]] != null)
3116
+ this[keys[i]] = properties[keys[i]];
3117
+ }
3118
+
3119
+ /**
3120
+ * ConnectedMessage connectionId.
3121
+ * @member {string} connectionId
3122
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3123
+ * @instance
3124
+ */
3125
+ ConnectedMessage.prototype.connectionId = "";
3126
+
3127
+ /**
3128
+ * ConnectedMessage userId.
3129
+ * @member {string} userId
3130
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3131
+ * @instance
3132
+ */
3133
+ ConnectedMessage.prototype.userId = "";
3134
+
3135
+ /**
3136
+ * ConnectedMessage reconnectionToken.
3137
+ * @member {string} reconnectionToken
3138
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3139
+ * @instance
3140
+ */
3141
+ ConnectedMessage.prototype.reconnectionToken = "";
3142
+
3143
+ /**
3144
+ * Creates a new ConnectedMessage instance using the specified properties.
3145
+ * @function create
3146
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3147
+ * @static
3148
+ * @param {DownstreamMessage.SystemMessage.IConnectedMessage=} [properties] Properties to set
3149
+ * @returns {DownstreamMessage.SystemMessage.ConnectedMessage} ConnectedMessage instance
3150
+ */
3151
+ ConnectedMessage.create = function create(properties) {
3152
+ return new ConnectedMessage(properties);
3153
+ };
3154
+
3155
+ /**
3156
+ * Encodes the specified ConnectedMessage message. Does not implicitly {@link DownstreamMessage.SystemMessage.ConnectedMessage.verify|verify} messages.
3157
+ * @function encode
3158
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3159
+ * @static
3160
+ * @param {DownstreamMessage.SystemMessage.IConnectedMessage} message ConnectedMessage message or plain object to encode
3161
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3162
+ * @returns {$protobuf.Writer} Writer
3163
+ */
3164
+ ConnectedMessage.encode = function encode(message, writer) {
3165
+ if (!writer)
3166
+ writer = $Writer.create();
3167
+ if (message.connectionId != null && Object.hasOwnProperty.call(message, "connectionId"))
3168
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectionId);
3169
+ if (message.userId != null && Object.hasOwnProperty.call(message, "userId"))
3170
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.userId);
3171
+ if (message.reconnectionToken != null && Object.hasOwnProperty.call(message, "reconnectionToken"))
3172
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.reconnectionToken);
3173
+ return writer;
3174
+ };
3175
+
3176
+ /**
3177
+ * Encodes the specified ConnectedMessage message, length delimited. Does not implicitly {@link DownstreamMessage.SystemMessage.ConnectedMessage.verify|verify} messages.
3178
+ * @function encodeDelimited
3179
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3180
+ * @static
3181
+ * @param {DownstreamMessage.SystemMessage.IConnectedMessage} message ConnectedMessage message or plain object to encode
3182
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3183
+ * @returns {$protobuf.Writer} Writer
3184
+ */
3185
+ ConnectedMessage.encodeDelimited = function encodeDelimited(message, writer) {
3186
+ return this.encode(message, writer).ldelim();
3187
+ };
3188
+
3189
+ /**
3190
+ * Decodes a ConnectedMessage message from the specified reader or buffer.
3191
+ * @function decode
3192
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3193
+ * @static
3194
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3195
+ * @param {number} [length] Message length if known beforehand
3196
+ * @returns {DownstreamMessage.SystemMessage.ConnectedMessage} ConnectedMessage
3197
+ * @throws {Error} If the payload is not a reader or valid buffer
3198
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3199
+ */
3200
+ ConnectedMessage.decode = function decode(reader, length) {
3201
+ if (!(reader instanceof $Reader))
3202
+ reader = $Reader.create(reader);
3203
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.SystemMessage.ConnectedMessage();
3204
+ while (reader.pos < end) {
3205
+ let tag = reader.uint32();
3206
+ switch (tag >>> 3) {
3207
+ case 1: {
3208
+ message.connectionId = reader.string();
3209
+ break;
3210
+ }
3211
+ case 2: {
3212
+ message.userId = reader.string();
3213
+ break;
3214
+ }
3215
+ case 3: {
3216
+ message.reconnectionToken = reader.string();
3217
+ break;
3218
+ }
3219
+ default:
3220
+ reader.skipType(tag & 7);
3221
+ break;
3222
+ }
3223
+ }
3224
+ return message;
3225
+ };
3226
+
3227
+ /**
3228
+ * Decodes a ConnectedMessage message from the specified reader or buffer, length delimited.
3229
+ * @function decodeDelimited
3230
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3231
+ * @static
3232
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3233
+ * @returns {DownstreamMessage.SystemMessage.ConnectedMessage} ConnectedMessage
3234
+ * @throws {Error} If the payload is not a reader or valid buffer
3235
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3236
+ */
3237
+ ConnectedMessage.decodeDelimited = function decodeDelimited(reader) {
3238
+ if (!(reader instanceof $Reader))
3239
+ reader = new $Reader(reader);
3240
+ return this.decode(reader, reader.uint32());
3241
+ };
3242
+
3243
+ /**
3244
+ * Verifies a ConnectedMessage message.
3245
+ * @function verify
3246
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3247
+ * @static
3248
+ * @param {Object.<string,*>} message Plain object to verify
3249
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
3250
+ */
3251
+ ConnectedMessage.verify = function verify(message) {
3252
+ if (typeof message !== "object" || message === null)
3253
+ return "object expected";
3254
+ if (message.connectionId != null && message.hasOwnProperty("connectionId"))
3255
+ if (!$util.isString(message.connectionId))
3256
+ return "connectionId: string expected";
3257
+ if (message.userId != null && message.hasOwnProperty("userId"))
3258
+ if (!$util.isString(message.userId))
3259
+ return "userId: string expected";
3260
+ if (message.reconnectionToken != null && message.hasOwnProperty("reconnectionToken"))
3261
+ if (!$util.isString(message.reconnectionToken))
3262
+ return "reconnectionToken: string expected";
3263
+ return null;
3264
+ };
3265
+
3266
+ /**
3267
+ * Creates a ConnectedMessage message from a plain object. Also converts values to their respective internal types.
3268
+ * @function fromObject
3269
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3270
+ * @static
3271
+ * @param {Object.<string,*>} object Plain object
3272
+ * @returns {DownstreamMessage.SystemMessage.ConnectedMessage} ConnectedMessage
3273
+ */
3274
+ ConnectedMessage.fromObject = function fromObject(object) {
3275
+ if (object instanceof $root.DownstreamMessage.SystemMessage.ConnectedMessage)
3276
+ return object;
3277
+ let message = new $root.DownstreamMessage.SystemMessage.ConnectedMessage();
3278
+ if (object.connectionId != null)
3279
+ message.connectionId = String(object.connectionId);
3280
+ if (object.userId != null)
3281
+ message.userId = String(object.userId);
3282
+ if (object.reconnectionToken != null)
3283
+ message.reconnectionToken = String(object.reconnectionToken);
3284
+ return message;
3285
+ };
3286
+
3287
+ /**
3288
+ * Creates a plain object from a ConnectedMessage message. Also converts values to other types if specified.
3289
+ * @function toObject
3290
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3291
+ * @static
3292
+ * @param {DownstreamMessage.SystemMessage.ConnectedMessage} message ConnectedMessage
3293
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3294
+ * @returns {Object.<string,*>} Plain object
3295
+ */
3296
+ ConnectedMessage.toObject = function toObject(message, options) {
3297
+ if (!options)
3298
+ options = {};
3299
+ let object = {};
3300
+ if (options.defaults) {
3301
+ object.connectionId = "";
3302
+ object.userId = "";
3303
+ object.reconnectionToken = "";
3304
+ }
3305
+ if (message.connectionId != null && message.hasOwnProperty("connectionId"))
3306
+ object.connectionId = message.connectionId;
3307
+ if (message.userId != null && message.hasOwnProperty("userId"))
3308
+ object.userId = message.userId;
3309
+ if (message.reconnectionToken != null && message.hasOwnProperty("reconnectionToken"))
3310
+ object.reconnectionToken = message.reconnectionToken;
3311
+ return object;
3312
+ };
3313
+
3314
+ /**
3315
+ * Converts this ConnectedMessage to JSON.
3316
+ * @function toJSON
3317
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3318
+ * @instance
3319
+ * @returns {Object.<string,*>} JSON object
3320
+ */
3321
+ ConnectedMessage.prototype.toJSON = function toJSON() {
3322
+ return this.constructor.toObject(this, undefined);
3323
+ };
3324
+
3325
+ /**
3326
+ * Gets the default type url for ConnectedMessage
3327
+ * @function getTypeUrl
3328
+ * @memberof DownstreamMessage.SystemMessage.ConnectedMessage
3329
+ * @static
3330
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3331
+ * @returns {string} The default type url
3332
+ */
3333
+ ConnectedMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3334
+ if (typeUrlPrefix === undefined) {
3335
+ typeUrlPrefix = "type.googleapis.com";
3336
+ }
3337
+ return typeUrlPrefix + "/DownstreamMessage.SystemMessage.ConnectedMessage";
3338
+ };
3339
+
3340
+ return ConnectedMessage;
3341
+ })();
3342
+
3343
+ SystemMessage.DisconnectedMessage = (function() {
3344
+
3345
+ /**
3346
+ * Properties of a DisconnectedMessage.
3347
+ * @memberof DownstreamMessage.SystemMessage
3348
+ * @interface IDisconnectedMessage
3349
+ * @property {string|null} [reason] DisconnectedMessage reason
3350
+ */
3351
+
3352
+ /**
3353
+ * Constructs a new DisconnectedMessage.
3354
+ * @memberof DownstreamMessage.SystemMessage
3355
+ * @classdesc Represents a DisconnectedMessage.
3356
+ * @implements IDisconnectedMessage
3357
+ * @constructor
3358
+ * @param {DownstreamMessage.SystemMessage.IDisconnectedMessage=} [properties] Properties to set
3359
+ */
3360
+ function DisconnectedMessage(properties) {
3361
+ if (properties)
3362
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3363
+ if (properties[keys[i]] != null)
3364
+ this[keys[i]] = properties[keys[i]];
3365
+ }
3366
+
3367
+ /**
3368
+ * DisconnectedMessage reason.
3369
+ * @member {string} reason
3370
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3371
+ * @instance
3372
+ */
3373
+ DisconnectedMessage.prototype.reason = "";
3374
+
3375
+ /**
3376
+ * Creates a new DisconnectedMessage instance using the specified properties.
3377
+ * @function create
3378
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3379
+ * @static
3380
+ * @param {DownstreamMessage.SystemMessage.IDisconnectedMessage=} [properties] Properties to set
3381
+ * @returns {DownstreamMessage.SystemMessage.DisconnectedMessage} DisconnectedMessage instance
3382
+ */
3383
+ DisconnectedMessage.create = function create(properties) {
3384
+ return new DisconnectedMessage(properties);
3385
+ };
3386
+
3387
+ /**
3388
+ * Encodes the specified DisconnectedMessage message. Does not implicitly {@link DownstreamMessage.SystemMessage.DisconnectedMessage.verify|verify} messages.
3389
+ * @function encode
3390
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3391
+ * @static
3392
+ * @param {DownstreamMessage.SystemMessage.IDisconnectedMessage} message DisconnectedMessage message or plain object to encode
3393
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3394
+ * @returns {$protobuf.Writer} Writer
3395
+ */
3396
+ DisconnectedMessage.encode = function encode(message, writer) {
3397
+ if (!writer)
3398
+ writer = $Writer.create();
3399
+ if (message.reason != null && Object.hasOwnProperty.call(message, "reason"))
3400
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.reason);
3401
+ return writer;
3402
+ };
3403
+
3404
+ /**
3405
+ * Encodes the specified DisconnectedMessage message, length delimited. Does not implicitly {@link DownstreamMessage.SystemMessage.DisconnectedMessage.verify|verify} messages.
3406
+ * @function encodeDelimited
3407
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3408
+ * @static
3409
+ * @param {DownstreamMessage.SystemMessage.IDisconnectedMessage} message DisconnectedMessage message or plain object to encode
3410
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3411
+ * @returns {$protobuf.Writer} Writer
3412
+ */
3413
+ DisconnectedMessage.encodeDelimited = function encodeDelimited(message, writer) {
3414
+ return this.encode(message, writer).ldelim();
3415
+ };
3416
+
3417
+ /**
3418
+ * Decodes a DisconnectedMessage message from the specified reader or buffer.
3419
+ * @function decode
3420
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3421
+ * @static
3422
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3423
+ * @param {number} [length] Message length if known beforehand
3424
+ * @returns {DownstreamMessage.SystemMessage.DisconnectedMessage} DisconnectedMessage
3425
+ * @throws {Error} If the payload is not a reader or valid buffer
3426
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3427
+ */
3428
+ DisconnectedMessage.decode = function decode(reader, length) {
3429
+ if (!(reader instanceof $Reader))
3430
+ reader = $Reader.create(reader);
3431
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.DownstreamMessage.SystemMessage.DisconnectedMessage();
3432
+ while (reader.pos < end) {
3433
+ let tag = reader.uint32();
3434
+ switch (tag >>> 3) {
3435
+ case 2: {
3436
+ message.reason = reader.string();
3437
+ break;
3438
+ }
3439
+ default:
3440
+ reader.skipType(tag & 7);
3441
+ break;
3442
+ }
3443
+ }
3444
+ return message;
3445
+ };
3446
+
3447
+ /**
3448
+ * Decodes a DisconnectedMessage message from the specified reader or buffer, length delimited.
3449
+ * @function decodeDelimited
3450
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3451
+ * @static
3452
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3453
+ * @returns {DownstreamMessage.SystemMessage.DisconnectedMessage} DisconnectedMessage
3454
+ * @throws {Error} If the payload is not a reader or valid buffer
3455
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3456
+ */
3457
+ DisconnectedMessage.decodeDelimited = function decodeDelimited(reader) {
3458
+ if (!(reader instanceof $Reader))
3459
+ reader = new $Reader(reader);
3460
+ return this.decode(reader, reader.uint32());
3461
+ };
3462
+
3463
+ /**
3464
+ * Verifies a DisconnectedMessage message.
3465
+ * @function verify
3466
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3467
+ * @static
3468
+ * @param {Object.<string,*>} message Plain object to verify
3469
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
3470
+ */
3471
+ DisconnectedMessage.verify = function verify(message) {
3472
+ if (typeof message !== "object" || message === null)
3473
+ return "object expected";
3474
+ if (message.reason != null && message.hasOwnProperty("reason"))
3475
+ if (!$util.isString(message.reason))
3476
+ return "reason: string expected";
3477
+ return null;
3478
+ };
3479
+
3480
+ /**
3481
+ * Creates a DisconnectedMessage message from a plain object. Also converts values to their respective internal types.
3482
+ * @function fromObject
3483
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3484
+ * @static
3485
+ * @param {Object.<string,*>} object Plain object
3486
+ * @returns {DownstreamMessage.SystemMessage.DisconnectedMessage} DisconnectedMessage
3487
+ */
3488
+ DisconnectedMessage.fromObject = function fromObject(object) {
3489
+ if (object instanceof $root.DownstreamMessage.SystemMessage.DisconnectedMessage)
3490
+ return object;
3491
+ let message = new $root.DownstreamMessage.SystemMessage.DisconnectedMessage();
3492
+ if (object.reason != null)
3493
+ message.reason = String(object.reason);
3494
+ return message;
3495
+ };
3496
+
3497
+ /**
3498
+ * Creates a plain object from a DisconnectedMessage message. Also converts values to other types if specified.
3499
+ * @function toObject
3500
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3501
+ * @static
3502
+ * @param {DownstreamMessage.SystemMessage.DisconnectedMessage} message DisconnectedMessage
3503
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3504
+ * @returns {Object.<string,*>} Plain object
3505
+ */
3506
+ DisconnectedMessage.toObject = function toObject(message, options) {
3507
+ if (!options)
3508
+ options = {};
3509
+ let object = {};
3510
+ if (options.defaults)
3511
+ object.reason = "";
3512
+ if (message.reason != null && message.hasOwnProperty("reason"))
3513
+ object.reason = message.reason;
3514
+ return object;
3515
+ };
3516
+
3517
+ /**
3518
+ * Converts this DisconnectedMessage to JSON.
3519
+ * @function toJSON
3520
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3521
+ * @instance
3522
+ * @returns {Object.<string,*>} JSON object
3523
+ */
3524
+ DisconnectedMessage.prototype.toJSON = function toJSON() {
3525
+ return this.constructor.toObject(this, undefined);
3526
+ };
3527
+
3528
+ /**
3529
+ * Gets the default type url for DisconnectedMessage
3530
+ * @function getTypeUrl
3531
+ * @memberof DownstreamMessage.SystemMessage.DisconnectedMessage
3532
+ * @static
3533
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3534
+ * @returns {string} The default type url
3535
+ */
3536
+ DisconnectedMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3537
+ if (typeUrlPrefix === undefined) {
3538
+ typeUrlPrefix = "type.googleapis.com";
3539
+ }
3540
+ return typeUrlPrefix + "/DownstreamMessage.SystemMessage.DisconnectedMessage";
3541
+ };
3542
+
3543
+ return DisconnectedMessage;
3544
+ })();
3545
+
3546
+ return SystemMessage;
3547
+ })();
3548
+
3549
+ return DownstreamMessage;
3550
+ })();
3551
+
3552
+ const MessageData = $root.MessageData = (() => {
3553
+
3554
+ /**
3555
+ * Properties of a MessageData.
3556
+ * @exports IMessageData
3557
+ * @interface IMessageData
3558
+ * @property {string|null} [textData] MessageData textData
3559
+ * @property {Uint8Array|null} [binaryData] MessageData binaryData
3560
+ * @property {google.protobuf.IAny|null} [protobufData] MessageData protobufData
3561
+ * @property {string|null} [jsonData] MessageData jsonData
3562
+ */
3563
+
3564
+ /**
3565
+ * Constructs a new MessageData.
3566
+ * @exports MessageData
3567
+ * @classdesc Represents a MessageData.
3568
+ * @implements IMessageData
3569
+ * @constructor
3570
+ * @param {IMessageData=} [properties] Properties to set
3571
+ */
3572
+ function MessageData(properties) {
3573
+ if (properties)
3574
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3575
+ if (properties[keys[i]] != null)
3576
+ this[keys[i]] = properties[keys[i]];
3577
+ }
3578
+
3579
+ /**
3580
+ * MessageData textData.
3581
+ * @member {string|null|undefined} textData
3582
+ * @memberof MessageData
3583
+ * @instance
3584
+ */
3585
+ MessageData.prototype.textData = null;
3586
+
3587
+ /**
3588
+ * MessageData binaryData.
3589
+ * @member {Uint8Array|null|undefined} binaryData
3590
+ * @memberof MessageData
3591
+ * @instance
3592
+ */
3593
+ MessageData.prototype.binaryData = null;
3594
+
3595
+ /**
3596
+ * MessageData protobufData.
3597
+ * @member {google.protobuf.IAny|null|undefined} protobufData
3598
+ * @memberof MessageData
3599
+ * @instance
3600
+ */
3601
+ MessageData.prototype.protobufData = null;
3602
+
3603
+ /**
3604
+ * MessageData jsonData.
3605
+ * @member {string|null|undefined} jsonData
3606
+ * @memberof MessageData
3607
+ * @instance
3608
+ */
3609
+ MessageData.prototype.jsonData = null;
3610
+
3611
+ // OneOf field names bound to virtual getters and setters
3612
+ let $oneOfFields;
3613
+
3614
+ /**
3615
+ * MessageData data.
3616
+ * @member {"textData"|"binaryData"|"protobufData"|"jsonData"|undefined} data
3617
+ * @memberof MessageData
3618
+ * @instance
3619
+ */
3620
+ Object.defineProperty(MessageData.prototype, "data", {
3621
+ get: $util.oneOfGetter($oneOfFields = ["textData", "binaryData", "protobufData", "jsonData"]),
3622
+ set: $util.oneOfSetter($oneOfFields)
3623
+ });
3624
+
3625
+ /**
3626
+ * Creates a new MessageData instance using the specified properties.
3627
+ * @function create
3628
+ * @memberof MessageData
3629
+ * @static
3630
+ * @param {IMessageData=} [properties] Properties to set
3631
+ * @returns {MessageData} MessageData instance
3632
+ */
3633
+ MessageData.create = function create(properties) {
3634
+ return new MessageData(properties);
3635
+ };
3636
+
3637
+ /**
3638
+ * Encodes the specified MessageData message. Does not implicitly {@link MessageData.verify|verify} messages.
3639
+ * @function encode
3640
+ * @memberof MessageData
3641
+ * @static
3642
+ * @param {IMessageData} message MessageData message or plain object to encode
3643
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3644
+ * @returns {$protobuf.Writer} Writer
3645
+ */
3646
+ MessageData.encode = function encode(message, writer) {
3647
+ if (!writer)
3648
+ writer = $Writer.create();
3649
+ if (message.textData != null && Object.hasOwnProperty.call(message, "textData"))
3650
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.textData);
3651
+ if (message.binaryData != null && Object.hasOwnProperty.call(message, "binaryData"))
3652
+ writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.binaryData);
3653
+ if (message.protobufData != null && Object.hasOwnProperty.call(message, "protobufData"))
3654
+ $root.google.protobuf.Any.encode(message.protobufData, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
3655
+ if (message.jsonData != null && Object.hasOwnProperty.call(message, "jsonData"))
3656
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.jsonData);
3657
+ return writer;
3658
+ };
3659
+
3660
+ /**
3661
+ * Encodes the specified MessageData message, length delimited. Does not implicitly {@link MessageData.verify|verify} messages.
3662
+ * @function encodeDelimited
3663
+ * @memberof MessageData
3664
+ * @static
3665
+ * @param {IMessageData} message MessageData message or plain object to encode
3666
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3667
+ * @returns {$protobuf.Writer} Writer
3668
+ */
3669
+ MessageData.encodeDelimited = function encodeDelimited(message, writer) {
3670
+ return this.encode(message, writer).ldelim();
3671
+ };
3672
+
3673
+ /**
3674
+ * Decodes a MessageData message from the specified reader or buffer.
3675
+ * @function decode
3676
+ * @memberof MessageData
3677
+ * @static
3678
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3679
+ * @param {number} [length] Message length if known beforehand
3680
+ * @returns {MessageData} MessageData
3681
+ * @throws {Error} If the payload is not a reader or valid buffer
3682
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3683
+ */
3684
+ MessageData.decode = function decode(reader, length) {
3685
+ if (!(reader instanceof $Reader))
3686
+ reader = $Reader.create(reader);
3687
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.MessageData();
3688
+ while (reader.pos < end) {
3689
+ let tag = reader.uint32();
3690
+ switch (tag >>> 3) {
3691
+ case 1: {
3692
+ message.textData = reader.string();
3693
+ break;
3694
+ }
3695
+ case 2: {
3696
+ message.binaryData = reader.bytes();
3697
+ break;
3698
+ }
3699
+ case 3: {
3700
+ message.protobufData = $root.google.protobuf.Any.decode(reader, reader.uint32());
3701
+ break;
3702
+ }
3703
+ case 4: {
3704
+ message.jsonData = reader.string();
3705
+ break;
3706
+ }
3707
+ default:
3708
+ reader.skipType(tag & 7);
3709
+ break;
3710
+ }
3711
+ }
3712
+ return message;
3713
+ };
3714
+
3715
+ /**
3716
+ * Decodes a MessageData message from the specified reader or buffer, length delimited.
3717
+ * @function decodeDelimited
3718
+ * @memberof MessageData
3719
+ * @static
3720
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3721
+ * @returns {MessageData} MessageData
3722
+ * @throws {Error} If the payload is not a reader or valid buffer
3723
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3724
+ */
3725
+ MessageData.decodeDelimited = function decodeDelimited(reader) {
3726
+ if (!(reader instanceof $Reader))
3727
+ reader = new $Reader(reader);
3728
+ return this.decode(reader, reader.uint32());
3729
+ };
3730
+
3731
+ /**
3732
+ * Verifies a MessageData message.
3733
+ * @function verify
3734
+ * @memberof MessageData
3735
+ * @static
3736
+ * @param {Object.<string,*>} message Plain object to verify
3737
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
3738
+ */
3739
+ MessageData.verify = function verify(message) {
3740
+ if (typeof message !== "object" || message === null)
3741
+ return "object expected";
3742
+ let properties = {};
3743
+ if (message.textData != null && message.hasOwnProperty("textData")) {
3744
+ properties.data = 1;
3745
+ if (!$util.isString(message.textData))
3746
+ return "textData: string expected";
3747
+ }
3748
+ if (message.binaryData != null && message.hasOwnProperty("binaryData")) {
3749
+ if (properties.data === 1)
3750
+ return "data: multiple values";
3751
+ properties.data = 1;
3752
+ if (!(message.binaryData && typeof message.binaryData.length === "number" || $util.isString(message.binaryData)))
3753
+ return "binaryData: buffer expected";
3754
+ }
3755
+ if (message.protobufData != null && message.hasOwnProperty("protobufData")) {
3756
+ if (properties.data === 1)
3757
+ return "data: multiple values";
3758
+ properties.data = 1;
3759
+ {
3760
+ let error = $root.google.protobuf.Any.verify(message.protobufData);
3761
+ if (error)
3762
+ return "protobufData." + error;
3763
+ }
3764
+ }
3765
+ if (message.jsonData != null && message.hasOwnProperty("jsonData")) {
3766
+ if (properties.data === 1)
3767
+ return "data: multiple values";
3768
+ properties.data = 1;
3769
+ if (!$util.isString(message.jsonData))
3770
+ return "jsonData: string expected";
3771
+ }
3772
+ return null;
3773
+ };
3774
+
3775
+ /**
3776
+ * Creates a MessageData message from a plain object. Also converts values to their respective internal types.
3777
+ * @function fromObject
3778
+ * @memberof MessageData
3779
+ * @static
3780
+ * @param {Object.<string,*>} object Plain object
3781
+ * @returns {MessageData} MessageData
3782
+ */
3783
+ MessageData.fromObject = function fromObject(object) {
3784
+ if (object instanceof $root.MessageData)
3785
+ return object;
3786
+ let message = new $root.MessageData();
3787
+ if (object.textData != null)
3788
+ message.textData = String(object.textData);
3789
+ if (object.binaryData != null)
3790
+ if (typeof object.binaryData === "string")
3791
+ $util.base64.decode(object.binaryData, message.binaryData = $util.newBuffer($util.base64.length(object.binaryData)), 0);
3792
+ else if (object.binaryData.length >= 0)
3793
+ message.binaryData = object.binaryData;
3794
+ if (object.protobufData != null) {
3795
+ if (typeof object.protobufData !== "object")
3796
+ throw TypeError(".MessageData.protobufData: object expected");
3797
+ message.protobufData = $root.google.protobuf.Any.fromObject(object.protobufData);
3798
+ }
3799
+ if (object.jsonData != null)
3800
+ message.jsonData = String(object.jsonData);
3801
+ return message;
3802
+ };
3803
+
3804
+ /**
3805
+ * Creates a plain object from a MessageData message. Also converts values to other types if specified.
3806
+ * @function toObject
3807
+ * @memberof MessageData
3808
+ * @static
3809
+ * @param {MessageData} message MessageData
3810
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3811
+ * @returns {Object.<string,*>} Plain object
3812
+ */
3813
+ MessageData.toObject = function toObject(message, options) {
3814
+ if (!options)
3815
+ options = {};
3816
+ let object = {};
3817
+ if (message.textData != null && message.hasOwnProperty("textData")) {
3818
+ object.textData = message.textData;
3819
+ if (options.oneofs)
3820
+ object.data = "textData";
3821
+ }
3822
+ if (message.binaryData != null && message.hasOwnProperty("binaryData")) {
3823
+ object.binaryData = options.bytes === String ? $util.base64.encode(message.binaryData, 0, message.binaryData.length) : options.bytes === Array ? Array.prototype.slice.call(message.binaryData) : message.binaryData;
3824
+ if (options.oneofs)
3825
+ object.data = "binaryData";
3826
+ }
3827
+ if (message.protobufData != null && message.hasOwnProperty("protobufData")) {
3828
+ object.protobufData = $root.google.protobuf.Any.toObject(message.protobufData, options);
3829
+ if (options.oneofs)
3830
+ object.data = "protobufData";
3831
+ }
3832
+ if (message.jsonData != null && message.hasOwnProperty("jsonData")) {
3833
+ object.jsonData = message.jsonData;
3834
+ if (options.oneofs)
3835
+ object.data = "jsonData";
3836
+ }
3837
+ return object;
3838
+ };
3839
+
3840
+ /**
3841
+ * Converts this MessageData to JSON.
3842
+ * @function toJSON
3843
+ * @memberof MessageData
3844
+ * @instance
3845
+ * @returns {Object.<string,*>} JSON object
3846
+ */
3847
+ MessageData.prototype.toJSON = function toJSON() {
3848
+ return this.constructor.toObject(this, undefined);
3849
+ };
3850
+
3851
+ /**
3852
+ * Gets the default type url for MessageData
3853
+ * @function getTypeUrl
3854
+ * @memberof MessageData
3855
+ * @static
3856
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3857
+ * @returns {string} The default type url
3858
+ */
3859
+ MessageData.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3860
+ if (typeUrlPrefix === undefined) {
3861
+ typeUrlPrefix = "type.googleapis.com";
3862
+ }
3863
+ return typeUrlPrefix + "/MessageData";
3864
+ };
3865
+
3866
+ return MessageData;
3867
+ })();
3868
+
3869
+ const google = $root.google = (() => {
3870
+
3871
+ /**
3872
+ * Namespace google.
3873
+ * @exports google
3874
+ * @namespace
3875
+ */
3876
+ const google = {};
3877
+
3878
+ google.protobuf = (function() {
3879
+
3880
+ /**
3881
+ * Namespace protobuf.
3882
+ * @memberof google
3883
+ * @namespace
3884
+ */
3885
+ const protobuf = {};
3886
+
3887
+ protobuf.Any = (function() {
3888
+
3889
+ /**
3890
+ * Properties of an Any.
3891
+ * @memberof google.protobuf
3892
+ * @interface IAny
3893
+ * @property {string|null} [type_url] Any type_url
3894
+ * @property {Uint8Array|null} [value] Any value
3895
+ */
3896
+
3897
+ /**
3898
+ * Constructs a new Any.
3899
+ * @memberof google.protobuf
3900
+ * @classdesc Represents an Any.
3901
+ * @implements IAny
3902
+ * @constructor
3903
+ * @param {google.protobuf.IAny=} [properties] Properties to set
3904
+ */
3905
+ function Any(properties) {
3906
+ if (properties)
3907
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3908
+ if (properties[keys[i]] != null)
3909
+ this[keys[i]] = properties[keys[i]];
3910
+ }
3911
+
3912
+ /**
3913
+ * Any type_url.
3914
+ * @member {string} type_url
3915
+ * @memberof google.protobuf.Any
3916
+ * @instance
3917
+ */
3918
+ Any.prototype.type_url = "";
3919
+
3920
+ /**
3921
+ * Any value.
3922
+ * @member {Uint8Array} value
3923
+ * @memberof google.protobuf.Any
3924
+ * @instance
3925
+ */
3926
+ Any.prototype.value = $util.newBuffer([]);
3927
+
3928
+ /**
3929
+ * Creates a new Any instance using the specified properties.
3930
+ * @function create
3931
+ * @memberof google.protobuf.Any
3932
+ * @static
3933
+ * @param {google.protobuf.IAny=} [properties] Properties to set
3934
+ * @returns {google.protobuf.Any} Any instance
3935
+ */
3936
+ Any.create = function create(properties) {
3937
+ return new Any(properties);
3938
+ };
3939
+
3940
+ /**
3941
+ * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
3942
+ * @function encode
3943
+ * @memberof google.protobuf.Any
3944
+ * @static
3945
+ * @param {google.protobuf.IAny} message Any message or plain object to encode
3946
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3947
+ * @returns {$protobuf.Writer} Writer
3948
+ */
3949
+ Any.encode = function encode(message, writer) {
3950
+ if (!writer)
3951
+ writer = $Writer.create();
3952
+ if (message.type_url != null && Object.hasOwnProperty.call(message, "type_url"))
3953
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.type_url);
3954
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
3955
+ writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value);
3956
+ return writer;
3957
+ };
3958
+
3959
+ /**
3960
+ * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
3961
+ * @function encodeDelimited
3962
+ * @memberof google.protobuf.Any
3963
+ * @static
3964
+ * @param {google.protobuf.IAny} message Any message or plain object to encode
3965
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3966
+ * @returns {$protobuf.Writer} Writer
3967
+ */
3968
+ Any.encodeDelimited = function encodeDelimited(message, writer) {
3969
+ return this.encode(message, writer).ldelim();
3970
+ };
3971
+
3972
+ /**
3973
+ * Decodes an Any message from the specified reader or buffer.
3974
+ * @function decode
3975
+ * @memberof google.protobuf.Any
3976
+ * @static
3977
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3978
+ * @param {number} [length] Message length if known beforehand
3979
+ * @returns {google.protobuf.Any} Any
3980
+ * @throws {Error} If the payload is not a reader or valid buffer
3981
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3982
+ */
3983
+ Any.decode = function decode(reader, length) {
3984
+ if (!(reader instanceof $Reader))
3985
+ reader = $Reader.create(reader);
3986
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any();
3987
+ while (reader.pos < end) {
3988
+ let tag = reader.uint32();
3989
+ switch (tag >>> 3) {
3990
+ case 1: {
3991
+ message.type_url = reader.string();
3992
+ break;
3993
+ }
3994
+ case 2: {
3995
+ message.value = reader.bytes();
3996
+ break;
3997
+ }
3998
+ default:
3999
+ reader.skipType(tag & 7);
4000
+ break;
4001
+ }
4002
+ }
4003
+ return message;
4004
+ };
4005
+
4006
+ /**
4007
+ * Decodes an Any message from the specified reader or buffer, length delimited.
4008
+ * @function decodeDelimited
4009
+ * @memberof google.protobuf.Any
4010
+ * @static
4011
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4012
+ * @returns {google.protobuf.Any} Any
4013
+ * @throws {Error} If the payload is not a reader or valid buffer
4014
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4015
+ */
4016
+ Any.decodeDelimited = function decodeDelimited(reader) {
4017
+ if (!(reader instanceof $Reader))
4018
+ reader = new $Reader(reader);
4019
+ return this.decode(reader, reader.uint32());
4020
+ };
4021
+
4022
+ /**
4023
+ * Verifies an Any message.
4024
+ * @function verify
4025
+ * @memberof google.protobuf.Any
4026
+ * @static
4027
+ * @param {Object.<string,*>} message Plain object to verify
4028
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
4029
+ */
4030
+ Any.verify = function verify(message) {
4031
+ if (typeof message !== "object" || message === null)
4032
+ return "object expected";
4033
+ if (message.type_url != null && message.hasOwnProperty("type_url"))
4034
+ if (!$util.isString(message.type_url))
4035
+ return "type_url: string expected";
4036
+ if (message.value != null && message.hasOwnProperty("value"))
4037
+ if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value)))
4038
+ return "value: buffer expected";
4039
+ return null;
4040
+ };
4041
+
4042
+ /**
4043
+ * Creates an Any message from a plain object. Also converts values to their respective internal types.
4044
+ * @function fromObject
4045
+ * @memberof google.protobuf.Any
4046
+ * @static
4047
+ * @param {Object.<string,*>} object Plain object
4048
+ * @returns {google.protobuf.Any} Any
4049
+ */
4050
+ Any.fromObject = function fromObject(object) {
4051
+ if (object instanceof $root.google.protobuf.Any)
4052
+ return object;
4053
+ let message = new $root.google.protobuf.Any();
4054
+ if (object.type_url != null)
4055
+ message.type_url = String(object.type_url);
4056
+ if (object.value != null)
4057
+ if (typeof object.value === "string")
4058
+ $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0);
4059
+ else if (object.value.length >= 0)
4060
+ message.value = object.value;
4061
+ return message;
4062
+ };
4063
+
4064
+ /**
4065
+ * Creates a plain object from an Any message. Also converts values to other types if specified.
4066
+ * @function toObject
4067
+ * @memberof google.protobuf.Any
4068
+ * @static
4069
+ * @param {google.protobuf.Any} message Any
4070
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
4071
+ * @returns {Object.<string,*>} Plain object
4072
+ */
4073
+ Any.toObject = function toObject(message, options) {
4074
+ if (!options)
4075
+ options = {};
4076
+ let object = {};
4077
+ if (options.defaults) {
4078
+ object.type_url = "";
4079
+ if (options.bytes === String)
4080
+ object.value = "";
4081
+ else {
4082
+ object.value = [];
4083
+ if (options.bytes !== Array)
4084
+ object.value = $util.newBuffer(object.value);
4085
+ }
4086
+ }
4087
+ if (message.type_url != null && message.hasOwnProperty("type_url"))
4088
+ object.type_url = message.type_url;
4089
+ if (message.value != null && message.hasOwnProperty("value"))
4090
+ object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value;
4091
+ return object;
4092
+ };
4093
+
4094
+ /**
4095
+ * Converts this Any to JSON.
4096
+ * @function toJSON
4097
+ * @memberof google.protobuf.Any
4098
+ * @instance
4099
+ * @returns {Object.<string,*>} JSON object
4100
+ */
4101
+ Any.prototype.toJSON = function toJSON() {
4102
+ return this.constructor.toObject(this, undefined);
4103
+ };
4104
+
4105
+ /**
4106
+ * Gets the default type url for Any
4107
+ * @function getTypeUrl
4108
+ * @memberof google.protobuf.Any
4109
+ * @static
4110
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
4111
+ * @returns {string} The default type url
4112
+ */
4113
+ Any.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
4114
+ if (typeUrlPrefix === undefined) {
4115
+ typeUrlPrefix = "type.googleapis.com";
4116
+ }
4117
+ return typeUrlPrefix + "/google.protobuf.Any";
4118
+ };
4119
+
4120
+ return Any;
4121
+ })();
4122
+
4123
+ return protobuf;
4124
+ })();
4125
+
4126
+ return google;
4127
+ })();
4128
+
4129
+ // Copyright (c) Microsoft Corporation.
4130
+ /**
4131
+ * The "protobuf.reliable.webpubsub.azure.v1" protocol
4132
+ */
4133
+ class WebPubSubProtobufProtocolBase {
4134
+ /**
4135
+ * Creates WebPubSubMessage objects from the specified serialized representation.
4136
+ * @param input - The serialized representation
4137
+ */
4138
+ static parseMessages(input) {
4139
+ const downstream = DownstreamMessage.decode(new Uint8Array(input));
4140
+ if (downstream.ackMessage) {
4141
+ const ack = {
4142
+ kind: "ack",
4143
+ ackId: this._getNumber(downstream.ackMessage.ackId),
4144
+ success: downstream.ackMessage.success,
4145
+ };
4146
+ if (downstream.ackMessage.error) {
4147
+ ack.error = {
4148
+ name: downstream.ackMessage.error.name,
4149
+ message: downstream.ackMessage.error.message,
4150
+ };
4151
+ }
4152
+ return ack;
4153
+ }
4154
+ else if (downstream.systemMessage) {
4155
+ if (downstream.systemMessage.connectedMessage) {
4156
+ const msg = downstream.systemMessage.connectedMessage;
4157
+ return {
4158
+ kind: "connected",
4159
+ connectionId: msg.connectionId,
4160
+ userId: msg.userId,
4161
+ reconnectionToken: msg.reconnectionToken,
4162
+ };
4163
+ }
4164
+ else if (downstream.systemMessage.disconnectedMessage) {
4165
+ const msg = downstream.systemMessage.disconnectedMessage;
4166
+ return { kind: "disconnected", message: msg.reason };
4167
+ }
4168
+ else {
4169
+ return null;
4170
+ }
4171
+ }
4172
+ else if (downstream.dataMessage) {
4173
+ const sequenceId = this._getNumber(downstream.dataMessage.sequenceId);
4174
+ const messageData = downstream.dataMessage.data;
4175
+ let dataType;
4176
+ let data;
4177
+ if (messageData.textData) {
4178
+ dataType = "text";
4179
+ data = messageData.textData;
4180
+ }
4181
+ else if (messageData.jsonData) {
4182
+ dataType = "json";
4183
+ data = JSON.parse(messageData.jsonData);
4184
+ }
4185
+ else if (messageData.binaryData) {
4186
+ dataType = "binary";
4187
+ data = messageData.binaryData.buffer.slice(messageData.binaryData.byteOffset, messageData.binaryData.byteLength + messageData.binaryData.byteOffset);
4188
+ }
4189
+ else if (messageData.protobufData) {
4190
+ dataType = "protobuf";
4191
+ data = messageData.protobufData;
4192
+ }
4193
+ else {
4194
+ return null;
4195
+ }
4196
+ if (downstream.dataMessage.from === "group") {
4197
+ return {
4198
+ kind: "groupData",
4199
+ dataType: dataType,
4200
+ data: data,
4201
+ sequenceId: sequenceId,
4202
+ group: downstream.dataMessage.group,
4203
+ };
4204
+ }
4205
+ else if (downstream.dataMessage.from === "server") {
4206
+ return {
4207
+ kind: "serverData",
4208
+ dataType: dataType,
4209
+ data: data,
4210
+ sequenceId: sequenceId,
4211
+ };
4212
+ }
4213
+ else {
4214
+ return null;
4215
+ }
4216
+ }
4217
+ else {
4218
+ return null;
4219
+ }
4220
+ }
4221
+ /**
4222
+ * Write WebPubSubMessage to string
4223
+ * @param message - The message to be written
4224
+ */
4225
+ static writeMessage(message) {
4226
+ let upstream;
4227
+ switch (message.kind) {
4228
+ case "joinGroup": {
4229
+ const joinGroup = UpstreamMessage.JoinGroupMessage.create({
4230
+ group: message.group,
4231
+ ackId: message.ackId,
4232
+ });
4233
+ upstream = UpstreamMessage.create({ joinGroupMessage: joinGroup });
4234
+ break;
4235
+ }
4236
+ case "leaveGroup": {
4237
+ const leaveGroup = UpstreamMessage.LeaveGroupMessage.create({
4238
+ group: message.group,
4239
+ ackId: message.ackId,
4240
+ });
4241
+ upstream = UpstreamMessage.create({ leaveGroupMessage: leaveGroup });
4242
+ break;
4243
+ }
4244
+ case "sendToGroup": {
4245
+ const sendToGroup = UpstreamMessage.SendToGroupMessage.create({
4246
+ group: message.group,
4247
+ ackId: message.ackId,
4248
+ data: this._getIMessageData(message.data, message.dataType),
4249
+ noEcho: message.noEcho,
4250
+ });
4251
+ upstream = UpstreamMessage.create({ sendToGroupMessage: sendToGroup });
4252
+ break;
4253
+ }
4254
+ case "sendEvent": {
4255
+ const sendEvent = UpstreamMessage.EventMessage.create({
4256
+ event: message.event,
4257
+ ackId: message.ackId,
4258
+ data: this._getIMessageData(message.data, message.dataType),
4259
+ });
4260
+ upstream = UpstreamMessage.create({ eventMessage: sendEvent });
4261
+ break;
4262
+ }
4263
+ case "sequenceAck": {
4264
+ const sequenceAck = UpstreamMessage.SequenceAckMessage.create({
4265
+ sequenceId: message.sequenceId,
4266
+ });
4267
+ upstream = UpstreamMessage.create({ sequenceAckMessage: sequenceAck });
4268
+ break;
4269
+ }
4270
+ default:
4271
+ throw new TypeError(`kind is not supported: ${message.kind}`);
4272
+ }
4273
+ return UpstreamMessage.encode(upstream).finish();
4274
+ }
4275
+ static _getIMessageData(data, dataType) {
4276
+ switch (dataType) {
4277
+ case "binary":
4278
+ if (!(data instanceof ArrayBuffer)) {
4279
+ throw new TypeError("Message must be a ArrayBuffer.");
4280
+ }
4281
+ return MessageData.create({ binaryData: new Uint8Array(data) });
4282
+ case "protobuf":
4283
+ if (WebPubSubProtobufProtocolBase._isIAny(data)) {
4284
+ return MessageData.create({
4285
+ protobufData: google.protobuf.Any.create({
4286
+ type_url: data.type_url,
4287
+ value: new Uint8Array(data.value),
4288
+ }),
4289
+ });
4290
+ }
4291
+ throw new TypeError("Message must be a google.protobuf.Any.");
4292
+ case "text":
4293
+ if (typeof data !== "string") {
4294
+ throw new TypeError("Message must be a string.");
4295
+ }
4296
+ return MessageData.create({ textData: data });
4297
+ case "json":
4298
+ return MessageData.create({ jsonData: JSON.stringify(data) });
4299
+ default:
4300
+ throw new TypeError(`dataType is not supported: ${dataType}`);
4301
+ }
4302
+ }
4303
+ static _getNumber(value) {
4304
+ if (value === null || value === undefined || typeof value === "number") {
4305
+ return value;
4306
+ }
4307
+ return value.toNumber();
4308
+ }
4309
+ static _isIAny(obj) {
4310
+ return "type_url" in obj && "value" in obj;
4311
+ }
4312
+ }
4313
+
4314
+ // Copyright (c) Microsoft Corporation.
4315
+ /**
4316
+ * The "protobuf.reliable.webpubsub.azure.v1" protocol
4317
+ */
4318
+ class WebPubSubProtobufProtocolImpl {
4319
+ constructor() {
4320
+ /**
4321
+ * True if the protocol supports reliable features
4322
+ */
4323
+ this.isReliableSubProtocol = false;
4324
+ /**
4325
+ * The name of subprotocol. Name will be used in websocket subprotocol
4326
+ */
4327
+ this.name = "protobuf.webpubsub.azure.v1";
4328
+ }
4329
+ /**
4330
+ * Creates WebPubSubMessage objects from the specified serialized representation.
4331
+ * @param input - The serialized representation
4332
+ */
4333
+ parseMessages(input) {
4334
+ return WebPubSubProtobufProtocolBase.parseMessages(input);
4335
+ }
4336
+ /**
4337
+ * Write WebPubSubMessage to string
4338
+ * @param message - The message to be written
4339
+ */
4340
+ writeMessage(message) {
4341
+ return WebPubSubProtobufProtocolBase.writeMessage(message);
4342
+ }
4343
+ }
4344
+
4345
+ // Copyright (c) Microsoft Corporation.
4346
+ /**
4347
+ * The "protobuf.reliable.webpubsub.azure.v1" protocol
4348
+ */
4349
+ class WebPubSubProtobufReliableProtocolImpl {
4350
+ constructor() {
4351
+ /**
4352
+ * True if the protocol supports reliable features
4353
+ */
4354
+ this.isReliableSubProtocol = true;
4355
+ /**
4356
+ * The name of subprotocol. Name will be used in websocket subprotocol
4357
+ */
4358
+ this.name = "protobuf.reliable.webpubsub.azure.v1";
4359
+ }
4360
+ /**
4361
+ * Creates WebPubSubMessage objects from the specified serialized representation.
4362
+ * @param input - The serialized representation
4363
+ */
4364
+ parseMessages(input) {
4365
+ return WebPubSubProtobufProtocolBase.parseMessages(input);
4366
+ }
4367
+ /**
4368
+ * Write WebPubSubMessage to string
4369
+ * @param message - The message to be written
4370
+ */
4371
+ writeMessage(message) {
4372
+ return WebPubSubProtobufProtocolBase.writeMessage(message);
4373
+ }
4374
+ }
4375
+
4376
+ // Copyright (c) Microsoft Corporation.
4377
+ /**
4378
+ * Return the "protobuf.webpubsub.azure.v1" protocol
4379
+ */
4380
+ const WebPubSubProtobufProtocol = () => {
4381
+ return new WebPubSubProtobufProtocolImpl();
4382
+ };
4383
+ /**
4384
+ * Return the "protobuf.reliable.webpubsub.azure.v1" protocol
4385
+ */
4386
+ const WebPubSubProtobufReliableProtocol = () => {
4387
+ return new WebPubSubProtobufReliableProtocolImpl();
4388
+ };
4389
+
4390
+ exports.WebPubSubProtobufProtocol = WebPubSubProtobufProtocol;
4391
+ exports.WebPubSubProtobufReliableProtocol = WebPubSubProtobufReliableProtocol;
4392
+ //# sourceMappingURL=index.js.map