UNPKG

@injectivelabs/exchange-api

Version:

Injective Exchange API client with generated gRPC bindings.

8,221 lines 263 kB
// source: injective_spot_exchange_rpc.proto
/**
 * @fileoverview
 * @enhanceable
 * @suppress {missingRequire} reports error on implicit type usages.
 * @suppress {messageConventions} JS Compiler reports an error if a variable or
 *     field starts with 'MSG_' and isn't a translatable message.
 * @public
 */
// GENERATED CODE -- DO NOT EDIT!
/* eslint-disable */
// @ts-nocheck

var jspb = require('google-protobuf');
var goog = jspb;
var global = (function() {
  if (this) { return this; }
  if (typeof window !== 'undefined') { return window; }
  if (typeof global !== 'undefined') { return global; }
  if (typeof self !== 'undefined') { return self; }
  return Function('return this')();
}.call(null));

goog.exportSymbol('proto.injective_spot_exchange_rpc.MarketRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.MarketResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.MarketsRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.MarketsResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrderbookRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrderbookResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrderbooksRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrderbooksResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrdersRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.OrdersResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.Paging', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.PriceLevel', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SpotLimitOrder', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SpotLimitOrderbook', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SpotMarketInfo', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SpotTrade', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamMarketsRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamMarketsResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamOrderbookRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamOrderbookResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamOrdersRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamOrdersResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamTradesRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.StreamTradesResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SubaccountTradesListRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.SubaccountTradesListResponse', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.TokenMeta', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.TradesRequest', null, global);
goog.exportSymbol('proto.injective_spot_exchange_rpc.TradesResponse', null, global);
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.MarketsRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.MarketsRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.MarketsRequest.displayName = 'proto.injective_spot_exchange_rpc.MarketsRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.MarketsResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.MarketsResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.MarketsResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.MarketsResponse.displayName = 'proto.injective_spot_exchange_rpc.MarketsResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SpotMarketInfo, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SpotMarketInfo.displayName = 'proto.injective_spot_exchange_rpc.SpotMarketInfo';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.TokenMeta = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.TokenMeta, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.TokenMeta.displayName = 'proto.injective_spot_exchange_rpc.TokenMeta';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.MarketRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.MarketRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.MarketRequest.displayName = 'proto.injective_spot_exchange_rpc.MarketRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.MarketResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.MarketResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.MarketResponse.displayName = 'proto.injective_spot_exchange_rpc.MarketResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.StreamMarketsRequest.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamMarketsRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamMarketsRequest.displayName = 'proto.injective_spot_exchange_rpc.StreamMarketsRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamMarketsResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamMarketsResponse.displayName = 'proto.injective_spot_exchange_rpc.StreamMarketsResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrderbookRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrderbookRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrderbookRequest.displayName = 'proto.injective_spot_exchange_rpc.OrderbookRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrderbookResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrderbookResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrderbookResponse.displayName = 'proto.injective_spot_exchange_rpc.OrderbookResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.SpotLimitOrderbook.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SpotLimitOrderbook, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SpotLimitOrderbook.displayName = 'proto.injective_spot_exchange_rpc.SpotLimitOrderbook';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.PriceLevel = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.PriceLevel, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.PriceLevel.displayName = 'proto.injective_spot_exchange_rpc.PriceLevel';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.OrderbooksRequest.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrderbooksRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrderbooksRequest.displayName = 'proto.injective_spot_exchange_rpc.OrderbooksRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.OrderbooksResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrderbooksResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrderbooksResponse.displayName = 'proto.injective_spot_exchange_rpc.OrderbooksResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.displayName = 'proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.StreamOrderbookRequest.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamOrderbookRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamOrderbookRequest.displayName = 'proto.injective_spot_exchange_rpc.StreamOrderbookRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamOrderbookResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamOrderbookResponse.displayName = 'proto.injective_spot_exchange_rpc.StreamOrderbookResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrdersRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrdersRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrdersRequest.displayName = 'proto.injective_spot_exchange_rpc.OrdersRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.OrdersResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.OrdersResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.OrdersResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.OrdersResponse.displayName = 'proto.injective_spot_exchange_rpc.OrdersResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SpotLimitOrder, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SpotLimitOrder.displayName = 'proto.injective_spot_exchange_rpc.SpotLimitOrder';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamOrdersRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamOrdersRequest.displayName = 'proto.injective_spot_exchange_rpc.StreamOrdersRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamOrdersResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamOrdersResponse.displayName = 'proto.injective_spot_exchange_rpc.StreamOrdersResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.TradesRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.TradesRequest.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.TradesRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.TradesRequest.displayName = 'proto.injective_spot_exchange_rpc.TradesRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.TradesResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.TradesResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.TradesResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.TradesResponse.displayName = 'proto.injective_spot_exchange_rpc.TradesResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SpotTrade = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SpotTrade, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SpotTrade.displayName = 'proto.injective_spot_exchange_rpc.SpotTrade';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.Paging = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.Paging, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.Paging.displayName = 'proto.injective_spot_exchange_rpc.Paging';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.StreamTradesRequest.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamTradesRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamTradesRequest.displayName = 'proto.injective_spot_exchange_rpc.StreamTradesRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.StreamTradesResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.StreamTradesResponse.displayName = 'proto.injective_spot_exchange_rpc.StreamTradesResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.displayName = 'proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.displayName = 'proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SubaccountTradesListRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.displayName = 'proto.injective_spot_exchange_rpc.SubaccountTradesListRequest';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.repeatedFields_, null);
};
goog.inherits(proto.injective_spot_exchange_rpc.SubaccountTradesListResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.displayName = 'proto.injective_spot_exchange_rpc.SubaccountTradesListResponse';
}



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.MarketsRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.MarketsRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketsRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketStatus: jspb.Message.getFieldWithDefault(msg, 1, ""),
    baseDenom: jspb.Message.getFieldWithDefault(msg, 2, ""),
    quoteDenom: jspb.Message.getFieldWithDefault(msg, 3, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.MarketsRequest}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.MarketsRequest;
  return proto.injective_spot_exchange_rpc.MarketsRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.MarketsRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.MarketsRequest}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketStatus(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setBaseDenom(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setQuoteDenom(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.MarketsRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.MarketsRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketsRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketStatus();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getBaseDenom();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getQuoteDenom();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
};


/**
 * optional string market_status = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.getMarketStatus = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.MarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.setMarketStatus = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string base_denom = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.getBaseDenom = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.MarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.setBaseDenom = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string quote_denom = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.getQuoteDenom = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.MarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.MarketsRequest.prototype.setQuoteDenom = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.MarketsResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.MarketsResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.MarketsResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketsResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketsList: jspb.Message.toObjectList(msg.getMarketsList(),
    proto.injective_spot_exchange_rpc.SpotMarketInfo.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.MarketsResponse}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.MarketsResponse;
  return proto.injective_spot_exchange_rpc.MarketsResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.MarketsResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.MarketsResponse}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotMarketInfo;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinaryFromReader);
      msg.addMarkets(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.MarketsResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.MarketsResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketsResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketsList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotMarketInfo.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SpotMarketInfo markets = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SpotMarketInfo>}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.getMarketsList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SpotMarketInfo>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SpotMarketInfo, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SpotMarketInfo>} value
 * @return {!proto.injective_spot_exchange_rpc.MarketsResponse} returns this
*/
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.setMarketsList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SpotMarketInfo=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo}
 */
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.addMarkets = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SpotMarketInfo, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.MarketsResponse} returns this
 */
