UNPKG

@bitrix24/b24jssdk

Version:

Bitrix24 REST API JavaScript SDK

1 lines 98.8 kB
{"version":3,"file":"model.mjs","sources":["../../../../src/pullClient/protobuf/model.js"],"sourcesContent":["import $protobuf from './protobuf.js'\n\n/*eslint-disable block-scoped-var, no-redeclare, no-control-regex, no-prototype-builtins*/\n\"use strict\";\n\n// Common aliases\nlet $Reader = $protobuf.Reader,\n\t$Writer = $protobuf.Writer,\n\t$util = $protobuf.util\n\n// Exported root namespace\nexport const $root =\n\t$protobuf.roots['push-server'] || ($protobuf.roots['push-server'] = {})\n\n$root.RequestBatch = (function () {\n\t/**\n\t * Properties of a RequestBatch.\n\t * @exports IRequestBatch\n\t * @interface IRequestBatch\n\t * @property {Array.<Request>|null} [requests] RequestBatch requests\n\t */\n\t\n\t/**\n\t * Constructs a new RequestBatch.\n\t * @exports RequestBatch\n\t * @classdesc Represents a RequestBatch.\n\t * @implements IRequestBatch\n\t * @constructor\n\t * @param {IRequestBatch=} [properties] Properties to set\n\t */\n\tfunction RequestBatch(properties) {\n\t\tthis.requests = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * RequestBatch requests.\n\t * @member {Array.<Request>} requests\n\t * @memberof RequestBatch\n\t * @instance\n\t */\n\tRequestBatch.prototype.requests = $util.emptyArray\n\t\n\t/**\n\t * Creates a new RequestBatch instance using the specified properties.\n\t * @function create\n\t * @memberof RequestBatch\n\t * @static\n\t * @param {IRequestBatch=} [properties] Properties to set\n\t * @returns {RequestBatch} RequestBatch instance\n\t */\n\tRequestBatch.create = function create(properties) {\n\t\treturn new RequestBatch(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified RequestBatch message. Does not implicitly {@link RequestBatch.verify|verify} messages.\n\t * @function encode\n\t * @memberof RequestBatch\n\t * @static\n\t * @param {RequestBatch} message RequestBatch message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tRequestBatch.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.requests != null && message.requests.length) {\n\t\t\tfor (var i = 0; i < message.requests.length; ++i)\n\t\t\t\t$root.Request.encode(\n\t\t\t\t\tmessage.requests[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a RequestBatch message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof RequestBatch\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {RequestBatch} RequestBatch\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tRequestBatch.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.RequestBatch()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.requests && message.requests.length)) {\n\t\t\t\t\t\tmessage.requests = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.requests.push($root.Request.decode(reader, reader.uint32()))\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn RequestBatch\n})()\n\n$root.Request = (function () {\n\t/**\n\t * Properties of a Request.\n\t * @exports IRequest\n\t * @interface IRequest\n\t * @property {IncomingMessagesRequest|null} [incomingMessages] Request incomingMessages\n\t * @property {ChannelStatsRequest|null} [channelStats] Request channelStats\n\t * @property {ServerStatsRequest|null} [serverStats] Request serverStats\n\t */\n\t\n\t/**\n\t * Constructs a new Request.\n\t * @exports Request\n\t * @classdesc Represents a Request.\n\t * @implements IRequest\n\t * @constructor\n\t * @param {IRequest=} [properties] Properties to set\n\t */\n\tfunction Request(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * Request incomingMessages.\n\t * @member {IncomingMessagesRequest|null|undefined} incomingMessages\n\t * @memberof Request\n\t * @instance\n\t */\n\tRequest.prototype.incomingMessages = null\n\t\n\t/**\n\t * Request channelStats.\n\t * @member {ChannelStatsRequest|null|undefined} channelStats\n\t * @memberof Request\n\t * @instance\n\t */\n\tRequest.prototype.channelStats = null\n\t\n\t/**\n\t * Request serverStats.\n\t * @member {ServerStatsRequest|null|undefined} serverStats\n\t * @memberof Request\n\t * @instance\n\t */\n\tRequest.prototype.serverStats = null\n\t\n\t// OneOf field names bound to virtual getters and setters\n\tvar $oneOfFields\n\t\n\t/**\n\t * Request command.\n\t * @member {\"incomingMessages\"|\"channelStats\"|\"serverStats\"|undefined} command\n\t * @memberof Request\n\t * @instance\n\t */\n\tObject.defineProperty(Request.prototype, 'command', {\n\t\tget: $util.oneOfGetter(\n\t\t\t($oneOfFields = ['incomingMessages', 'channelStats', 'serverStats'])\n\t\t),\n\t\tset: $util.oneOfSetter($oneOfFields),\n\t})\n\t\n\t/**\n\t * Creates a new Request instance using the specified properties.\n\t * @function create\n\t * @memberof Request\n\t * @static\n\t * @param {IRequest=} [properties] Properties to set\n\t * @returns {Request} Request instance\n\t */\n\tRequest.create = function create(properties) {\n\t\treturn new Request(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified Request message. Does not implicitly {@link Request.verify|verify} messages.\n\t * @function encode\n\t * @memberof Request\n\t * @static\n\t * @param {Request} message Request message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tRequest.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (\n\t\t\tmessage.incomingMessages != null &&\n\t\t\tmessage.hasOwnProperty('incomingMessages')\n\t\t) {\n\t\t\t$root.IncomingMessagesRequest.encode(\n\t\t\t\tmessage.incomingMessages,\n\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\tif (\n\t\t\tmessage.channelStats != null &&\n\t\t\tmessage.hasOwnProperty('channelStats')\n\t\t) {\n\t\t\t$root.ChannelStatsRequest.encode(\n\t\t\t\tmessage.channelStats,\n\t\t\t\twriter.uint32(/* id 2, wireType 2 =*/ 18).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\tif (message.serverStats != null && message.hasOwnProperty('serverStats')) {\n\t\t\t$root.ServerStatsRequest.encode(\n\t\t\t\tmessage.serverStats,\n\t\t\t\twriter.uint32(/* id 3, wireType 2 =*/ 26).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a Request message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof Request\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {Request} Request\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tRequest.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.Request()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tmessage.incomingMessages = $root.IncomingMessagesRequest.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.channelStats = $root.ChannelStatsRequest.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tcase 3:\n\t\t\t\t\tmessage.serverStats = $root.ServerStatsRequest.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn Request\n})()\n\n$root.IncomingMessagesRequest = (function () {\n\t/**\n\t * Properties of an IncomingMessagesRequest.\n\t * @exports IIncomingMessagesRequest\n\t * @interface IIncomingMessagesRequest\n\t * @property {Array.<IncomingMessage>|null} [messages] IncomingMessagesRequest messages\n\t */\n\t\n\t/**\n\t * Constructs a new IncomingMessagesRequest.\n\t * @exports IncomingMessagesRequest\n\t * @classdesc Represents an IncomingMessagesRequest.\n\t * @implements IIncomingMessagesRequest\n\t * @constructor\n\t * @param {IIncomingMessagesRequest=} [properties] Properties to set\n\t */\n\tfunction IncomingMessagesRequest(properties) {\n\t\tthis.messages = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * IncomingMessagesRequest messages.\n\t * @member {Array.<IncomingMessage>} messages\n\t * @memberof IncomingMessagesRequest\n\t * @instance\n\t */\n\tIncomingMessagesRequest.prototype.messages = $util.emptyArray\n\t\n\t/**\n\t * Creates a new IncomingMessagesRequest instance using the specified properties.\n\t * @function create\n\t * @memberof IncomingMessagesRequest\n\t * @static\n\t * @param {IIncomingMessagesRequest=} [properties] Properties to set\n\t * @returns {IncomingMessagesRequest} IncomingMessagesRequest instance\n\t */\n\tIncomingMessagesRequest.create = function create(properties) {\n\t\treturn new IncomingMessagesRequest(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified IncomingMessagesRequest message. Does not implicitly {@link IncomingMessagesRequest.verify|verify} messages.\n\t * @function encode\n\t * @memberof IncomingMessagesRequest\n\t * @static\n\t * @param {IncomingMessagesRequest} message IncomingMessagesRequest message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tIncomingMessagesRequest.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.messages != null && message.messages.length) {\n\t\t\tfor (var i = 0; i < message.messages.length; ++i)\n\t\t\t\t$root.IncomingMessage.encode(\n\t\t\t\t\tmessage.messages[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes an IncomingMessagesRequest message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof IncomingMessagesRequest\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {IncomingMessagesRequest} IncomingMessagesRequest\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tIncomingMessagesRequest.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.IncomingMessagesRequest()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.messages && message.messages.length)) {\n\t\t\t\t\t\tmessage.messages = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.messages.push(\n\t\t\t\t\t\t$root.IncomingMessage.decode(reader, reader.uint32())\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn IncomingMessagesRequest\n})()\n\n$root.IncomingMessage = (function () {\n\t/**\n\t * Properties of an IncomingMessage.\n\t * @exports IIncomingMessage\n\t * @interface IIncomingMessage\n\t * @property {Array.<Receiver>|null} [receivers] IncomingMessage receivers\n\t * @property {Sender|null} [sender] IncomingMessage sender\n\t * @property {string|null} [body] IncomingMessage body\n\t * @property {number|null} [expiry] IncomingMessage expiry\n\t * @property {string|null} [type] IncomingMessage type\n\t */\n\t\n\t/**\n\t * Constructs a new IncomingMessage.\n\t * @exports IncomingMessage\n\t * @classdesc Represents an IncomingMessage.\n\t * @implements IIncomingMessage\n\t * @constructor\n\t * @param {IIncomingMessage=} [properties] Properties to set\n\t */\n\tfunction IncomingMessage(properties) {\n\t\tthis.receivers = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * IncomingMessage receivers.\n\t * @member {Array.<Receiver>} receivers\n\t * @memberof IncomingMessage\n\t * @instance\n\t */\n\tIncomingMessage.prototype.receivers = $util.emptyArray\n\t\n\t/**\n\t * IncomingMessage sender.\n\t * @member {Sender|null|undefined} sender\n\t * @memberof IncomingMessage\n\t * @instance\n\t */\n\tIncomingMessage.prototype.sender = null\n\t\n\t/**\n\t * IncomingMessage body.\n\t * @member {string} body\n\t * @memberof IncomingMessage\n\t * @instance\n\t */\n\tIncomingMessage.prototype.body = ''\n\t\n\t/**\n\t * IncomingMessage expiry.\n\t * @member {number} expiry\n\t * @memberof IncomingMessage\n\t * @instance\n\t */\n\tIncomingMessage.prototype.expiry = 0\n\t\n\t/**\n\t * IncomingMessage type.\n\t * @member {string} type\n\t * @memberof IncomingMessage\n\t * @instance\n\t */\n\tIncomingMessage.prototype.type = ''\n\t\n\t/**\n\t * Creates a new IncomingMessage instance using the specified properties.\n\t * @function create\n\t * @memberof IncomingMessage\n\t * @static\n\t * @param {IIncomingMessage=} [properties] Properties to set\n\t * @returns {IncomingMessage} IncomingMessage instance\n\t */\n\tIncomingMessage.create = function create(properties) {\n\t\treturn new IncomingMessage(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified IncomingMessage message. Does not implicitly {@link IncomingMessage.verify|verify} messages.\n\t * @function encode\n\t * @memberof IncomingMessage\n\t * @static\n\t * @param {IncomingMessage} message IncomingMessage message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tIncomingMessage.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.receivers != null && message.receivers.length) {\n\t\t\tfor (var i = 0; i < message.receivers.length; ++i)\n\t\t\t\t$root.Receiver.encode(\n\t\t\t\t\tmessage.receivers[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\tif (message.sender != null && message.hasOwnProperty('sender')) {\n\t\t\t$root.Sender.encode(\n\t\t\t\tmessage.sender,\n\t\t\t\twriter.uint32(/* id 2, wireType 2 =*/ 18).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\tif (message.body != null && message.hasOwnProperty('body')) {\n\t\t\twriter.uint32(/* id 3, wireType 2 =*/ 26).string(message.body)\n\t\t}\n\t\tif (message.expiry != null && message.hasOwnProperty('expiry')) {\n\t\t\twriter.uint32(/* id 4, wireType 0 =*/ 32).uint32(message.expiry)\n\t\t}\n\t\tif (message.type != null && message.hasOwnProperty('type')) {\n\t\t\twriter.uint32(/* id 5, wireType 2 =*/ 42).string(message.type)\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes an IncomingMessage message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof IncomingMessage\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {IncomingMessage} IncomingMessage\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tIncomingMessage.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.IncomingMessage()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.receivers && message.receivers.length)) {\n\t\t\t\t\t\tmessage.receivers = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.receivers.push($root.Receiver.decode(reader, reader.uint32()))\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.sender = $root.Sender.decode(reader, reader.uint32())\n\t\t\t\t\tbreak\n\t\t\t\tcase 3:\n\t\t\t\t\tmessage.body = reader.string()\n\t\t\t\t\tbreak\n\t\t\t\tcase 4:\n\t\t\t\t\tmessage.expiry = reader.uint32()\n\t\t\t\t\tbreak\n\t\t\t\tcase 5:\n\t\t\t\t\tmessage.type = reader.string()\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn IncomingMessage\n})()\n\n$root.ChannelStatsRequest = (function () {\n\t/**\n\t * Properties of a ChannelStatsRequest.\n\t * @exports IChannelStatsRequest\n\t * @interface IChannelStatsRequest\n\t * @property {Array.<ChannelId>|null} [channels] ChannelStatsRequest channels\n\t */\n\t\n\t/**\n\t * Constructs a new ChannelStatsRequest.\n\t * @exports ChannelStatsRequest\n\t * @classdesc Represents a ChannelStatsRequest.\n\t * @implements IChannelStatsRequest\n\t * @constructor\n\t * @param {IChannelStatsRequest=} [properties] Properties to set\n\t */\n\tfunction ChannelStatsRequest(properties) {\n\t\tthis.channels = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * ChannelStatsRequest channels.\n\t * @member {Array.<ChannelId>} channels\n\t * @memberof ChannelStatsRequest\n\t * @instance\n\t */\n\tChannelStatsRequest.prototype.channels = $util.emptyArray\n\t\n\t/**\n\t * Creates a new ChannelStatsRequest instance using the specified properties.\n\t * @function create\n\t * @memberof ChannelStatsRequest\n\t * @static\n\t * @param {IChannelStatsRequest=} [properties] Properties to set\n\t * @returns {ChannelStatsRequest} ChannelStatsRequest instance\n\t */\n\tChannelStatsRequest.create = function create(properties) {\n\t\treturn new ChannelStatsRequest(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified ChannelStatsRequest message. Does not implicitly {@link ChannelStatsRequest.verify|verify} messages.\n\t * @function encode\n\t * @memberof ChannelStatsRequest\n\t * @static\n\t * @param {ChannelStatsRequest} message ChannelStatsRequest message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tChannelStatsRequest.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.channels != null && message.channels.length) {\n\t\t\tfor (var i = 0; i < message.channels.length; ++i)\n\t\t\t\t$root.ChannelId.encode(\n\t\t\t\t\tmessage.channels[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a ChannelStatsRequest message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof ChannelStatsRequest\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {ChannelStatsRequest} ChannelStatsRequest\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tChannelStatsRequest.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.ChannelStatsRequest()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.channels && message.channels.length)) {\n\t\t\t\t\t\tmessage.channels = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.channels.push($root.ChannelId.decode(reader, reader.uint32()))\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn ChannelStatsRequest\n})()\n\n$root.ChannelId = (function () {\n\t/**\n\t * Properties of a ChannelId.\n\t * @exports IChannelId\n\t * @interface IChannelId\n\t * @property {Uint8Array|null} [id] ChannelId id\n\t * @property {boolean|null} [isPrivate] ChannelId isPrivate\n\t * @property {Uint8Array|null} [signature] ChannelId signature\n\t */\n\t\n\t/**\n\t * Constructs a new ChannelId.\n\t * @exports ChannelId\n\t * @classdesc Represents a ChannelId.\n\t * @implements IChannelId\n\t * @constructor\n\t * @param {IChannelId=} [properties] Properties to set\n\t */\n\tfunction ChannelId(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * ChannelId id.\n\t * @member {Uint8Array} id\n\t * @memberof ChannelId\n\t * @instance\n\t */\n\tChannelId.prototype.id = $util.newBuffer([])\n\t\n\t/**\n\t * ChannelId isPrivate.\n\t * @member {boolean} isPrivate\n\t * @memberof ChannelId\n\t * @instance\n\t */\n\tChannelId.prototype.isPrivate = false\n\t\n\t/**\n\t * ChannelId signature.\n\t * @member {Uint8Array} signature\n\t * @memberof ChannelId\n\t * @instance\n\t */\n\tChannelId.prototype.signature = $util.newBuffer([])\n\t\n\t/**\n\t * Creates a new ChannelId instance using the specified properties.\n\t * @function create\n\t * @memberof ChannelId\n\t * @static\n\t * @param {IChannelId=} [properties] Properties to set\n\t * @returns {ChannelId} ChannelId instance\n\t */\n\tChannelId.create = function create(properties) {\n\t\treturn new ChannelId(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified ChannelId message. Does not implicitly {@link ChannelId.verify|verify} messages.\n\t * @function encode\n\t * @memberof ChannelId\n\t * @static\n\t * @param {ChannelId} message ChannelId message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tChannelId.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.id != null && message.hasOwnProperty('id')) {\n\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).bytes(message.id)\n\t\t}\n\t\tif (message.isPrivate != null && message.hasOwnProperty('isPrivate')) {\n\t\t\twriter.uint32(/* id 2, wireType 0 =*/ 16).bool(message.isPrivate)\n\t\t}\n\t\tif (message.signature != null && message.hasOwnProperty('signature')) {\n\t\t\twriter.uint32(/* id 3, wireType 2 =*/ 26).bytes(message.signature)\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a ChannelId message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof ChannelId\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {ChannelId} ChannelId\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tChannelId.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.ChannelId()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tmessage.id = reader.bytes()\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.isPrivate = reader.bool()\n\t\t\t\t\tbreak\n\t\t\t\tcase 3:\n\t\t\t\t\tmessage.signature = reader.bytes()\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn ChannelId\n})()\n\n$root.ServerStatsRequest = (function () {\n\t/**\n\t * Properties of a ServerStatsRequest.\n\t * @exports IServerStatsRequest\n\t * @interface IServerStatsRequest\n\t */\n\t\n\t/**\n\t * Constructs a new ServerStatsRequest.\n\t * @exports ServerStatsRequest\n\t * @classdesc Represents a ServerStatsRequest.\n\t * @implements IServerStatsRequest\n\t * @constructor\n\t * @param {IServerStatsRequest=} [properties] Properties to set\n\t */\n\tfunction ServerStatsRequest(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * Creates a new ServerStatsRequest instance using the specified properties.\n\t * @function create\n\t * @memberof ServerStatsRequest\n\t * @static\n\t * @param {IServerStatsRequest=} [properties] Properties to set\n\t * @returns {ServerStatsRequest} ServerStatsRequest instance\n\t */\n\tServerStatsRequest.create = function create(properties) {\n\t\treturn new ServerStatsRequest(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified ServerStatsRequest message. Does not implicitly {@link ServerStatsRequest.verify|verify} messages.\n\t * @function encode\n\t * @memberof ServerStatsRequest\n\t * @static\n\t * @param {ServerStatsRequest} message ServerStatsRequest message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tServerStatsRequest.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a ServerStatsRequest message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof ServerStatsRequest\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {ServerStatsRequest} ServerStatsRequest\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tServerStatsRequest.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.ServerStatsRequest()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn ServerStatsRequest\n})()\n\n$root.Sender = (function () {\n\t/**\n\t * Properties of a Sender.\n\t * @exports ISender\n\t * @interface ISender\n\t * @property {SenderType|null} [type] Sender type\n\t * @property {Uint8Array|null} [id] Sender id\n\t */\n\t\n\t/**\n\t * Constructs a new Sender.\n\t * @exports Sender\n\t * @classdesc Represents a Sender.\n\t * @implements ISender\n\t * @constructor\n\t * @param {ISender=} [properties] Properties to set\n\t */\n\tfunction Sender(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * Sender type.\n\t * @member {SenderType} type\n\t * @memberof Sender\n\t * @instance\n\t */\n\tSender.prototype.type = 0\n\t\n\t/**\n\t * Sender id.\n\t * @member {Uint8Array} id\n\t * @memberof Sender\n\t * @instance\n\t */\n\tSender.prototype.id = $util.newBuffer([])\n\t\n\t/**\n\t * Creates a new Sender instance using the specified properties.\n\t * @function create\n\t * @memberof Sender\n\t * @static\n\t * @param {ISender=} [properties] Properties to set\n\t * @returns {Sender} Sender instance\n\t */\n\tSender.create = function create(properties) {\n\t\treturn new Sender(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified Sender message. Does not implicitly {@link Sender.verify|verify} messages.\n\t * @function encode\n\t * @memberof Sender\n\t * @static\n\t * @param {Sender} message Sender message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tSender.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.type != null && message.hasOwnProperty('type')) {\n\t\t\twriter.uint32(/* id 1, wireType 0 =*/ 8).int32(message.type)\n\t\t}\n\t\tif (message.id != null && message.hasOwnProperty('id')) {\n\t\t\twriter.uint32(/* id 2, wireType 2 =*/ 18).bytes(message.id)\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a Sender message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof Sender\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {Sender} Sender\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tSender.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.Sender()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tmessage.type = reader.int32()\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.id = reader.bytes()\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn Sender\n})()\n\n/**\n * SenderType enum.\n * @exports SenderType\n * @enum {string}\n * @property {number} UNKNOWN=0 UNKNOWN value\n * @property {number} CLIENT=1 CLIENT value\n * @property {number} BACKEND=2 BACKEND value\n */\n$root.SenderType = (function () {\n\tvar valuesById = {},\n\t\tvalues = Object.create(valuesById)\n\tvalues[(valuesById[0] = 'UNKNOWN')] = 0\n\tvalues[(valuesById[1] = 'CLIENT')] = 1\n\tvalues[(valuesById[2] = 'BACKEND')] = 2\n\treturn values\n})()\n\n$root.Receiver = (function () {\n\t/**\n\t * Properties of a Receiver.\n\t * @exports IReceiver\n\t * @interface IReceiver\n\t * @property {Uint8Array|null} [id] Receiver id\n\t * @property {boolean|null} [isPrivate] Receiver isPrivate\n\t * @property {Uint8Array|null} [signature] Receiver signature\n\t */\n\t\n\t/**\n\t * Constructs a new Receiver.\n\t * @exports Receiver\n\t * @classdesc Represents a Receiver.\n\t * @implements IReceiver\n\t * @constructor\n\t * @param {IReceiver=} [properties] Properties to set\n\t */\n\tfunction Receiver(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * Receiver id.\n\t * @member {Uint8Array} id\n\t * @memberof Receiver\n\t * @instance\n\t */\n\tReceiver.prototype.id = $util.newBuffer([])\n\t\n\t/**\n\t * Receiver isPrivate.\n\t * @member {boolean} isPrivate\n\t * @memberof Receiver\n\t * @instance\n\t */\n\tReceiver.prototype.isPrivate = false\n\t\n\t/**\n\t * Receiver signature.\n\t * @member {Uint8Array} signature\n\t * @memberof Receiver\n\t * @instance\n\t */\n\tReceiver.prototype.signature = $util.newBuffer([])\n\t\n\t/**\n\t * Creates a new Receiver instance using the specified properties.\n\t * @function create\n\t * @memberof Receiver\n\t * @static\n\t * @param {IReceiver=} [properties] Properties to set\n\t * @returns {Receiver} Receiver instance\n\t */\n\tReceiver.create = function create(properties) {\n\t\treturn new Receiver(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified Receiver message. Does not implicitly {@link Receiver.verify|verify} messages.\n\t * @function encode\n\t * @memberof Receiver\n\t * @static\n\t * @param {Receiver} message Receiver message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tReceiver.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.id != null && message.hasOwnProperty('id')) {\n\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).bytes(message.id)\n\t\t}\n\t\tif (message.isPrivate != null && message.hasOwnProperty('isPrivate')) {\n\t\t\twriter.uint32(/* id 2, wireType 0 =*/ 16).bool(message.isPrivate)\n\t\t}\n\t\tif (message.signature != null && message.hasOwnProperty('signature')) {\n\t\t\twriter.uint32(/* id 3, wireType 2 =*/ 26).bytes(message.signature)\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a Receiver message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof Receiver\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {Receiver} Receiver\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tReceiver.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.Receiver()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tmessage.id = reader.bytes()\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.isPrivate = reader.bool()\n\t\t\t\t\tbreak\n\t\t\t\tcase 3:\n\t\t\t\t\tmessage.signature = reader.bytes()\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn Receiver\n})()\n\n$root.ResponseBatch = (function () {\n\t/**\n\t * Properties of a ResponseBatch.\n\t * @exports IResponseBatch\n\t * @interface IResponseBatch\n\t * @property {Array.<Response>|null} [responses] ResponseBatch responses\n\t */\n\t\n\t/**\n\t * Constructs a new ResponseBatch.\n\t * @exports ResponseBatch\n\t * @classdesc Represents a ResponseBatch.\n\t * @implements IResponseBatch\n\t * @constructor\n\t * @param {IResponseBatch=} [properties] Properties to set\n\t */\n\tfunction ResponseBatch(properties) {\n\t\tthis.responses = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * ResponseBatch responses.\n\t * @member {Array.<Response>} responses\n\t * @memberof ResponseBatch\n\t * @instance\n\t */\n\tResponseBatch.prototype.responses = $util.emptyArray\n\t\n\t/**\n\t * Creates a new ResponseBatch instance using the specified properties.\n\t * @function create\n\t * @memberof ResponseBatch\n\t * @static\n\t * @param {IResponseBatch=} [properties] Properties to set\n\t * @returns {ResponseBatch} ResponseBatch instance\n\t */\n\tResponseBatch.create = function create(properties) {\n\t\treturn new ResponseBatch(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified ResponseBatch message. Does not implicitly {@link ResponseBatch.verify|verify} messages.\n\t * @function encode\n\t * @memberof ResponseBatch\n\t * @static\n\t * @param {ResponseBatch} message ResponseBatch message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tResponseBatch.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.responses != null && message.responses.length) {\n\t\t\tfor (var i = 0; i < message.responses.length; ++i)\n\t\t\t\t$root.Response.encode(\n\t\t\t\t\tmessage.responses[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a ResponseBatch message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof ResponseBatch\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {ResponseBatch} ResponseBatch\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tResponseBatch.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.ResponseBatch()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.responses && message.responses.length)) {\n\t\t\t\t\t\tmessage.responses = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.responses.push($root.Response.decode(reader, reader.uint32()))\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn ResponseBatch\n})()\n\n$root.Response = (function () {\n\t/**\n\t * Properties of a Response.\n\t * @exports IResponse\n\t * @interface IResponse\n\t * @property {OutgoingMessagesResponse|null} [outgoingMessages] Response outgoingMessages\n\t * @property {ChannelStatsResponse|null} [channelStats] Response channelStats\n\t * @property {JsonResponse|null} [serverStats] Response serverStats\n\t */\n\t\n\t/**\n\t * Constructs a new Response.\n\t * @exports Response\n\t * @classdesc Represents a Response.\n\t * @implements IResponse\n\t * @constructor\n\t * @param {IResponse=} [properties] Properties to set\n\t */\n\tfunction Response(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * Response outgoingMessages.\n\t * @member {OutgoingMessagesResponse|null|undefined} outgoingMessages\n\t * @memberof Response\n\t * @instance\n\t */\n\tResponse.prototype.outgoingMessages = null\n\t\n\t/**\n\t * Response channelStats.\n\t * @member {ChannelStatsResponse|null|undefined} channelStats\n\t * @memberof Response\n\t * @instance\n\t */\n\tResponse.prototype.channelStats = null\n\t\n\t/**\n\t * Response serverStats.\n\t * @member {JsonResponse|null|undefined} serverStats\n\t * @memberof Response\n\t * @instance\n\t */\n\tResponse.prototype.serverStats = null\n\t\n\t// OneOf field names bound to virtual getters and setters\n\tvar $oneOfFields\n\t\n\t/**\n\t * Response command.\n\t * @member {\"outgoingMessages\"|\"channelStats\"|\"serverStats\"|undefined} command\n\t * @memberof Response\n\t * @instance\n\t */\n\tObject.defineProperty(Response.prototype, 'command', {\n\t\tget: $util.oneOfGetter(\n\t\t\t($oneOfFields = ['outgoingMessages', 'channelStats', 'serverStats'])\n\t\t),\n\t\tset: $util.oneOfSetter($oneOfFields),\n\t})\n\t\n\t/**\n\t * Creates a new Response instance using the specified properties.\n\t * @function create\n\t * @memberof Response\n\t * @static\n\t * @param {IResponse=} [properties] Properties to set\n\t * @returns {Response} Response instance\n\t */\n\tResponse.create = function create(properties) {\n\t\treturn new Response(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified Response message. Does not implicitly {@link Response.verify|verify} messages.\n\t * @function encode\n\t * @memberof Response\n\t * @static\n\t * @param {Response} message Response message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tResponse.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (\n\t\t\tmessage.outgoingMessages != null &&\n\t\t\tmessage.hasOwnProperty('outgoingMessages')\n\t\t) {\n\t\t\t$root.OutgoingMessagesResponse.encode(\n\t\t\t\tmessage.outgoingMessages,\n\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\tif (\n\t\t\tmessage.channelStats != null &&\n\t\t\tmessage.hasOwnProperty('channelStats')\n\t\t) {\n\t\t\t$root.ChannelStatsResponse.encode(\n\t\t\t\tmessage.channelStats,\n\t\t\t\twriter.uint32(/* id 2, wireType 2 =*/ 18).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\tif (message.serverStats != null && message.hasOwnProperty('serverStats')) {\n\t\t\t$root.JsonResponse.encode(\n\t\t\t\tmessage.serverStats,\n\t\t\t\twriter.uint32(/* id 3, wireType 2 =*/ 26).fork()\n\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes a Response message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof Response\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {Response} Response\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tResponse.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.Response()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tmessage.outgoingMessages = $root.OutgoingMessagesResponse.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage.channelStats = $root.ChannelStatsResponse.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tcase 3:\n\t\t\t\t\tmessage.serverStats = $root.JsonResponse.decode(\n\t\t\t\t\t\treader,\n\t\t\t\t\t\treader.uint32()\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn Response\n})()\n\n$root.OutgoingMessagesResponse = (function () {\n\t/**\n\t * Properties of an OutgoingMessagesResponse.\n\t * @exports IOutgoingMessagesResponse\n\t * @interface IOutgoingMessagesResponse\n\t * @property {Array.<OutgoingMessage>|null} [messages] OutgoingMessagesResponse messages\n\t */\n\t\n\t/**\n\t * Constructs a new OutgoingMessagesResponse.\n\t * @exports OutgoingMessagesResponse\n\t * @classdesc Represents an OutgoingMessagesResponse.\n\t * @implements IOutgoingMessagesResponse\n\t * @constructor\n\t * @param {IOutgoingMessagesResponse=} [properties] Properties to set\n\t */\n\tfunction OutgoingMessagesResponse(properties) {\n\t\tthis.messages = []\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * OutgoingMessagesResponse messages.\n\t * @member {Array.<OutgoingMessage>} messages\n\t * @memberof OutgoingMessagesResponse\n\t * @instance\n\t */\n\tOutgoingMessagesResponse.prototype.messages = $util.emptyArray\n\t\n\t/**\n\t * Creates a new OutgoingMessagesResponse instance using the specified properties.\n\t * @function create\n\t * @memberof OutgoingMessagesResponse\n\t * @static\n\t * @param {IOutgoingMessagesResponse=} [properties] Properties to set\n\t * @returns {OutgoingMessagesResponse} OutgoingMessagesResponse instance\n\t */\n\tOutgoingMessagesResponse.create = function create(properties) {\n\t\treturn new OutgoingMessagesResponse(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified OutgoingMessagesResponse message. Does not implicitly {@link OutgoingMessagesResponse.verify|verify} messages.\n\t * @function encode\n\t * @memberof OutgoingMessagesResponse\n\t * @static\n\t * @param {OutgoingMessagesResponse} message OutgoingMessagesResponse message or plain object to encode\n\t * @param {$protobuf.Writer} [writer] Writer to encode to\n\t * @returns {$protobuf.Writer} Writer\n\t */\n\tOutgoingMessagesResponse.encode = function encode(message, writer) {\n\t\tif (!writer) {\n\t\t\twriter = $Writer.create()\n\t\t}\n\t\tif (message.messages != null && message.messages.length) {\n\t\t\tfor (var i = 0; i < message.messages.length; ++i)\n\t\t\t\t$root.OutgoingMessage.encode(\n\t\t\t\t\tmessage.messages[i],\n\t\t\t\t\twriter.uint32(/* id 1, wireType 2 =*/ 10).fork()\n\t\t\t\t).ldelim()\n\t\t}\n\t\treturn writer\n\t}\n\t\n\t/**\n\t * Decodes an OutgoingMessagesResponse message from the specified reader or buffer.\n\t * @function decode\n\t * @memberof OutgoingMessagesResponse\n\t * @static\n\t * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from\n\t * @param {number} [length] Message length if known beforehand\n\t * @returns {OutgoingMessagesResponse} OutgoingMessagesResponse\n\t * @throws {Error} If the payload is not a reader or valid buffer\n\t * @throws {$protobuf.util.ProtocolError} If required fields are missing\n\t */\n\tOutgoingMessagesResponse.decode = function decode(reader, length) {\n\t\tif (!(reader instanceof $Reader)) {\n\t\t\treader = $Reader.create(reader)\n\t\t}\n\t\tvar end = length === undefined ? reader.len : reader.pos + length,\n\t\t\tmessage = new $root.OutgoingMessagesResponse()\n\t\twhile (reader.pos < end) {\n\t\t\tvar tag = reader.uint32()\n\t\t\tswitch (tag >>> 3) {\n\t\t\t\tcase 1:\n\t\t\t\t\tif (!(message.messages && message.messages.length)) {\n\t\t\t\t\t\tmessage.messages = []\n\t\t\t\t\t}\n\t\t\t\t\tmessage.messages.push(\n\t\t\t\t\t\t$root.OutgoingMessage.decode(reader, reader.uint32())\n\t\t\t\t\t)\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\treader.skipType(tag & 7)\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\treturn message\n\t}\n\t\n\treturn OutgoingMessagesResponse\n})()\n\n$root.OutgoingMessage = (function () {\n\t/**\n\t * Properties of an OutgoingMessage.\n\t * @exports IOutgoingMessage\n\t * @interface IOutgoingMessage\n\t * @property {Uint8Array|null} [id] OutgoingMessage id\n\t * @property {string|null} [body] OutgoingMessage body\n\t * @property {number|null} [expiry] OutgoingMessage expiry\n\t * @property {number|null} [created] OutgoingMessage created\n\t * @property {Sender|null} [sender] OutgoingMessage sender\n\t */\n\t\n\t/**\n\t * Constructs a new OutgoingMessage.\n\t * @exports OutgoingMessage\n\t * @classdesc Represents an OutgoingMessage.\n\t * @implements IOutgoingMessage\n\t * @constructor\n\t * @param {IOutgoingMessage=} [properties] Properties to set\n\t */\n\tfunction OutgoingMessage(properties) {\n\t\tif (properties) {\n\t\t\tfor (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)\n\t\t\t\tif (properties[keys[i]] != null) {\n\t\t\t\t\tthis[keys[i]] = properties[keys[i]]\n\t\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * OutgoingMessage id.\n\t * @member {Uint8Array} id\n\t * @memberof OutgoingMessage\n\t * @instance\n\t */\n\tOutgoingMessage.prototype.id = $util.newBuffer([])\n\t\n\t/**\n\t * OutgoingMessage body.\n\t * @member {string} body\n\t * @memberof OutgoingMessage\n\t * @instance\n\t */\n\tOutgoingMessage.prototype.body = ''\n\t\n\t/**\n\t * OutgoingMessage expiry.\n\t * @member {number} expiry\n\t * @memberof OutgoingMessage\n\t * @instance\n\t */\n\tOutgoingMessage.prototype.expiry = 0\n\t\n\t/**\n\t * OutgoingMessage created.\n\t * @member {number} created\n\t * @memberof OutgoingMessage\n\t * @instance\n\t */\n\tOutgoingMessage.prototype.created = 0\n\t\n\t/**\n\t * OutgoingMessage sender.\n\t * @member {Sender|null|undefined} sender\n\t * @memberof OutgoingMessage\n\t * @instance\n\t */\n\tOutgoingMessage.prototype.sender = null\n\t\n\t/**\n\t * Creates a new OutgoingMessage instance using the specified properties.\n\t * @function create\n\t * @memberof OutgoingMessage\n\t * @static\n\t * @param {IOutgoingMessage=} [properties] Properties to set\n\t * @returns {OutgoingMessage} OutgoingMessage instance\n\t */\n\tOutgoingMessage.create = function create(properties) {\n\t\treturn new OutgoingMessage(properties)\n\t}\n\t\n\t/**\n\t * Encodes the specified OutgoingMessage message. Does not implicitly {@link OutgoingMessage.verify|verify} messages.\n\t * @function encode\n\t * @memberof OutgoingMessage\n\t * @static\n\t * @param {OutgoingMessage} message OutgoingMessage message or plain object to encode\n\t * @param {$protobuf.W