@d8x/perpetuals-sdk 0.6.0 → 0.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/dist/cjs/accountTrade.d.ts +11 -10
  2. package/dist/cjs/accountTrade.js +51 -45
  3. package/dist/cjs/accountTrade.js.map +1 -1
  4. package/dist/cjs/brokerTool.d.ts +14 -12
  5. package/dist/cjs/brokerTool.js +51 -28
  6. package/dist/cjs/brokerTool.js.map +1 -1
  7. package/dist/cjs/config/defaultConfig.json +20 -19
  8. package/dist/cjs/contracts/ERC20.d.ts +194 -0
  9. package/dist/cjs/contracts/ERC20.js +3 -0
  10. package/dist/cjs/contracts/ERC20.js.map +1 -0
  11. package/dist/cjs/contracts/IPerpetualManager.d.ts +3012 -0
  12. package/dist/cjs/contracts/IPerpetualManager.js +3 -0
  13. package/dist/cjs/contracts/IPerpetualManager.js.map +1 -0
  14. package/dist/cjs/contracts/LimitOrderBook.d.ts +560 -0
  15. package/dist/cjs/contracts/LimitOrderBook.js +3 -0
  16. package/dist/cjs/contracts/LimitOrderBook.js.map +1 -0
  17. package/dist/cjs/contracts/LimitOrderBookFactory.d.ts +152 -0
  18. package/dist/cjs/contracts/LimitOrderBookFactory.js +3 -0
  19. package/dist/cjs/contracts/LimitOrderBookFactory.js.map +1 -0
  20. package/dist/cjs/contracts/MockTokenSwap.d.ts +194 -0
  21. package/dist/cjs/contracts/MockTokenSwap.js +3 -0
  22. package/dist/cjs/contracts/MockTokenSwap.js.map +1 -0
  23. package/dist/cjs/contracts/ShareToken.d.ts +320 -0
  24. package/dist/cjs/contracts/ShareToken.js +3 -0
  25. package/dist/cjs/contracts/ShareToken.js.map +1 -0
  26. package/dist/cjs/contracts/common.d.ts +21 -0
  27. package/dist/cjs/contracts/common.js +3 -0
  28. package/dist/cjs/contracts/common.js.map +1 -0
  29. package/dist/cjs/contracts/factories/ERC20__factory.d.ts +226 -0
  30. package/dist/cjs/contracts/factories/ERC20__factory.js +309 -0
  31. package/dist/cjs/contracts/factories/ERC20__factory.js.map +1 -0
  32. package/dist/cjs/contracts/factories/IPerpetualManager__factory.d.ts +4599 -0
  33. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js +5909 -0
  34. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js.map +1 -0
  35. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.d.ts +131 -0
  36. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js +182 -0
  37. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -0
  38. package/dist/cjs/contracts/factories/LimitOrderBook__factory.d.ts +830 -0
  39. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js +1083 -0
  40. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js.map +1 -0
  41. package/dist/cjs/contracts/factories/MockTokenSwap__factory.d.ts +153 -0
  42. package/dist/cjs/contracts/factories/MockTokenSwap__factory.js +207 -0
  43. package/dist/cjs/contracts/factories/MockTokenSwap__factory.js.map +1 -0
  44. package/dist/cjs/contracts/factories/ShareToken__factory.d.ts +336 -0
  45. package/dist/cjs/contracts/factories/ShareToken__factory.js +449 -0
  46. package/dist/cjs/contracts/factories/ShareToken__factory.js.map +1 -0
  47. package/dist/cjs/contracts/factories/index.d.ts +6 -0
  48. package/dist/cjs/contracts/factories/index.js +19 -0
  49. package/dist/cjs/contracts/factories/index.js.map +1 -0
  50. package/dist/cjs/contracts/index.d.ts +13 -0
  51. package/dist/cjs/contracts/index.js +18 -0
  52. package/dist/cjs/contracts/index.js.map +1 -0
  53. package/dist/cjs/liquidatorTool.d.ts +7 -7
  54. package/dist/cjs/liquidatorTool.js +17 -16
  55. package/dist/cjs/liquidatorTool.js.map +1 -1
  56. package/dist/cjs/liquidityProviderTool.d.ts +4 -4
  57. package/dist/cjs/liquidityProviderTool.js +6 -12
  58. package/dist/cjs/liquidityProviderTool.js.map +1 -1
  59. package/dist/cjs/marketData.d.ts +30 -22
  60. package/dist/cjs/marketData.js +86 -76
  61. package/dist/cjs/marketData.js.map +1 -1
  62. package/dist/cjs/nodeSDKTypes.d.ts +6 -6
  63. package/dist/cjs/orderReferrerTool.d.ts +10 -10
  64. package/dist/cjs/orderReferrerTool.js +106 -103
  65. package/dist/cjs/orderReferrerTool.js.map +1 -1
  66. package/dist/cjs/perpetualDataHandler.d.ts +17 -14
  67. package/dist/cjs/perpetualDataHandler.js +36 -36
  68. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  69. package/dist/cjs/traderDigests.d.ts +2 -2
  70. package/dist/cjs/traderDigests.js +38 -49
  71. package/dist/cjs/traderDigests.js.map +1 -1
  72. package/dist/cjs/traderInterface.d.ts +5 -4
  73. package/dist/cjs/traderInterface.js +12 -24
  74. package/dist/cjs/traderInterface.js.map +1 -1
  75. package/dist/cjs/version.d.ts +1 -1
  76. package/dist/cjs/version.js +2 -2
  77. package/dist/cjs/version.js.map +1 -1
  78. package/dist/cjs/writeAccessHandler.d.ts +5 -5
  79. package/dist/cjs/writeAccessHandler.js +13 -12
  80. package/dist/cjs/writeAccessHandler.js.map +1 -1
  81. package/dist/esm/accountTrade.d.ts +11 -10
  82. package/dist/esm/accountTrade.js +52 -46
  83. package/dist/esm/accountTrade.js.map +1 -1
  84. package/dist/esm/brokerTool.d.ts +14 -12
  85. package/dist/esm/brokerTool.js +51 -28
  86. package/dist/esm/brokerTool.js.map +1 -1
  87. package/dist/esm/config/defaultConfig.json +20 -19
  88. package/dist/esm/contracts/ERC20.d.ts +194 -0
  89. package/dist/esm/contracts/ERC20.js +2 -0
  90. package/dist/esm/contracts/ERC20.js.map +1 -0
  91. package/dist/esm/contracts/IPerpetualManager.d.ts +3012 -0
  92. package/dist/esm/contracts/IPerpetualManager.js +2 -0
  93. package/dist/esm/contracts/IPerpetualManager.js.map +1 -0
  94. package/dist/esm/contracts/LimitOrderBook.d.ts +560 -0
  95. package/dist/esm/contracts/LimitOrderBook.js +2 -0
  96. package/dist/esm/contracts/LimitOrderBook.js.map +1 -0
  97. package/dist/esm/contracts/LimitOrderBookFactory.d.ts +152 -0
  98. package/dist/esm/contracts/LimitOrderBookFactory.js +2 -0
  99. package/dist/esm/contracts/LimitOrderBookFactory.js.map +1 -0
  100. package/dist/esm/contracts/MockTokenSwap.d.ts +194 -0
  101. package/dist/esm/contracts/MockTokenSwap.js +2 -0
  102. package/dist/esm/contracts/MockTokenSwap.js.map +1 -0
  103. package/dist/esm/contracts/ShareToken.d.ts +320 -0
  104. package/dist/esm/contracts/ShareToken.js +2 -0
  105. package/dist/esm/contracts/ShareToken.js.map +1 -0
  106. package/dist/esm/contracts/common.d.ts +21 -0
  107. package/dist/esm/contracts/common.js +2 -0
  108. package/dist/esm/contracts/common.js.map +1 -0
  109. package/dist/esm/contracts/factories/ERC20__factory.d.ts +226 -0
  110. package/dist/esm/contracts/factories/ERC20__factory.js +306 -0
  111. package/dist/esm/contracts/factories/ERC20__factory.js.map +1 -0
  112. package/dist/esm/contracts/factories/IPerpetualManager__factory.d.ts +4599 -0
  113. package/dist/esm/contracts/factories/IPerpetualManager__factory.js +5906 -0
  114. package/dist/esm/contracts/factories/IPerpetualManager__factory.js.map +1 -0
  115. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.d.ts +131 -0
  116. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js +179 -0
  117. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -0
  118. package/dist/esm/contracts/factories/LimitOrderBook__factory.d.ts +830 -0
  119. package/dist/esm/contracts/factories/LimitOrderBook__factory.js +1080 -0
  120. package/dist/esm/contracts/factories/LimitOrderBook__factory.js.map +1 -0
  121. package/dist/esm/contracts/factories/MockTokenSwap__factory.d.ts +153 -0
  122. package/dist/esm/contracts/factories/MockTokenSwap__factory.js +204 -0
  123. package/dist/esm/contracts/factories/MockTokenSwap__factory.js.map +1 -0
  124. package/dist/esm/contracts/factories/ShareToken__factory.d.ts +336 -0
  125. package/dist/esm/contracts/factories/ShareToken__factory.js +446 -0
  126. package/dist/esm/contracts/factories/ShareToken__factory.js.map +1 -0
  127. package/dist/esm/contracts/factories/index.d.ts +6 -0
  128. package/dist/esm/contracts/factories/index.js +10 -0
  129. package/dist/esm/contracts/factories/index.js.map +1 -0
  130. package/dist/esm/contracts/index.d.ts +13 -0
  131. package/dist/esm/contracts/index.js +8 -0
  132. package/dist/esm/contracts/index.js.map +1 -0
  133. package/dist/esm/liquidatorTool.d.ts +7 -7
  134. package/dist/esm/liquidatorTool.js +18 -17
  135. package/dist/esm/liquidatorTool.js.map +1 -1
  136. package/dist/esm/liquidityProviderTool.d.ts +4 -4
  137. package/dist/esm/liquidityProviderTool.js +6 -12
  138. package/dist/esm/liquidityProviderTool.js.map +1 -1
  139. package/dist/esm/marketData.d.ts +30 -22
  140. package/dist/esm/marketData.js +87 -77
  141. package/dist/esm/marketData.js.map +1 -1
  142. package/dist/esm/nodeSDKTypes.d.ts +6 -6
  143. package/dist/esm/orderReferrerTool.d.ts +10 -10
  144. package/dist/esm/orderReferrerTool.js +107 -104
  145. package/dist/esm/orderReferrerTool.js.map +1 -1
  146. package/dist/esm/perpetualDataHandler.d.ts +17 -14
  147. package/dist/esm/perpetualDataHandler.js +36 -36
  148. package/dist/esm/perpetualDataHandler.js.map +1 -1
  149. package/dist/esm/traderDigests.d.ts +2 -2
  150. package/dist/esm/traderDigests.js +38 -49
  151. package/dist/esm/traderDigests.js.map +1 -1
  152. package/dist/esm/traderInterface.d.ts +5 -4
  153. package/dist/esm/traderInterface.js +12 -24
  154. package/dist/esm/traderInterface.js.map +1 -1
  155. package/dist/esm/version.d.ts +1 -1
  156. package/dist/esm/version.js +1 -1
  157. package/dist/esm/version.js.map +1 -1
  158. package/dist/esm/writeAccessHandler.d.ts +5 -5
  159. package/dist/esm/writeAccessHandler.js +15 -14
  160. package/dist/esm/writeAccessHandler.js.map +1 -1
  161. package/doc/d8x-perpetuals-sdk.md +27 -0
  162. package/doc/marketData.md +13 -0
  163. package/package.json +7 -4
  164. package/dist/cjs/abi/testnet/IPerpetualManager.json +0 -5918
  165. package/dist/cjs/abi/testnet/v7/IPerpetualManager.json +0 -5918
  166. package/dist/cjs/abi/testnet/v8/LimitOrderBook.json +0 -1062
  167. package/dist/cjs/abi/testnet/v8/LimitOrderBookFactory.json +0 -161
  168. package/dist/cjs/abi/testnet/v8/ShareToken.json +0 -428
  169. package/dist/cjs/abi/zkevmTestnet/IPerpetualManager.json +0 -5773
  170. package/dist/cjs/abi/zkevmTestnet/LimitOrderBook.json +0 -1075
  171. package/dist/cjs/abi/zkevmTestnet/LimitOrderBookFactory.json +0 -135
  172. package/dist/cjs/abi/zkevmTestnet/ShareToken.json +0 -428
  173. package/dist/esm/abi/testnet/IPerpetualManager.json +0 -5918
  174. package/dist/esm/abi/testnet/LimitOrderBook.json +0 -1062
  175. package/dist/esm/abi/testnet/LimitOrderBookFactory.json +0 -161
  176. package/dist/esm/abi/testnet/ShareToken.json +0 -428
  177. package/dist/esm/abi/testnet/v7/IPerpetualManager.json +0 -5918
  178. package/dist/esm/abi/testnet/v7/LimitOrderBook.json +0 -1062
  179. package/dist/esm/abi/testnet/v7/LimitOrderBookFactory.json +0 -161
  180. package/dist/esm/abi/testnet/v7/ShareToken.json +0 -428
  181. package/dist/esm/abi/testnet/v8/LimitOrderBook.json +0 -1062
  182. package/dist/esm/abi/testnet/v8/LimitOrderBookFactory.json +0 -161
  183. package/dist/esm/abi/testnet/v8/ShareToken.json +0 -428
  184. package/dist/esm/abi/zkevmTestnet/IPerpetualManager.json +0 -5773
  185. package/dist/esm/abi/zkevmTestnet/LimitOrderBook.json +0 -1075
  186. package/dist/esm/abi/zkevmTestnet/LimitOrderBookFactory.json +0 -135
  187. package/dist/esm/abi/zkevmTestnet/ShareToken.json +0 -428
  188. /package/dist/cjs/abi/{testnet/v8/IPerpetualManager.json → IPerpetualManager.json} +0 -0
  189. /package/dist/cjs/abi/{testnet/LimitOrderBook.json → LimitOrderBook.json} +0 -0
  190. /package/dist/cjs/abi/{testnet/LimitOrderBookFactory.json → LimitOrderBookFactory.json} +0 -0
  191. /package/dist/cjs/abi/{testnet/ShareToken.json → ShareToken.json} +0 -0
  192. /package/dist/esm/abi/{testnet/v8/IPerpetualManager.json → IPerpetualManager.json} +0 -0
  193. /package/dist/{cjs/abi/testnet/v7 → esm/abi}/LimitOrderBook.json +0 -0
  194. /package/dist/{cjs/abi/testnet/v7 → esm/abi}/LimitOrderBookFactory.json +0 -0
  195. /package/dist/{cjs/abi/testnet/v7 → esm/abi}/ShareToken.json +0 -0