proto.injective_spot_exchange_rpc.MarketsResponse.prototype.clearMarketsList = function() {
  return this.setMarketsList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SpotMarketInfo.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SpotMarketInfo} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    marketStatus: jspb.Message.getFieldWithDefault(msg, 2, ""),
    ticker: jspb.Message.getFieldWithDefault(msg, 3, ""),
    baseDenom: jspb.Message.getFieldWithDefault(msg, 4, ""),
    baseTokenMeta: (f = msg.getBaseTokenMeta()) && proto.injective_spot_exchange_rpc.TokenMeta.toObject(includeInstance, f),
    quoteDenom: jspb.Message.getFieldWithDefault(msg, 6, ""),
    quoteTokenMeta: (f = msg.getQuoteTokenMeta()) && proto.injective_spot_exchange_rpc.TokenMeta.toObject(includeInstance, f),
    makerFeeRate: jspb.Message.getFieldWithDefault(msg, 8, ""),
    takerFeeRate: jspb.Message.getFieldWithDefault(msg, 9, ""),
    serviceProviderFee: jspb.Message.getFieldWithDefault(msg, 10, ""),
    minPriceTickSize: jspb.Message.getFieldWithDefault(msg, 11, ""),
    minQuantityTickSize: jspb.Message.getFieldWithDefault(msg, 12, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SpotMarketInfo;
  return proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SpotMarketInfo} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketStatus(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setTicker(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setBaseDenom(value);
      break;
    case 5:
      var value = new proto.injective_spot_exchange_rpc.TokenMeta;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.TokenMeta.deserializeBinaryFromReader);
      msg.setBaseTokenMeta(value);
      break;
    case 6:
      var value = /** @type {string} */ (reader.readString());
      msg.setQuoteDenom(value);
      break;
    case 7:
      var value = new proto.injective_spot_exchange_rpc.TokenMeta;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.TokenMeta.deserializeBinaryFromReader);
      msg.setQuoteTokenMeta(value);
      break;
    case 8:
      var value = /** @type {string} */ (reader.readString());
      msg.setMakerFeeRate(value);
      break;
    case 9:
      var value = /** @type {string} */ (reader.readString());
      msg.setTakerFeeRate(value);
      break;
    case 10:
      var value = /** @type {string} */ (reader.readString());
      msg.setServiceProviderFee(value);
      break;
    case 11:
      var value = /** @type {string} */ (reader.readString());
      msg.setMinPriceTickSize(value);
      break;
    case 12:
      var value = /** @type {string} */ (reader.readString());
      msg.setMinQuantityTickSize(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SpotMarketInfo.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SpotMarketInfo} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getMarketStatus();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTicker();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getBaseDenom();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getBaseTokenMeta();
  if (f != null) {
    writer.writeMessage(
      5,
      f,
      proto.injective_spot_exchange_rpc.TokenMeta.serializeBinaryToWriter
    );
  }
  f = message.getQuoteDenom();
  if (f.length > 0) {
    writer.writeString(
      6,
      f
    );
  }
  f = message.getQuoteTokenMeta();
  if (f != null) {
    writer.writeMessage(
      7,
      f,
      proto.injective_spot_exchange_rpc.TokenMeta.serializeBinaryToWriter
    );
  }
  f = message.getMakerFeeRate();
  if (f.length > 0) {
    writer.writeString(
      8,
      f
    );
  }
  f = message.getTakerFeeRate();
  if (f.length > 0) {
    writer.writeString(
      9,
      f
    );
  }
  f = message.getServiceProviderFee();
  if (f.length > 0) {
    writer.writeString(
      10,
      f
    );
  }
  f = message.getMinPriceTickSize();
  if (f.length > 0) {
    writer.writeString(
      11,
      f
    );
  }
  f = message.getMinQuantityTickSize();
  if (f.length > 0) {
    writer.writeString(
      12,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string market_status = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getMarketStatus = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setMarketStatus = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string ticker = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getTicker = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setTicker = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string base_denom = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getBaseDenom = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setBaseDenom = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional TokenMeta base_token_meta = 5;
 * @return {?proto.injective_spot_exchange_rpc.TokenMeta}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getBaseTokenMeta = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.TokenMeta} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.TokenMeta, 5));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.TokenMeta|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
*/
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setBaseTokenMeta = function(value) {
  return jspb.Message.setWrapperField(this, 5, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.clearBaseTokenMeta = function() {
  return this.setBaseTokenMeta(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.hasBaseTokenMeta = function() {
  return jspb.Message.getField(this, 5) != null;
};


/**
 * optional string quote_denom = 6;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getQuoteDenom = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setQuoteDenom = function(value) {
  return jspb.Message.setProto3StringField(this, 6, value);
};


/**
 * optional TokenMeta quote_token_meta = 7;
 * @return {?proto.injective_spot_exchange_rpc.TokenMeta}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getQuoteTokenMeta = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.TokenMeta} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.TokenMeta, 7));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.TokenMeta|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
*/
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setQuoteTokenMeta = function(value) {
  return jspb.Message.setWrapperField(this, 7, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.clearQuoteTokenMeta = function() {
  return this.setQuoteTokenMeta(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.hasQuoteTokenMeta = function() {
  return jspb.Message.getField(this, 7) != null;
};


/**
 * optional string maker_fee_rate = 8;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getMakerFeeRate = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setMakerFeeRate = function(value) {
  return jspb.Message.setProto3StringField(this, 8, value);
};


/**
 * optional string taker_fee_rate = 9;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getTakerFeeRate = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setTakerFeeRate = function(value) {
  return jspb.Message.setProto3StringField(this, 9, value);
};


/**
 * optional string service_provider_fee = 10;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getServiceProviderFee = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setServiceProviderFee = function(value) {
  return jspb.Message.setProto3StringField(this, 10, value);
};


/**
 * optional string min_price_tick_size = 11;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getMinPriceTickSize = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 11, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setMinPriceTickSize = function(value) {
  return jspb.Message.setProto3StringField(this, 11, value);
};


/**
 * optional string min_quantity_tick_size = 12;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.getMinQuantityTickSize = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 12, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotMarketInfo} returns this
 */
proto.injective_spot_exchange_rpc.SpotMarketInfo.prototype.setMinQuantityTickSize = function(value) {
  return jspb.Message.setProto3StringField(this, 12, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.TokenMeta.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.TokenMeta} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TokenMeta.toObject = function(includeInstance, msg) {
  var f, obj = {
    name: jspb.Message.getFieldWithDefault(msg, 1, ""),
    address: jspb.Message.getFieldWithDefault(msg, 2, ""),
    symbol: jspb.Message.getFieldWithDefault(msg, 3, ""),
    logo: jspb.Message.getFieldWithDefault(msg, 4, ""),
    decimals: jspb.Message.getFieldWithDefault(msg, 5, 0),
    updatedAt: jspb.Message.getFieldWithDefault(msg, 6, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta}
 */
proto.injective_spot_exchange_rpc.TokenMeta.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.TokenMeta;
  return proto.injective_spot_exchange_rpc.TokenMeta.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.TokenMeta} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta}
 */
proto.injective_spot_exchange_rpc.TokenMeta.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setName(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setAddress(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setSymbol(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setLogo(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setDecimals(value);
      break;
    case 6:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setUpdatedAt(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.TokenMeta.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.TokenMeta} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TokenMeta.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getName();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getAddress();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getSymbol();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getLogo();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getDecimals();
  if (f !== 0) {
    writer.writeSint32(
      5,
      f
    );
  }
  f = message.getUpdatedAt();
  if (f !== 0) {
    writer.writeSint64(
      6,
      f
    );
  }
};


/**
 * optional string name = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getName = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setName = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string address = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getAddress = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setAddress = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string symbol = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getSymbol = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setSymbol = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string logo = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getLogo = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setLogo = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional sint32 decimals = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getDecimals = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setDecimals = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};


/**
 * optional sint64 updated_at = 6;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.getUpdatedAt = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TokenMeta} returns this
 */
proto.injective_spot_exchange_rpc.TokenMeta.prototype.setUpdatedAt = function(value) {
  return jspb.Message.setProto3IntField(this, 6, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.MarketRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.MarketRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.MarketRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.MarketRequest}
 */
proto.injective_spot_exchange_rpc.MarketRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.MarketRequest;
  return proto.injective_spot_exchange_rpc.MarketRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.MarketRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.MarketRequest}
 */
proto.injective_spot_exchange_rpc.MarketRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.MarketRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.MarketRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.MarketRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.MarketRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.MarketRequest} returns this
 */
proto.injective_spot_exchange_rpc.MarketRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.MarketResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.MarketResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.MarketResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    market: (f = msg.getMarket()) && proto.injective_spot_exchange_rpc.SpotMarketInfo.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.MarketResponse}
 */
proto.injective_spot_exchange_rpc.MarketResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.MarketResponse;
  return proto.injective_spot_exchange_rpc.MarketResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.MarketResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.MarketResponse}
 */
proto.injective_spot_exchange_rpc.MarketResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotMarketInfo;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinaryFromReader);
      msg.setMarket(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.MarketResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.MarketResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.MarketResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.MarketResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarket();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotMarketInfo.serializeBinaryToWriter
    );
  }
};


/**
 * optional SpotMarketInfo market = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotMarketInfo}
 */
proto.injective_spot_exchange_rpc.MarketResponse.prototype.getMarket = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotMarketInfo} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotMarketInfo, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotMarketInfo|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.MarketResponse} returns this
*/
proto.injective_spot_exchange_rpc.MarketResponse.prototype.setMarket = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.MarketResponse} returns this
 */
proto.injective_spot_exchange_rpc.MarketResponse.prototype.clearMarket = function() {
  return this.setMarket(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.MarketResponse.prototype.hasMarket = function() {
  return jspb.Message.getField(this, 1) != null;
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamMarketsRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketIdsList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsRequest}
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamMarketsRequest;
  return proto.injective_spot_exchange_rpc.StreamMarketsRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsRequest}
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.addMarketIds(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamMarketsRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      1,
      f
    );
  }
};


/**
 * repeated string market_ids = 1;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.getMarketIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.setMarketIdsList = function(value) {
  return jspb.Message.setField(this, 1, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.addMarketIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 1, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsRequest.prototype.clearMarketIdsList = function() {
  return this.setMarketIdsList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamMarketsResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    market: (f = msg.getMarket()) && proto.injective_spot_exchange_rpc.SpotMarketInfo.toObject(includeInstance, f),
    operationType: jspb.Message.getFieldWithDefault(msg, 2, ""),
    timestamp: jspb.Message.getFieldWithDefault(msg, 3, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamMarketsResponse;
  return proto.injective_spot_exchange_rpc.StreamMarketsResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotMarketInfo;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotMarketInfo.deserializeBinaryFromReader);
      msg.setMarket(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOperationType(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTimestamp(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamMarketsResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarket();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotMarketInfo.serializeBinaryToWriter
    );
  }
  f = message.getOperationType();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTimestamp();
  if (f !== 0) {
    writer.writeSint64(
      3,
      f
    );
  }
};


/**
 * optional SpotMarketInfo market = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotMarketInfo}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.getMarket = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotMarketInfo} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotMarketInfo, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotMarketInfo|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} returns this
*/
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.setMarket = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.clearMarket = function() {
  return this.setMarket(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.hasMarket = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional string operation_type = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.getOperationType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.setOperationType = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional sint64 timestamp = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.getTimestamp = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamMarketsResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamMarketsResponse.prototype.setTimestamp = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrderbookRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrderbookRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrderbookRequest}
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrderbookRequest;
  return proto.injective_spot_exchange_rpc.OrderbookRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrderbookRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrderbookRequest}
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrderbookRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrderbookRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.OrderbookRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrderbookRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrderbookResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrderbookResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    orderbook: (f = msg.getOrderbook()) && proto.injective_spot_exchange_rpc.SpotLimitOrderbook.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrderbookResponse}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrderbookResponse;
  return proto.injective_spot_exchange_rpc.OrderbookResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrderbookResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrderbookResponse}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrderbook;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinaryFromReader);
      msg.setOrderbook(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrderbookResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrderbookResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrderbook();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrderbook.serializeBinaryToWriter
    );
  }
};


/**
 * optional SpotLimitOrderbook orderbook = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.getOrderbook = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotLimitOrderbook} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrderbook, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.OrderbookResponse} returns this
*/
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.setOrderbook = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.OrderbookResponse} returns this
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.clearOrderbook = function() {
  return this.setOrderbook(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.OrderbookResponse.prototype.hasOrderbook = function() {
  return jspb.Message.getField(this, 1) != null;
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.repeatedFields_ = [1,2];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SpotLimitOrderbook.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.toObject = function(includeInstance, msg) {
  var f, obj = {
    buysList: jspb.Message.toObjectList(msg.getBuysList(),
    proto.injective_spot_exchange_rpc.PriceLevel.toObject, includeInstance),
    sellsList: jspb.Message.toObjectList(msg.getSellsList(),
    proto.injective_spot_exchange_rpc.PriceLevel.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SpotLimitOrderbook;
  return proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.PriceLevel;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinaryFromReader);
      msg.addBuys(value);
      break;
    case 2:
      var value = new proto.injective_spot_exchange_rpc.PriceLevel;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinaryFromReader);
      msg.addSells(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SpotLimitOrderbook.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getBuysList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.PriceLevel.serializeBinaryToWriter
    );
  }
  f = message.getSellsList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      2,
      f,
      proto.injective_spot_exchange_rpc.PriceLevel.serializeBinaryToWriter
    );
  }
};