@@ -58,7 +58,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
58
58
  *
59
59
  * @returns Transaction object.
60
60
  */
61
- LiquidatorTool.prototype.liquidateTrader = function (symbol, traderAddr, liquidatorAddr, priceFeedData) {
61
+ LiquidatorTool.prototype.liquidateTrader = function (symbol, traderAddr, liquidatorAddr, priceFeedData, overrides) {
62
62
  if (liquidatorAddr === void 0) { liquidatorAddr = ""; }
63
63
  return tslib_1.__awaiter(this, void 0, void 0, function () {
64
64
  var perpID;
@@ -79,10 +79,11 @@ var LiquidatorTool = /** @class */ (function (_super) {
79
79
  case 1:
80
80
  priceFeedData = _a.sent();
81
81
  _a.label = 2;
82
- case 2: return [4 /*yield*/, this._liquidateByAMM(perpID, liquidatorAddr, traderAddr, priceFeedData, {
83
- gasLimit: this.gasLimit,
84
- value: this.PRICE_UPDATE_FEE_GWEI * priceFeedData.priceFeedVaas.length,
85
- })];
82
+ case 2:
83
+ if (!overrides || overrides.value == undefined) {
84
+ overrides = tslib_1.__assign({ value: priceFeedData.timestamps.length * this.PRICE_UPDATE_FEE_GWEI }, overrides);
85
+ }
86
+ return [4 /*yield*/, this._liquidateByAMM(perpID, liquidatorAddr, traderAddr, priceFeedData, overrides)];
86
87
  case 3: return [2 /*return*/, _a.sent()];
87
88
  }
88
89
  });
@@ -113,7 +114,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
113
114
  * @returns {boolean} True if the trader is maintenance margin safe in the perpetual.
114
115
  * False means that the trader's position can be liquidated.
115
116
  */
116
- LiquidatorTool.prototype.isMaintenanceMarginSafe = function (symbol, traderAddr, indexPrices) {
117
+ LiquidatorTool.prototype.isMaintenanceMarginSafe = function (symbol, traderAddr, indexPrices, overrides) {
117
118
  return tslib_1.__awaiter(this, void 0, void 0, function () {
118
119
  var idx_notional, perpID, obj, traderState, idx_maintenanceMgnRate, idx_marginAccountPositionBC, idx_collateralToQuoteConversion, idx_marginBalance, maintMgnRate, pos, marginbalance, coll2quote, base2collateral, threshold;
119
120
  return tslib_1.__generator(this, function (_a) {
@@ -130,10 +131,10 @@ var LiquidatorTool = /** @class */ (function (_super) {
130
131
  obj = _a.sent();
131
132
  indexPrices = [obj.idxPrices[0], obj.idxPrices[1]];
132
133
  _a.label = 2;
133
- case 2: return [4 /*yield*/, this.proxyContract.getTraderState(perpID, traderAddr, indexPrices.map(function (x) { return (0, d8XMath_1.floatToABK64x64)(x); }))];
134
+ case 2: return [4 /*yield*/, this.proxyContract.getTraderState(perpID, traderAddr, indexPrices.map(function (x) { return (0, d8XMath_1.floatToABK64x64)(x); }), overrides || {})];
134
135
  case 3:
135
136
  traderState = _a.sent();
136
- if (traderState[idx_notional] == 0) {
137
+ if (traderState[idx_notional].eq(0)) {
137
138
  // trader does not have open position
138
139
  return [2 /*return*/, true];
139
140
  }
@@ -161,11 +162,11 @@ var LiquidatorTool = /** @class */ (function (_super) {
161
162
  * @param options E.g., Gas limit, fee.
162
163
  * @ignore
163
164
  */
164
- LiquidatorTool.prototype._liquidateByAMM = function (perpetualId, liquidatorAddr, traderAddr, priceFeedData, options) {
165
+ LiquidatorTool.prototype._liquidateByAMM = function (perpetualId, liquidatorAddr, traderAddr, priceFeedData, overrides) {
165
166
  return tslib_1.__awaiter(this, void 0, void 0, function () {
166
167
  return tslib_1.__generator(this, function (_a) {
167
168
  switch (_a.label) {
168
- case 0: return [4 /*yield*/, this.proxyContract.liquidateByAMM(perpetualId, liquidatorAddr, traderAddr, priceFeedData.priceFeedVaas, priceFeedData.timestamps, options)];
169
+ case 0: return [4 /*yield*/, this.proxyContract.liquidateByAMM(perpetualId, liquidatorAddr, traderAddr, priceFeedData.priceFeedVaas, priceFeedData.timestamps, overrides)];
169
170
  case 1: return [2 /*return*/, _a.sent()];
170
171
  }
171
172
  });
@@ -191,7 +192,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
191
192
  *
192
193
  * @returns {number} Number of active accounts.
193
194
  */
194
- LiquidatorTool.prototype.countActivePerpAccounts = function (symbol) {
195
+ LiquidatorTool.prototype.countActivePerpAccounts = function (symbol, overrides) {
195
196
  return tslib_1.__awaiter(this, void 0, void 0, function () {
196
197
  var perpID, numAccounts;
197
198
  return tslib_1.__generator(this, function (_a) {
@@ -201,7 +202,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
201
202
  throw Error("no proxy contract initialized. Use createProxyInstance().");
202
203
  }
203
204
  perpID = LiquidatorTool.symbolToPerpetualId(symbol, this.symbolToPerpStaticInfo);
204
- return [4 /*yield*/, this.proxyContract.countActivePerpAccounts(perpID)];
205
+ return [4 /*yield*/, this.proxyContract.countActivePerpAccounts(perpID, overrides || {})];
205
206
  case 1:
206
207
  numAccounts = _a.sent();
207
208
  return [2 /*return*/, Number(numAccounts)];
@@ -231,7 +232,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
231
232
  *
232
233
  * @returns {string[]} Array of addresses at locations 'from', 'from'+1 ,..., 'to'-1.
233
234
  */
234
- LiquidatorTool.prototype.getActiveAccountsByChunks = function (symbol, from, to) {
235
+ LiquidatorTool.prototype.getActiveAccountsByChunks = function (symbol, from, to, overrides) {
235
236
  return tslib_1.__awaiter(this, void 0, void 0, function () {
236
237
  var perpID;
237
238
  return tslib_1.__generator(this, function (_a) {
@@ -241,7 +242,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
241
242
  throw Error("no proxy contract initialized. Use createProxyInstance().");
242
243
  }
243
244
  perpID = LiquidatorTool.symbolToPerpetualId(symbol, this.symbolToPerpStaticInfo);
244
- return [4 /*yield*/, this.proxyContract.getActivePerpAccountsByChunks(perpID, from, to)];
245
+ return [4 /*yield*/, this.proxyContract.getActivePerpAccountsByChunks(perpID, from, to, overrides || {})];
245
246
  case 1: return [2 /*return*/, _a.sent()];
246
247
  }
247
248
  });
@@ -267,7 +268,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
267
268
  *
268
269
  * @returns {string[]} Array of addresses.
269
270
  */
270
- LiquidatorTool.prototype.getAllActiveAccounts = function (symbol) {
271
+ LiquidatorTool.prototype.getAllActiveAccounts = function (symbol, overrides) {
271
272
  return tslib_1.__awaiter(this, void 0, void 0, function () {
272
273
  var totalAccounts;
273
274
  return tslib_1.__generator(this, function (_a) {
@@ -275,7 +276,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
275
276
  case 0: return [4 /*yield*/, this.countActivePerpAccounts(symbol)];
276
277
  case 1:
277
278
  totalAccounts = _a.sent();
278
- return [4 /*yield*/, this.getActiveAccountsByChunks(symbol, 0, totalAccounts)];
279
+ return [4 /*yield*/, this.getActiveAccountsByChunks(symbol, 0, totalAccounts, overrides)];
279
280
  case 2: return [2 /*return*/, _a.sent()];
280
281
  }
281
282
  });
@@ -1 +1 @@
1
- {"version":3,"file":"liquidatorTool.js","sourceRoot":"","sources":["../../src/liquidatorTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liquidatorTool.js","sourceRoot":"","sources":["../../src/liquidatorTool.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ContractTransaction } from "@ethersproject/contracts";
1
+ import { ContractTransaction, Overrides } from "@ethersproject/contracts";
2
2
  import { NodeSDKConfig } from "./nodeSDKTypes";
3
3
  import WriteAccessHandler from "./writeAccessHandler";
4
4
  /**
@@ -50,7 +50,7 @@ export default class LiquidityProviderTool extends WriteAccessHandler {
50
50
  *
51
51
  * @return Transaction object
52
52
  */
53
- addLiquidity(poolSymbolName: string, amountCC: number): Promise<ContractTransaction>;
53
+ addLiquidity(poolSymbolName: string, amountCC: number, overrides?: Overrides): Promise<ContractTransaction>;
54
54
  /**
55
55
  * Initiates a liquidity withdrawal from the pool
56
56
  * It triggers a time-delayed unlocking of the given number of pool shares.
@@ -74,7 +74,7 @@ export default class LiquidityProviderTool extends WriteAccessHandler {
74
74
  *
75
75
  * @return Transaction object.
76
76
  */
77
- initiateLiquidityWithdrawal(poolSymbolName: string, amountPoolShares: number): Promise<ContractTransaction>;
77
+ initiateLiquidityWithdrawal(poolSymbolName: string, amountPoolShares: number, overrides?: Overrides): Promise<ContractTransaction>;
78
78
  /**
79
79
  * Withdraws as much liquidity as there is available after a call to initiateLiquidityWithdrawal.
80
80
  * The address loses pool shares in return.
@@ -96,5 +96,5 @@ export default class LiquidityProviderTool extends WriteAccessHandler {
96
96
  *
97
97
  * @returns Transaction object.
98
98
  */
99
- executeLiquidityWithdrawal(poolSymbolName: string): Promise<ContractTransaction>;
99
+ executeLiquidityWithdrawal(poolSymbolName: string, overrides?: Overrides): Promise<ContractTransaction>;
100
100
  }
@@ -56,7 +56,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
56
56
  *
57
57
  * @return Transaction object
58
58
  */
59
- LiquidityProviderTool.prototype.addLiquidity = function (poolSymbolName, amountCC) {
59
+ LiquidityProviderTool.prototype.addLiquidity = function (poolSymbolName, amountCC, overrides) {
60
60
  return tslib_1.__awaiter(this, void 0, void 0, function () {
61
61
  var poolId, tx;
62
62
  return tslib_1.__generator(this, function (_a) {
@@ -66,9 +66,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
66
66
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
67
67
  }
68
68
  poolId = perpetualDataHandler_1.default._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
69
- return [4 /*yield*/, this.proxyContract.addLiquidity(poolId, (0, d8XMath_1.floatToDec18)(amountCC), {
70
- gasLimit: this.gasLimit,
71
- })];
69
+ return [4 /*yield*/, this.proxyContract.addLiquidity(poolId, (0, d8XMath_1.floatToDec18)(amountCC), overrides || { gasLimit: this.gasLimit })];
72
70
  case 1:
73
71
  tx = _a.sent();
74
72
  return [2 /*return*/, tx];
@@ -99,7 +97,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
99
97
  *
100
98
  * @return Transaction object.
101
99
  */
102
- LiquidityProviderTool.prototype.initiateLiquidityWithdrawal = function (poolSymbolName, amountPoolShares) {
100
+ LiquidityProviderTool.prototype.initiateLiquidityWithdrawal = function (poolSymbolName, amountPoolShares, overrides) {
103
101
  return tslib_1.__awaiter(this, void 0, void 0, function () {
104
102
  var poolId, tx;
105
103
  return tslib_1.__generator(this, function (_a) {
@@ -109,9 +107,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
109
107
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
110
108
  }
111
109
  poolId = perpetualDataHandler_1.default._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
112
- return [4 /*yield*/, this.proxyContract.withdrawLiquidity(poolId, (0, d8XMath_1.floatToDec18)(amountPoolShares), {
113
- gasLimit: this.gasLimit,
114
- })];
110
+ return [4 /*yield*/, this.proxyContract.withdrawLiquidity(poolId, (0, d8XMath_1.floatToDec18)(amountPoolShares), overrides || { gasLimit: this.gasLimit })];
115
111
  case 1:
116
112
  tx = _a.sent();
117
113
  return [2 /*return*/, tx];
@@ -140,7 +136,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
140
136
  *
141
137
  * @returns Transaction object.
142
138
  */
143
- LiquidityProviderTool.prototype.executeLiquidityWithdrawal = function (poolSymbolName) {
139
+ LiquidityProviderTool.prototype.executeLiquidityWithdrawal = function (poolSymbolName, overrides) {
144
140
  return tslib_1.__awaiter(this, void 0, void 0, function () {
145
141
  var poolId, tx;
146
142
  return tslib_1.__generator(this, function (_a) {
@@ -150,9 +146,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
150
146
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
151
147
  }
152
148
  poolId = perpetualDataHandler_1.default._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
153
- return [4 /*yield*/, this.proxyContract.executeLiquidityWithdrawal(poolId, {
154
- gasLimit: this.gasLimit,
155
- })];
149
+ return [4 /*yield*/, this.proxyContract.executeLiquidityWithdrawal(poolId, this.traderAddr, overrides || { gasLimit: this.gasLimit })];
156
150
  case 1:
157
151
  tx = _a.sent();
158
152
  return [2 /*return*/, tx];
@@ -1 +1 @@
1
- {"version":3,"file":"liquidityProviderTool.js","sourceRoot":"","sources":["../../src/liquidityProviderTool.ts"],"names":[],"mappings":";;;AACA,qCAAuD;AAEvD,wFAA0D;AAC1D,oFAAsD;AACtD;;;;GAIG;AACH;IAAmD,iDAAkB;IACnE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,+BAAmB,MAAqB,EAAE,UAAkB;eAC1D,kBAAM,MAAM,EAAE,UAAU,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,4CAAY,GAAzB,UAA0B,cAAsB,EAAE,QAAgB;;;;;;wBAChE,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,IAAA,sBAAY,EAAC,QAAQ,CAAC,EAAE;gCAC7E,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BACxB,CAAC,EAAA;;wBAFE,EAAE,GAAG,SAEP;wBACF,sBAAO,EAAE,EAAC;;;;KACX;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,2DAA2B,GAAxC,UACE,cAAsB,EACtB,gBAAwB;;;;;;wBAExB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAA,sBAAY,EAAC,gBAAgB,CAAC,EAAE;gCAC1F,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BACxB,CAAC,EAAA;;wBAFE,EAAE,GAAG,SAEP;wBACF,sBAAO,EAAE,EAAC;;;;KACX;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,0DAA0B,GAAvC,UAAwC,cAAsB;;;;;;wBAC5D,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,MAAM,EAAE;gCACnE,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BACxB,CAAC,EAAA;;wBAFE,EAAE,GAAG,SAEP;wBACF,sBAAO,EAAE,EAAC;;;;KACX;IACH,4BAAC;AAAD,CAAC,AA9HD,CAAmD,4BAAkB,GA8HpE"}
1
+ {"version":3,"file":"liquidityProviderTool.js","sourceRoot":"","sources":["../../src/liquidityProviderTool.ts"],"names":[],"mappings":";;;AACA,qCAAuD;AAEvD,wFAA0D;AAC1D,oFAAsD;AACtD;;;;GAIG;AACH;IAAmD,iDAAkB;IACnE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,+BAAmB,MAAqB,EAAE,UAAkB;eAC1D,kBAAM,MAAM,EAAE,UAAU,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,4CAAY,GAAzB,UACE,cAAsB,EACtB,QAAgB,EAChB,SAAqB;;;;;;wBAErB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAC5C,MAAM,EACN,IAAA,sBAAY,EAAC,QAAQ,CAAC,EACtB,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CACzC,EAAA;;wBAJG,EAAE,GAAG,SAIR;wBACD,sBAAO,EAAE,EAAC;;;;KACX;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,2DAA2B,GAAxC,UACE,cAAsB,EACtB,gBAAwB,EACxB,SAAqB;;;;;;wBAErB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CACjD,MAAM,EACN,IAAA,sBAAY,EAAC,gBAAgB,CAAC,EAC9B,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CACzC,EAAA;;wBAJG,EAAE,GAAG,SAIR;wBACD,sBAAO,EAAE,EAAC;;;;KACX;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,0DAA0B,GAAvC,UAAwC,cAAsB,EAAE,SAAqB;;;;;;wBACnF,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;4BACrD,MAAM,KAAK,CAAC,qEAAqE,CAAC,CAAC;yBACpF;wBACG,MAAM,GAAG,8BAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAC1D,MAAM,EACN,IAAI,CAAC,UAAU,EACf,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CACzC,EAAA;;wBAJG,EAAE,GAAG,SAIR;wBACD,sBAAO,EAAE,EAAC;;;;KACX;IACH,4BAAC;AAAD,CAAC,AAzID,CAAmD,4BAAkB,GAyIpE"}
@@ -1,5 +1,6 @@
1
- import { Contract } from "@ethersproject/contracts";
1
+ import { CallOverrides, Contract } from "@ethersproject/contracts";
2
2
  import { Provider } from "@ethersproject/providers";
3
+ import { LimitOrderBook } from "./contracts";
3
4
  import { ExchangeInfo, MarginAccount, NodeSDKConfig, Order, PerpetualState, PerpetualStaticInfo, PoolStaticInfo, SmartContractOrder } from "./nodeSDKTypes";
4
5
  import PerpetualDataHandler from "./perpetualDataHandler";
5
6
  import PriceFeeds from "./priceFeeds";
@@ -35,7 +36,7 @@ export default class MarketData extends PerpetualDataHandler {
35
36
  * about perpetual currencies
36
37
  * @param provider optional provider
37
38
  */
38
- createProxyInstance(provider?: Provider): Promise<void>;
39
+ createProxyInstance(provider?: Provider, overrides?: CallOverrides): Promise<void>;
39
40
  /**
40
41
  * Get the proxy address
41
42
  * @returns Address of the perpetual proxy contract
@@ -84,7 +85,7 @@ export default class MarketData extends PerpetualDataHandler {
84
85
  *
85
86
  * @returns {ExchangeInfo} Array of static data for all the pools and perpetuals in the system.
86
87
  */
87
- exchangeInfo(): Promise<ExchangeInfo>;
88
+ exchangeInfo(overrides?: CallOverrides): Promise<ExchangeInfo>;
88
89
  /**
89
90
  * All open orders for a trader-address and a symbol.
90
91
  * @param {string} traderAddr Address of the trader for which we get the open orders.
@@ -106,7 +107,7 @@ export default class MarketData extends PerpetualDataHandler {
106
107
  *
107
108
  * @returns For each perpetual an array of open orders and corresponding order-ids.
108
109
  */
109
- openOrders(traderAddr: string, symbol: string): Promise<{
110
+ openOrders(traderAddr: string, symbol: string, overrides?: CallOverrides): Promise<{
110
111
  orders: Order[];
111
112
  orderIds: string[];
112
113
  }[]>;
@@ -139,7 +140,7 @@ export default class MarketData extends PerpetualDataHandler {
139
140
  *
140
141
  * @returns {MarginAccount[]} Array of position risks of trader.
141
142
  */
142
- positionRisk(traderAddr: string, symbol: string): Promise<MarginAccount[]>;
143
+ positionRisk(traderAddr: string, symbol: string, overrides?: CallOverrides): Promise<MarginAccount[]>;
143
144
  /**
144
145
  * Information about the position open by a given trader in a given perpetual contract.
145
146
  * @param {string} traderAddr Address of the trader for which we get the position risk.
@@ -155,7 +156,7 @@ export default class MarketData extends PerpetualDataHandler {
155
156
  * @param indexPriceInfo Index prices and market status (open/closed)
156
157
  * @returns Position risk after trade
157
158
  */
158
- positionRiskOnTrade(traderAddr: string, order: Order, account?: MarginAccount, indexPriceInfo?: [number, number, boolean, boolean]): Promise<{
159
+ positionRiskOnTrade(traderAddr: string, order: Order, account?: MarginAccount, indexPriceInfo?: [number, number, boolean, boolean], overrides?: CallOverrides): Promise<{
159
160
  newPositionRisk: MarginAccount;
160
161
  orderCost: number;
161
162
  }>;
@@ -166,7 +167,7 @@ export default class MarketData extends PerpetualDataHandler {
166
167
  * @param currentPositionRisk Position risk before
167
168
  * @returns {MarginAccount} Position risk after
168
169
  */
169
- positionRiskOnCollateralAction(deltaCollateral: number, account: MarginAccount, indexPriceInfo?: [number, number, boolean, boolean]): Promise<MarginAccount>;
170
+ positionRiskOnCollateralAction(deltaCollateral: number, account: MarginAccount, indexPriceInfo?: [number, number, boolean, boolean], overrides?: CallOverrides): Promise<MarginAccount>;
170
171
  protected static _getLiquidationParams(symbol: string, lockedInQC: number, signedPositionBC: number, marginCashCC: number, markPrice: number, collToQuoteConversion: number, symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>): [number, number | undefined, number];
171
172
  /**
172
173
  * Gets the wallet balance in the collateral currency corresponding to a given perpetual symbol.
@@ -174,13 +175,13 @@ export default class MarketData extends PerpetualDataHandler {
174
175
  * @param symbol Symbol of the form ETH-USD-MATIC.
175
176
  * @returns Balance
176
177
  */
177
- getWalletBalance(address: string, symbol: string): Promise<number>;
178
+ getWalletBalance(address: string, symbol: string, overrides?: CallOverrides): Promise<number>;
178
179
  /**
179
180
  * Get the address' balance of the pool share token
180
181
  * @param address address of the liquidity provider
181
182
  * @param symbolOrId Symbol of the form ETH-USD-MATIC, or MATIC (collateral only), or Pool-Id
182
183
  */
183
- getPoolShareTokenBalance(address: string, symbolOrId: string | number): Promise<number>;
184
+ getPoolShareTokenBalance(address: string, symbolOrId: string | number, overrides?: CallOverrides): Promise<number>;
184
185
  /**
185
186
  * Query the pool share token holdings of address
186
187
  * @param address address of token holder
@@ -193,7 +194,7 @@ export default class MarketData extends PerpetualDataHandler {
193
194
  * @param symbolOrId symbol of the form ETH-USD-MATIC, MATIC (collateral), or poolId
194
195
  * @returns current pool share token price in collateral currency
195
196
  */
196
- getShareTokenPrice(symbolOrId: string | number): Promise<number>;
197
+ getShareTokenPrice(symbolOrId: string | number, overrides?: CallOverrides): Promise<number>;
197
198
  /**
198
199
  * Value of the pool share tokens for this liquidity provider
199
200
  * in poolSymbol-currency (e.g. MATIC, USDC).
@@ -214,7 +215,7 @@ export default class MarketData extends PerpetualDataHandler {
214
215
  * main();
215
216
  * @returns the value (in collateral tokens) of the pool share, #share tokens, shareTokenAddress
216
217
  */
217
- getParticipationValue(address: string, symbolOrId: string | number): Promise<{
218
+ getParticipationValue(address: string, symbolOrId: string | number, overrides?: CallOverrides): Promise<{
218
219
  value: number;
219
220
  shareTokenBalance: number;
220
221
  poolShareToken: string;
@@ -228,14 +229,14 @@ export default class MarketData extends PerpetualDataHandler {
228
229
  * @param positionRisk Current position risk (as seen in positionRisk)
229
230
  * @returns Maximal trade size, not signed
230
231
  */
231
- maxOrderSizeForTrader(side: string, positionRisk: MarginAccount): Promise<number>;
232
+ maxOrderSizeForTrader(side: string, positionRisk: MarginAccount, overrides?: CallOverrides): Promise<number>;
232
233
  /**
233
234
  *
234
235
  * @param side BUY_SIDE or SELL_SIDE
235
236
  * @param symbol of the form ETH-USD-MATIC.
236
237
  * @returns signed maximal position size in base currency
237
238
  */
238
- maxSignedPosition(side: string, symbol: string): Promise<number>;
239
+ maxSignedPosition(side: string, symbol: string, overrides?: CallOverrides): Promise<number>;
239
240
  /**
240
241
  * Uses the Oracle(s) in the exchange to get the latest price of a given index in a given currency, if a route exists.
241
242
  * @param {string} base Index name, e.g. ETH.
@@ -256,8 +257,15 @@ export default class MarketData extends PerpetualDataHandler {
256
257
  *
257
258
  * @returns {number} Price of index in given currency.
258
259
  */
259
- getOraclePrice(base: string, quote: string): Promise<number | undefined>;
260
- getOrderStatus(symbol: string, orderId: string): Promise<string>;
260
+ getOraclePrice(base: string, quote: string, overrides?: CallOverrides): Promise<number | undefined>;
261
+ /**
262
+ *
263
+ * @param symbol Symbol of the form ETH-USD-MATIC
264
+ * @param orderId Order Id
265
+ * @param overrides
266
+ * @returns Order status ()
267
+ */
268
+ getOrderStatus(symbol: string, orderId: string, overrides?: CallOverrides): Promise<number>;
261
269
  /**
262
270
  * Get the current mark price
263
271
  * @param symbol symbol of the form ETH-USD-MATIC
@@ -298,14 +306,14 @@ export default class MarketData extends PerpetualDataHandler {
298
306
  *
299
307
  * @returns price (number)
300
308
  */
301
- getPerpetualPrice(symbol: string, quantity: number, indexPrices?: [number, number]): Promise<number>;
309
+ getPerpetualPrice(symbol: string, quantity: number, indexPrices?: [number, number], overrides?: CallOverrides): Promise<number>;
302
310
  /**
303
311
  * Query recent perpetual state from blockchain
304
312
  * @param symbol symbol of the form ETH-USD-MATIC
305
313
  * @param indexPrices S2 and S3 prices/isMarketOpen if not provided fetch via REST API
306
314
  * @returns PerpetualState reference
307
315
  */
308
- getPerpetualState(symbol: string, indexPriceInfo?: [number, number, boolean, boolean]): Promise<PerpetualState>;
316
+ getPerpetualState(symbol: string, indexPriceInfo?: [number, number, boolean, boolean], overrides?: CallOverrides): Promise<PerpetualState>;
309
317
  /**
310
318
  * Query perpetual static info.
311
319
  * This information is queried once at createProxyInstance-time and remains static after that.
@@ -340,7 +348,7 @@ export default class MarketData extends PerpetualDataHandler {
340
348
  * @returns {Order[]} Array of user friendly order struct.
341
349
  * @ignore
342
350
  */
343
- protected openOrdersOnOrderBook(traderAddr: string, orderBookContract: Contract): Promise<Order[]>;
351
+ protected openOrdersOnOrderBook(traderAddr: string, orderBookContract: LimitOrderBook, overrides?: CallOverrides): Promise<Order[]>;
344
352
  /**
345
353
  *
346
354
  * @param traderAddr Address of the trader
@@ -348,7 +356,7 @@ export default class MarketData extends PerpetualDataHandler {
348
356
  * @returns Array of order-id's
349
357
  * @ignore
350
358
  */
351
- static orderIdsOfTrader(traderAddr: string, orderBookContract: Contract): Promise<string[]>;
359
+ static orderIdsOfTrader(traderAddr: string, orderBookContract: LimitOrderBook, overrides?: CallOverrides): Promise<string[]>;
352
360
  /**
353
361
  * Query the available margin conditional on the given (or current) index prices
354
362
  * Result is in collateral currency
@@ -357,14 +365,14 @@ export default class MarketData extends PerpetualDataHandler {
357
365
  * @param indexPrices optional index prices, will otherwise fetch from REST API
358
366
  * @returns available margin in collateral currency
359
367
  */
360
- getAvailableMargin(traderAddr: string, symbol: string, indexPrices?: [number, number]): Promise<number>;
368
+ getAvailableMargin(traderAddr: string, symbol: string, indexPrices?: [number, number], overrides?: CallOverrides): Promise<number>;
361
369
  /**
362
370
  * Calculate a type of exchange loyality score based on trader volume
363
371
  * @param traderAddr address of the trader
364
372
  * @param brokerAddr address of the trader's broker or undefined
365
373
  * @returns a loyality score (4 worst, 1 best)
366
374
  */
367
- getTraderLoyalityScore(traderAddr: string, brokerAddr?: string): Promise<number>;
375
+ getTraderLoyalityScore(traderAddr: string, brokerAddr?: string, overrides?: CallOverrides): Promise<number>;
368
376
  /**
369
377
  * Get all off-chain prices
370
378
  * @param _symbolToPerpStaticInfo mapping: PerpetualStaticInfo for each perpetual
@@ -391,5 +399,5 @@ export default class MarketData extends PerpetualDataHandler {
391
399
  private static _queryMidPrices;
392
400
  private static _queryPoolStates;
393
401
  private static _queryPerpetualStates;
394
- static _exchangeInfo(_proxyContract: Contract, _poolStaticInfos: Array<PoolStaticInfo>, _symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>, _perpetualIdToSymbol: Map<number, string>, _nestedPerpetualIDs: Array<Array<number>>, _symbolList: Map<string, string>, _priceFeedGetter: PriceFeeds): Promise<ExchangeInfo>;
402
+ static _exchangeInfo(_proxyContract: Contract, _poolStaticInfos: Array<PoolStaticInfo>, _symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>, _perpetualIdToSymbol: Map<number, string>, _nestedPerpetualIDs: Array<Array<number>>, _symbolList: Map<string, string>, _priceFeedGetter: PriceFeeds, overrides?: CallOverrides): Promise<ExchangeInfo>;
395
403
  }