/**
 * repeated PriceLevel buys = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.PriceLevel>}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.getBuysList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.PriceLevel>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.PriceLevel, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.PriceLevel>} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} returns this
*/
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.setBuysList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.PriceLevel=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.addBuys = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.PriceLevel, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.clearBuysList = function() {
  return this.setBuysList([]);
};


/**
 * repeated PriceLevel sells = 2;
 * @return {!Array<!proto.injective_spot_exchange_rpc.PriceLevel>}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.getSellsList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.PriceLevel>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.PriceLevel, 2));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.PriceLevel>} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} returns this
*/
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.setSellsList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 2, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.PriceLevel=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.addSells = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.injective_spot_exchange_rpc.PriceLevel, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrderbook} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrderbook.prototype.clearSellsList = function() {
  return this.setSellsList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.PriceLevel.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.PriceLevel} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.PriceLevel.toObject = function(includeInstance, msg) {
  var f, obj = {
    price: jspb.Message.getFieldWithDefault(msg, 1, ""),
    quantity: jspb.Message.getFieldWithDefault(msg, 2, ""),
    timestamp: jspb.Message.getFieldWithDefault(msg, 3, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel}
 */
proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.PriceLevel;
  return proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.PriceLevel} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel}
 */
proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setPrice(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setQuantity(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTimestamp(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.PriceLevel.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.PriceLevel} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.PriceLevel.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getPrice();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getQuantity();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTimestamp();
  if (f !== 0) {
    writer.writeSint64(
      3,
      f
    );
  }
};


/**
 * optional string price = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.getPrice = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel} returns this
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.setPrice = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string quantity = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.getQuantity = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel} returns this
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.setQuantity = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional sint64 timestamp = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.getTimestamp = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.PriceLevel} returns this
 */
proto.injective_spot_exchange_rpc.PriceLevel.prototype.setTimestamp = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrderbooksRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketIdsList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksRequest}
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrderbooksRequest;
  return proto.injective_spot_exchange_rpc.OrderbooksRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksRequest}
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.addMarketIds(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrderbooksRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      1,
      f
    );
  }
};


/**
 * repeated string market_ids = 1;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.getMarketIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.setMarketIdsList = function(value) {
  return jspb.Message.setField(this, 1, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.addMarketIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 1, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrderbooksRequest.prototype.clearMarketIdsList = function() {
  return this.setMarketIdsList([]);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrderbooksResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    orderbooksList: jspb.Message.toObjectList(msg.getOrderbooksList(),
    proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksResponse}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrderbooksResponse;
  return proto.injective_spot_exchange_rpc.OrderbooksResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksResponse}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.deserializeBinaryFromReader);
      msg.addOrderbooks(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrderbooksResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrderbooksResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrderbooksList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SingleSpotLimitOrderbook orderbooks = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook>}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.getOrderbooksList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook>} value
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksResponse} returns this
*/
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.setOrderbooksList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.addOrderbooks = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.OrderbooksResponse} returns this
 */
proto.injective_spot_exchange_rpc.OrderbooksResponse.prototype.clearOrderbooksList = function() {
  return this.setOrderbooksList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    orderbook: (f = msg.getOrderbook()) && proto.injective_spot_exchange_rpc.SpotLimitOrderbook.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook;
  return proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrderbook;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinaryFromReader);
      msg.setOrderbook(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getOrderbook();
  if (f != null) {
    writer.writeMessage(
      2,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrderbook.serializeBinaryToWriter
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} returns this
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional SpotLimitOrderbook orderbook = 2;
 * @return {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.getOrderbook = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotLimitOrderbook} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrderbook, 2));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} returns this
*/
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.setOrderbook = function(value) {
  return jspb.Message.setWrapperField(this, 2, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook} returns this
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.clearOrderbook = function() {
  return this.setOrderbook(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.SingleSpotLimitOrderbook.prototype.hasOrderbook = function() {
  return jspb.Message.getField(this, 2) != null;
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamOrderbookRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketIdsList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamOrderbookRequest;
  return proto.injective_spot_exchange_rpc.StreamOrderbookRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.addMarketIds(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamOrderbookRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      1,
      f
    );
  }
};


/**
 * repeated string market_ids = 1;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.getMarketIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.setMarketIdsList = function(value) {
  return jspb.Message.setField(this, 1, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.addMarketIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 1, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookRequest.prototype.clearMarketIdsList = function() {
  return this.setMarketIdsList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamOrderbookResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    orderbook: (f = msg.getOrderbook()) && proto.injective_spot_exchange_rpc.SpotLimitOrderbook.toObject(includeInstance, f),
    operationType: jspb.Message.getFieldWithDefault(msg, 2, ""),
    timestamp: jspb.Message.getFieldWithDefault(msg, 3, 0),
    marketId: jspb.Message.getFieldWithDefault(msg, 4, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamOrderbookResponse;
  return proto.injective_spot_exchange_rpc.StreamOrderbookResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrderbook;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrderbook.deserializeBinaryFromReader);
      msg.setOrderbook(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOperationType(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTimestamp(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamOrderbookResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrderbook();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrderbook.serializeBinaryToWriter
    );
  }
  f = message.getOperationType();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTimestamp();
  if (f !== 0) {
    writer.writeSint64(
      3,
      f
    );
  }
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
};


/**
 * optional SpotLimitOrderbook orderbook = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.getOrderbook = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotLimitOrderbook} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrderbook, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotLimitOrderbook|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} returns this
*/
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.setOrderbook = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.clearOrderbook = function() {
  return this.setOrderbook(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.hasOrderbook = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional string operation_type = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.getOperationType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.setOperationType = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional sint64 timestamp = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.getTimestamp = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.setTimestamp = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};


/**
 * optional string market_id = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrderbookResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrderbookResponse.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrdersRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrdersRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrdersRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    orderSide: jspb.Message.getFieldWithDefault(msg, 2, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 3, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 4, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 5, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrdersRequest;
  return proto.injective_spot_exchange_rpc.OrdersRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrdersRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOrderSide(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 4:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrdersRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrdersRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrdersRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getOrderSide();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      4,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      5,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string order_side = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.getOrderSide = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.setOrderSide = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string subaccount_id = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional uint64 skip = 4;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 4, value);
};


/**
 * optional sint32 limit = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.OrdersRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.OrdersResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.OrdersResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.OrdersResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrdersResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    ordersList: jspb.Message.toObjectList(msg.getOrdersList(),
    proto.injective_spot_exchange_rpc.SpotLimitOrder.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.OrdersResponse}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.OrdersResponse;
  return proto.injective_spot_exchange_rpc.OrdersResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.OrdersResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.OrdersResponse}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrder;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinaryFromReader);
      msg.addOrders(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.OrdersResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.OrdersResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.OrdersResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrdersList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrder.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SpotLimitOrder orders = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.getOrdersList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrder, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>} value
 * @return {!proto.injective_spot_exchange_rpc.OrdersResponse} returns this
*/
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.setOrdersList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrder=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder}
 */
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.addOrders = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SpotLimitOrder, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.OrdersResponse} returns this
 */
proto.injective_spot_exchange_rpc.OrdersResponse.prototype.clearOrdersList = function() {
  return this.setOrdersList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SpotLimitOrder.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrder} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.toObject = function(includeInstance, msg) {
  var f, obj = {
    orderHash: jspb.Message.getFieldWithDefault(msg, 1, ""),
    orderSide: jspb.Message.getFieldWithDefault(msg, 2, ""),
    marketId: jspb.Message.getFieldWithDefault(msg, 3, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 4, ""),
    price: jspb.Message.getFieldWithDefault(msg, 5, ""),
    quantity: jspb.Message.getFieldWithDefault(msg, 6, ""),
    unfilledQuantity: jspb.Message.getFieldWithDefault(msg, 7, ""),
    triggerPrice: jspb.Message.getFieldWithDefault(msg, 8, ""),
    feeRecipient: jspb.Message.getFieldWithDefault(msg, 9, ""),
    state: jspb.Message.getFieldWithDefault(msg, 10, ""),
    createdAt: jspb.Message.getFieldWithDefault(msg, 11, 0),
    updatedAt: jspb.Message.getFieldWithDefault(msg, 12, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SpotLimitOrder;
  return proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrder} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setOrderHash(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOrderSide(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 5:
      var value = /** @type {string} */ (reader.readString());
      msg.setPrice(value);
      break;
    case 6:
      var value = /** @type {string} */ (reader.readString());
      msg.setQuantity(value);
      break;
    case 7:
      var value = /** @type {string} */ (reader.readString());
      msg.setUnfilledQuantity(value);
      break;
    case 8:
      var value = /** @type {string} */ (reader.readString());
      msg.setTriggerPrice(value);
      break;
    case 9:
      var value = /** @type {string} */ (reader.readString());
      msg.setFeeRecipient(value);
      break;
    case 10:
      var value = /** @type {string} */ (reader.readString());
      msg.setState(value);
      break;
    case 11:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setCreatedAt(value);
      break;
    case 12:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setUpdatedAt(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SpotLimitOrder.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrder} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrderHash();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getOrderSide();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getPrice();
  if (f.length > 0) {
    writer.writeString(
      5,
      f
    );
  }
  f = message.getQuantity();
  if (f.length > 0) {
    writer.writeString(
      6,
      f
    );
  }
  f = message.getUnfilledQuantity();
  if (f.length > 0) {
    writer.writeString(
      7,
      f
    );
  }
  f = message.getTriggerPrice();
  if (f.length > 0) {
    writer.writeString(
      8,
      f
    );
  }
  f = message.getFeeRecipient();
  if (f.length > 0) {
    writer.writeString(
      9,
      f
    );
  }
  f = message.getState();
  if (f.length > 0) {
    writer.writeString(
      10,
      f
    );
  }
  f = message.getCreatedAt();
  if (f !== 0) {
    writer.writeSint64(
      11,
      f
    );
  }
  f = message.getUpdatedAt();
  if (f !== 0) {
    writer.writeSint64(
      12,
      f
    );
  }
};


/**
 * optional string order_hash = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getOrderHash = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setOrderHash = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string order_side = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getOrderSide = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setOrderSide = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string market_id = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string subaccount_id = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional string price = 5;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getPrice = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setPrice = function(value) {
  return jspb.Message.setProto3StringField(this, 5, value);
};


/**
 * optional string quantity = 6;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getQuantity = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setQuantity = function(value) {
  return jspb.Message.setProto3StringField(this, 6, value);
};


/**
 * optional string unfilled_quantity = 7;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getUnfilledQuantity = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setUnfilledQuantity = function(value) {
  return jspb.Message.setProto3StringField(this, 7, value);
};


/**
 * optional string trigger_price = 8;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getTriggerPrice = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setTriggerPrice = function(value) {
  return jspb.Message.setProto3StringField(this, 8, value);
};


/**
 * optional string fee_recipient = 9;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getFeeRecipient = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setFeeRecipient = function(value) {
  return jspb.Message.setProto3StringField(this, 9, value);
};


/**
 * optional string state = 10;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getState = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setState = function(value) {
  return jspb.Message.setProto3StringField(this, 10, value);
};


/**
 * optional sint64 created_at = 11;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getCreatedAt = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setCreatedAt = function(value) {
  return jspb.Message.setProto3IntField(this, 11, value);
};


/**
 * optional sint64 updated_at = 12;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.getUpdatedAt = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder} returns this
 */
proto.injective_spot_exchange_rpc.SpotLimitOrder.prototype.setUpdatedAt = function(value) {
  return jspb.Message.setProto3IntField(this, 12, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamOrdersRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    orderSide: jspb.Message.getFieldWithDefault(msg, 2, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 3, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 4, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 5, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamOrdersRequest;
  return proto.injective_spot_exchange_rpc.StreamOrdersRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOrderSide(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 4:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamOrdersRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getOrderSide();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      4,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      5,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string order_side = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.getOrderSide = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.setOrderSide = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string subaccount_id = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional uint64 skip = 4;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 4, value);
};


/**
 * optional sint32 limit = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamOrdersResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    order: (f = msg.getOrder()) && proto.injective_spot_exchange_rpc.SpotLimitOrder.toObject(includeInstance, f),
    operationType: jspb.Message.getFieldWithDefault(msg, 2, ""),
    timestamp: jspb.Message.getFieldWithDefault(msg, 3, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamOrdersResponse;
  return proto.injective_spot_exchange_rpc.StreamOrdersResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrder;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinaryFromReader);
      msg.setOrder(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOperationType(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTimestamp(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamOrdersResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrder();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrder.serializeBinaryToWriter
    );
  }
  f = message.getOperationType();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTimestamp();
  if (f !== 0) {
    writer.writeSint64(
      3,
      f
    );
  }
};


/**
 * optional SpotLimitOrder order = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotLimitOrder}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.getOrder = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotLimitOrder} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrder, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotLimitOrder|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} returns this
*/
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.setOrder = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.clearOrder = function() {
  return this.setOrder(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.hasOrder = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional string operation_type = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.getOperationType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.setOperationType = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional sint64 timestamp = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.getTimestamp = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamOrdersResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamOrdersResponse.prototype.setTimestamp = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.TradesRequest.repeatedFields_ = [12,10];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.TradesRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.TradesRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TradesRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    executionSide: jspb.Message.getFieldWithDefault(msg, 2, ""),
    direction: jspb.Message.getFieldWithDefault(msg, 3, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 4, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 5, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 6, 0),
    startTime: jspb.Message.getFieldWithDefault(msg, 7, 0),
    endTime: jspb.Message.getFieldWithDefault(msg, 8, 0),
    marketIdsList: (f = jspb.Message.getRepeatedField(msg, 12)) == null ? undefined : f,
    subaccountIdsList: (f = jspb.Message.getRepeatedField(msg, 10)) == null ? undefined : f,
    executionType: jspb.Message.getFieldWithDefault(msg, 11, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest}
 */
proto.injective_spot_exchange_rpc.TradesRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.TradesRequest;
  return proto.injective_spot_exchange_rpc.TradesRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.TradesRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest}
 */
proto.injective_spot_exchange_rpc.TradesRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setExecutionSide(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setDirection(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 6:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    case 7:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setStartTime(value);
      break;
    case 8:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setEndTime(value);
      break;
    case 12:
      var value = /** @type {string} */ (reader.readString());
      msg.addMarketIds(value);
      break;
    case 10:
      var value = /** @type {string} */ (reader.readString());
      msg.addSubaccountIds(value);
      break;
    case 11:
      var value = /** @type {string} */ (reader.readString());
      msg.setExecutionType(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.TradesRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.TradesRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TradesRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getExecutionSide();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getDirection();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      5,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      6,
      f
    );
  }
  f = message.getStartTime();
  if (f !== 0) {
    writer.writeSint64(
      7,
      f
    );
  }
  f = message.getEndTime();
  if (f !== 0) {
    writer.writeSint64(
      8,
      f
    );
  }
  f = message.getMarketIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      12,
      f
    );
  }
  f = message.getSubaccountIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      10,
      f
    );
  }
  f = message.getExecutionType();
  if (f.length > 0) {
    writer.writeString(
      11,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string execution_side = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getExecutionSide = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setExecutionSide = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string direction = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getDirection = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setDirection = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string subaccount_id = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional uint64 skip = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};


/**
 * optional sint32 limit = 6;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 6, value);
};


/**
 * optional sint64 start_time = 7;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getStartTime = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setStartTime = function(value) {
  return jspb.Message.setProto3IntField(this, 7, value);
};


/**
 * optional sint64 end_time = 8;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getEndTime = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setEndTime = function(value) {
  return jspb.Message.setProto3IntField(this, 8, value);
};


/**
 * repeated string market_ids = 12;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getMarketIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 12));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setMarketIdsList = function(value) {
  return jspb.Message.setField(this, 12, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.addMarketIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 12, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.clearMarketIdsList = function() {
  return this.setMarketIdsList([]);
};


/**
 * repeated string subaccount_ids = 10;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getSubaccountIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 10));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setSubaccountIdsList = function(value) {
  return jspb.Message.setField(this, 10, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.addSubaccountIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 10, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.clearSubaccountIdsList = function() {
  return this.setSubaccountIdsList([]);
};


/**
 * optional string execution_type = 11;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.getExecutionType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 11, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.TradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.TradesRequest.prototype.setExecutionType = function(value) {
  return jspb.Message.setProto3StringField(this, 11, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.TradesResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.TradesResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.TradesResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TradesResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    tradesList: jspb.Message.toObjectList(msg.getTradesList(),
    proto.injective_spot_exchange_rpc.SpotTrade.toObject, includeInstance),
    paging: (f = msg.getPaging()) && proto.injective_spot_exchange_rpc.Paging.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse}
 */
proto.injective_spot_exchange_rpc.TradesResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.TradesResponse;
  return proto.injective_spot_exchange_rpc.TradesResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.TradesResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse}
 */
proto.injective_spot_exchange_rpc.TradesResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotTrade;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinaryFromReader);
      msg.addTrades(value);
      break;
    case 2:
      var value = new proto.injective_spot_exchange_rpc.Paging;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.Paging.deserializeBinaryFromReader);
      msg.setPaging(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.TradesResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.TradesResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.TradesResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getTradesList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotTrade.serializeBinaryToWriter
    );
  }
  f = message.getPaging();
  if (f != null) {
    writer.writeMessage(
      2,
      f,
      proto.injective_spot_exchange_rpc.Paging.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SpotTrade trades = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SpotTrade>}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.getTradesList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SpotTrade>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SpotTrade, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SpotTrade>} value
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse} returns this
*/
proto.injective_spot_exchange_rpc.TradesResponse.prototype.setTradesList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SpotTrade=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.addTrades = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SpotTrade, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse} returns this
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.clearTradesList = function() {
  return this.setTradesList([]);
};


/**
 * optional Paging paging = 2;
 * @return {?proto.injective_spot_exchange_rpc.Paging}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.getPaging = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.Paging} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.Paging, 2));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.Paging|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse} returns this
*/
proto.injective_spot_exchange_rpc.TradesResponse.prototype.setPaging = function(value) {
  return jspb.Message.setWrapperField(this, 2, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.TradesResponse} returns this
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.clearPaging = function() {
  return this.setPaging(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.TradesResponse.prototype.hasPaging = function() {
  return jspb.Message.getField(this, 2) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SpotTrade.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SpotTrade} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotTrade.toObject = function(includeInstance, msg) {
  var f, obj = {
    orderHash: jspb.Message.getFieldWithDefault(msg, 1, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 2, ""),
    marketId: jspb.Message.getFieldWithDefault(msg, 3, ""),
    tradeExecutionType: jspb.Message.getFieldWithDefault(msg, 4, ""),
    tradeDirection: jspb.Message.getFieldWithDefault(msg, 5, ""),
    price: (f = msg.getPrice()) && proto.injective_spot_exchange_rpc.PriceLevel.toObject(includeInstance, f),
    fee: jspb.Message.getFieldWithDefault(msg, 7, ""),
    executedAt: jspb.Message.getFieldWithDefault(msg, 8, 0),
    feeRecipient: jspb.Message.getFieldWithDefault(msg, 9, ""),
    tradeId: jspb.Message.getFieldWithDefault(msg, 10, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade}
 */
proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SpotTrade;
  return proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SpotTrade} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade}
 */
proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setOrderHash(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setTradeExecutionType(value);
      break;
    case 5:
      var value = /** @type {string} */ (reader.readString());
      msg.setTradeDirection(value);
      break;
    case 6:
      var value = new proto.injective_spot_exchange_rpc.PriceLevel;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.PriceLevel.deserializeBinaryFromReader);
      msg.setPrice(value);
      break;
    case 7:
      var value = /** @type {string} */ (reader.readString());
      msg.setFee(value);
      break;
    case 8:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setExecutedAt(value);
      break;
    case 9:
      var value = /** @type {string} */ (reader.readString());
      msg.setFeeRecipient(value);
      break;
    case 10:
      var value = /** @type {string} */ (reader.readString());
      msg.setTradeId(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SpotTrade.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SpotTrade} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SpotTrade.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrderHash();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getTradeExecutionType();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getTradeDirection();
  if (f.length > 0) {
    writer.writeString(
      5,
      f
    );
  }
  f = message.getPrice();
  if (f != null) {
    writer.writeMessage(
      6,
      f,
      proto.injective_spot_exchange_rpc.PriceLevel.serializeBinaryToWriter
    );
  }
  f = message.getFee();
  if (f.length > 0) {
    writer.writeString(
      7,
      f
    );
  }
  f = message.getExecutedAt();
  if (f !== 0) {
    writer.writeSint64(
      8,
      f
    );
  }
  f = message.getFeeRecipient();
  if (f.length > 0) {
    writer.writeString(
      9,
      f
    );
  }
  f = message.getTradeId();
  if (f.length > 0) {
    writer.writeString(
      10,
      f
    );
  }
};


/**
 * optional string order_hash = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getOrderHash = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setOrderHash = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string subaccount_id = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string market_id = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string trade_execution_type = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getTradeExecutionType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setTradeExecutionType = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional string trade_direction = 5;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getTradeDirection = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setTradeDirection = function(value) {
  return jspb.Message.setProto3StringField(this, 5, value);
};


/**
 * optional PriceLevel price = 6;
 * @return {?proto.injective_spot_exchange_rpc.PriceLevel}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getPrice = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.PriceLevel} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.PriceLevel, 6));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.PriceLevel|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
*/
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setPrice = function(value) {
  return jspb.Message.setWrapperField(this, 6, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.clearPrice = function() {
  return this.setPrice(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.hasPrice = function() {
  return jspb.Message.getField(this, 6) != null;
};


/**
 * optional string fee = 7;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getFee = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setFee = function(value) {
  return jspb.Message.setProto3StringField(this, 7, value);
};


/**
 * optional sint64 executed_at = 8;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getExecutedAt = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setExecutedAt = function(value) {
  return jspb.Message.setProto3IntField(this, 8, value);
};


/**
 * optional string fee_recipient = 9;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getFeeRecipient = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setFeeRecipient = function(value) {
  return jspb.Message.setProto3StringField(this, 9, value);
};


/**
 * optional string trade_id = 10;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.getTradeId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade} returns this
 */
proto.injective_spot_exchange_rpc.SpotTrade.prototype.setTradeId = function(value) {
  return jspb.Message.setProto3StringField(this, 10, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.Paging.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.Paging.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.Paging} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.Paging.toObject = function(includeInstance, msg) {
  var f, obj = {
    total: jspb.Message.getFieldWithDefault(msg, 1, 0),
    from: jspb.Message.getFieldWithDefault(msg, 2, 0),
    to: jspb.Message.getFieldWithDefault(msg, 3, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.Paging}
 */
proto.injective_spot_exchange_rpc.Paging.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.Paging;
  return proto.injective_spot_exchange_rpc.Paging.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.Paging} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.Paging}
 */
proto.injective_spot_exchange_rpc.Paging.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTotal(value);
      break;
    case 2:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setFrom(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setTo(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.Paging.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.Paging.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.Paging} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.Paging.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getTotal();
  if (f !== 0) {
    writer.writeSint64(
      1,
      f
    );
  }
  f = message.getFrom();
  if (f !== 0) {
    writer.writeSint32(
      2,
      f
    );
  }
  f = message.getTo();
  if (f !== 0) {
    writer.writeSint32(
      3,
      f
    );
  }
};


/**
 * optional sint64 total = 1;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.Paging.prototype.getTotal = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.Paging} returns this
 */
proto.injective_spot_exchange_rpc.Paging.prototype.setTotal = function(value) {
  return jspb.Message.setProto3IntField(this, 1, value);
};


/**
 * optional sint32 from = 2;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.Paging.prototype.getFrom = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.Paging} returns this
 */
proto.injective_spot_exchange_rpc.Paging.prototype.setFrom = function(value) {
  return jspb.Message.setProto3IntField(this, 2, value);
};


/**
 * optional sint32 to = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.Paging.prototype.getTo = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.Paging} returns this
 */
proto.injective_spot_exchange_rpc.Paging.prototype.setTo = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.repeatedFields_ = [12,10];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamTradesRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    marketId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    executionSide: jspb.Message.getFieldWithDefault(msg, 2, ""),
    direction: jspb.Message.getFieldWithDefault(msg, 3, ""),
    subaccountId: jspb.Message.getFieldWithDefault(msg, 4, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 5, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 6, 0),
    startTime: jspb.Message.getFieldWithDefault(msg, 7, 0),
    endTime: jspb.Message.getFieldWithDefault(msg, 8, 0),
    marketIdsList: (f = jspb.Message.getRepeatedField(msg, 12)) == null ? undefined : f,
    subaccountIdsList: (f = jspb.Message.getRepeatedField(msg, 10)) == null ? undefined : f,
    executionType: jspb.Message.getFieldWithDefault(msg, 11, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamTradesRequest;
  return proto.injective_spot_exchange_rpc.StreamTradesRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setExecutionSide(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setDirection(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 6:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    case 7:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setStartTime(value);
      break;
    case 8:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setEndTime(value);
      break;
    case 12:
      var value = /** @type {string} */ (reader.readString());
      msg.addMarketIds(value);
      break;
    case 10:
      var value = /** @type {string} */ (reader.readString());
      msg.addSubaccountIds(value);
      break;
    case 11:
      var value = /** @type {string} */ (reader.readString());
      msg.setExecutionType(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamTradesRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getExecutionSide();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getDirection();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      5,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      6,
      f
    );
  }
  f = message.getStartTime();
  if (f !== 0) {
    writer.writeSint64(
      7,
      f
    );
  }
  f = message.getEndTime();
  if (f !== 0) {
    writer.writeSint64(
      8,
      f
    );
  }
  f = message.getMarketIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      12,
      f
    );
  }
  f = message.getSubaccountIdsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      10,
      f
    );
  }
  f = message.getExecutionType();
  if (f.length > 0) {
    writer.writeString(
      11,
      f
    );
  }
};


/**
 * optional string market_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string execution_side = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getExecutionSide = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setExecutionSide = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string direction = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getDirection = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setDirection = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string subaccount_id = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional uint64 skip = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};


/**
 * optional sint32 limit = 6;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 6, value);
};


/**
 * optional sint64 start_time = 7;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getStartTime = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setStartTime = function(value) {
  return jspb.Message.setProto3IntField(this, 7, value);
};


/**
 * optional sint64 end_time = 8;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getEndTime = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setEndTime = function(value) {
  return jspb.Message.setProto3IntField(this, 8, value);
};


/**
 * repeated string market_ids = 12;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getMarketIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 12));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setMarketIdsList = function(value) {
  return jspb.Message.setField(this, 12, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.addMarketIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 12, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.clearMarketIdsList = function() {
  return this.setMarketIdsList([]);
};


/**
 * repeated string subaccount_ids = 10;
 * @return {!Array<string>}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getSubaccountIdsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 10));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setSubaccountIdsList = function(value) {
  return jspb.Message.setField(this, 10, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.addSubaccountIds = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 10, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.clearSubaccountIdsList = function() {
  return this.setSubaccountIdsList([]);
};


/**
 * optional string execution_type = 11;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.getExecutionType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 11, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesRequest} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesRequest.prototype.setExecutionType = function(value) {
  return jspb.Message.setProto3StringField(this, 11, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.StreamTradesResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    trade: (f = msg.getTrade()) && proto.injective_spot_exchange_rpc.SpotTrade.toObject(includeInstance, f),
    operationType: jspb.Message.getFieldWithDefault(msg, 2, ""),
    timestamp: jspb.Message.getFieldWithDefault(msg, 3, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.StreamTradesResponse;
  return proto.injective_spot_exchange_rpc.StreamTradesResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotTrade;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinaryFromReader);
      msg.setTrade(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setOperationType(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readSint64());
      msg.setTimestamp(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.StreamTradesResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.StreamTradesResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getTrade();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotTrade.serializeBinaryToWriter
    );
  }
  f = message.getOperationType();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getTimestamp();
  if (f !== 0) {
    writer.writeSint64(
      3,
      f
    );
  }
};


/**
 * optional SpotTrade trade = 1;
 * @return {?proto.injective_spot_exchange_rpc.SpotTrade}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.getTrade = function() {
  return /** @type{?proto.injective_spot_exchange_rpc.SpotTrade} */ (
    jspb.Message.getWrapperField(this, proto.injective_spot_exchange_rpc.SpotTrade, 1));
};


/**
 * @param {?proto.injective_spot_exchange_rpc.SpotTrade|undefined} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse} returns this
*/
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.setTrade = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.clearTrade = function() {
  return this.setTrade(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.hasTrade = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional string operation_type = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.getOperationType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.setOperationType = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional sint64 timestamp = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.getTimestamp = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.StreamTradesResponse} returns this
 */
proto.injective_spot_exchange_rpc.StreamTradesResponse.prototype.setTimestamp = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    subaccountId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    marketId: jspb.Message.getFieldWithDefault(msg, 2, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 3, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 4, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest;
  return proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 3:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 4:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      3,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      4,
      f
    );
  }
};


/**
 * optional string subaccount_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string market_id = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional uint64 skip = 3;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 3, value);
};


/**
 * optional sint32 limit = 4;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 4, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    ordersList: jspb.Message.toObjectList(msg.getOrdersList(),
    proto.injective_spot_exchange_rpc.SpotLimitOrder.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse;
  return proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotLimitOrder;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotLimitOrder.deserializeBinaryFromReader);
      msg.addOrders(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOrdersList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotLimitOrder.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SpotLimitOrder orders = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.getOrdersList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SpotLimitOrder, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SpotLimitOrder>} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse} returns this
*/
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.setOrdersList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SpotLimitOrder=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SpotLimitOrder}
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.addOrders = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SpotLimitOrder, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountOrdersListResponse.prototype.clearOrdersList = function() {
  return this.setOrdersList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.toObject = function(includeInstance, msg) {
  var f, obj = {
    subaccountId: jspb.Message.getFieldWithDefault(msg, 1, ""),
    marketId: jspb.Message.getFieldWithDefault(msg, 2, ""),
    executionType: jspb.Message.getFieldWithDefault(msg, 3, ""),
    direction: jspb.Message.getFieldWithDefault(msg, 4, ""),
    skip: jspb.Message.getFieldWithDefault(msg, 5, 0),
    limit: jspb.Message.getFieldWithDefault(msg, 6, 0)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SubaccountTradesListRequest;
  return proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setSubaccountId(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setMarketId(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setExecutionType(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.setDirection(value);
      break;
    case 5:
      var value = /** @type {number} */ (reader.readUint64());
      msg.setSkip(value);
      break;
    case 6:
      var value = /** @type {number} */ (reader.readSint32());
      msg.setLimit(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getSubaccountId();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getMarketId();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getExecutionType();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getDirection();
  if (f.length > 0) {
    writer.writeString(
      4,
      f
    );
  }
  f = message.getSkip();
  if (f !== 0) {
    writer.writeUint64(
      5,
      f
    );
  }
  f = message.getLimit();
  if (f !== 0) {
    writer.writeSint32(
      6,
      f
    );
  }
};


/**
 * optional string subaccount_id = 1;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getSubaccountId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setSubaccountId = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string market_id = 2;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getMarketId = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setMarketId = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional string execution_type = 3;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getExecutionType = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setExecutionType = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional string direction = 4;
 * @return {string}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getDirection = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};


/**
 * @param {string} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setDirection = function(value) {
  return jspb.Message.setProto3StringField(this, 4, value);
};


/**
 * optional uint64 skip = 5;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getSkip = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setSkip = function(value) {
  return jspb.Message.setProto3IntField(this, 5, value);
};


/**
 * optional sint32 limit = 6;
 * @return {number}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.getLimit = function() {
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};


/**
 * @param {number} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListRequest} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListRequest.prototype.setLimit = function(value) {
  return jspb.Message.setProto3IntField(this, 6, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.toObject = function(opt_includeInstance) {
  return proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.toObject = function(includeInstance, msg) {
  var f, obj = {
    tradesList: jspb.Message.toObjectList(msg.getTradesList(),
    proto.injective_spot_exchange_rpc.SpotTrade.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.injective_spot_exchange_rpc.SubaccountTradesListResponse;
  return proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new proto.injective_spot_exchange_rpc.SpotTrade;
      reader.readMessage(value,proto.injective_spot_exchange_rpc.SpotTrade.deserializeBinaryFromReader);
      msg.addTrades(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getTradesList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      proto.injective_spot_exchange_rpc.SpotTrade.serializeBinaryToWriter
    );
  }
};


/**
 * repeated SpotTrade trades = 1;
 * @return {!Array<!proto.injective_spot_exchange_rpc.SpotTrade>}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.getTradesList = function() {
  return /** @type{!Array<!proto.injective_spot_exchange_rpc.SpotTrade>} */ (
    jspb.Message.getRepeatedWrapperField(this, proto.injective_spot_exchange_rpc.SpotTrade, 1));
};


/**
 * @param {!Array<!proto.injective_spot_exchange_rpc.SpotTrade>} value
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse} returns this
*/
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.setTradesList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.injective_spot_exchange_rpc.SpotTrade=} opt_value
 * @param {number=} opt_index
 * @return {!proto.injective_spot_exchange_rpc.SpotTrade}
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.addTrades = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.injective_spot_exchange_rpc.SpotTrade, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.injective_spot_exchange_rpc.SubaccountTradesListResponse} returns this
 */
proto.injective_spot_exchange_rpc.SubaccountTradesListResponse.prototype.clearTradesList = function() {
  return this.setTradesList([]);
};


goog.object.extend(exports, proto.injective_spot_exchange_rpc);