@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
@@ -1,4 +1,4 @@
1
- import { __awaiter, __extends, __generator } from "tslib";
1
+ import { __assign, __awaiter, __extends, __generator } from "tslib";
2
2
  import { ABK64x64ToFloat, floatToABK64x64 } from "./d8XMath";
3
3
  import WriteAccessHandler from "./writeAccessHandler";
4
4
  /**
@@ -56,7 +56,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
56
56
  *
57
57
  * @returns Transaction object.
58
58
  */
59
- LiquidatorTool.prototype.liquidateTrader = function (symbol, traderAddr, liquidatorAddr, priceFeedData) {
59
+ LiquidatorTool.prototype.liquidateTrader = function (symbol, traderAddr, liquidatorAddr, priceFeedData, overrides) {
60
60
  if (liquidatorAddr === void 0) { liquidatorAddr = ""; }
61
61
  return __awaiter(this, void 0, void 0, function () {
62
62
  var perpID;
@@ -77,10 +77,11 @@ var LiquidatorTool = /** @class */ (function (_super) {
77
77
  case 1:
78
78
  priceFeedData = _a.sent();
79
79
  _a.label = 2;
80
- case 2: return [4 /*yield*/, this._liquidateByAMM(perpID, liquidatorAddr, traderAddr, priceFeedData, {
81
- gasLimit: this.gasLimit,
82
- value: this.PRICE_UPDATE_FEE_GWEI * priceFeedData.priceFeedVaas.length,
83
- })];
80
+ case 2:
81
+ if (!overrides || overrides.value == undefined) {
82
+ overrides = __assign({ value: priceFeedData.timestamps.length * this.PRICE_UPDATE_FEE_GWEI }, overrides);
83
+ }
84
+ return [4 /*yield*/, this._liquidateByAMM(perpID, liquidatorAddr, traderAddr, priceFeedData, overrides)];
84
85
  case 3: return [2 /*return*/, _a.sent()];
85
86
  }
86
87
  });
@@ -111,7 +112,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
111
112
  * @returns {boolean} True if the trader is maintenance margin safe in the perpetual.
112
113
  * False means that the trader's position can be liquidated.
113
114
  */
114
- LiquidatorTool.prototype.isMaintenanceMarginSafe = function (symbol, traderAddr, indexPrices) {
115
+ LiquidatorTool.prototype.isMaintenanceMarginSafe = function (symbol, traderAddr, indexPrices, overrides) {
115
116
  return __awaiter(this, void 0, void 0, function () {
116
117
  var idx_notional, perpID, obj, traderState, idx_maintenanceMgnRate, idx_marginAccountPositionBC, idx_collateralToQuoteConversion, idx_marginBalance, maintMgnRate, pos, marginbalance, coll2quote, base2collateral, threshold;
117
118
  return __generator(this, function (_a) {
@@ -128,10 +129,10 @@ var LiquidatorTool = /** @class */ (function (_super) {
128
129
  obj = _a.sent();
129
130
  indexPrices = [obj.idxPrices[0], obj.idxPrices[1]];
130
131
  _a.label = 2;
131
- case 2: return [4 /*yield*/, this.proxyContract.getTraderState(perpID, traderAddr, indexPrices.map(function (x) { return floatToABK64x64(x); }))];
132
+ case 2: return [4 /*yield*/, this.proxyContract.getTraderState(perpID, traderAddr, indexPrices.map(function (x) { return floatToABK64x64(x); }), overrides || {})];
132
133
  case 3:
133
134
  traderState = _a.sent();
134
- if (traderState[idx_notional] == 0) {
135
+ if (traderState[idx_notional].eq(0)) {
135
136
  // trader does not have open position
136
137
  return [2 /*return*/, true];
137
138
  }
@@ -159,11 +160,11 @@ var LiquidatorTool = /** @class */ (function (_super) {
159
160
  * @param options E.g., Gas limit, fee.
160
161
  * @ignore
161
162
  */
162
- LiquidatorTool.prototype._liquidateByAMM = function (perpetualId, liquidatorAddr, traderAddr, priceFeedData, options) {
163
+ LiquidatorTool.prototype._liquidateByAMM = function (perpetualId, liquidatorAddr, traderAddr, priceFeedData, overrides) {
163
164
  return __awaiter(this, void 0, void 0, function () {
164
165
  return __generator(this, function (_a) {
165
166
  switch (_a.label) {
166
- case 0: return [4 /*yield*/, this.proxyContract.liquidateByAMM(perpetualId, liquidatorAddr, traderAddr, priceFeedData.priceFeedVaas, priceFeedData.timestamps, options)];
167
+ case 0: return [4 /*yield*/, this.proxyContract.liquidateByAMM(perpetualId, liquidatorAddr, traderAddr, priceFeedData.priceFeedVaas, priceFeedData.timestamps, overrides)];
167
168
  case 1: return [2 /*return*/, _a.sent()];
168
169
  }
169
170
  });
@@ -189,7 +190,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
189
190
  *
190
191
  * @returns {number} Number of active accounts.
191
192
  */
192
- LiquidatorTool.prototype.countActivePerpAccounts = function (symbol) {
193
+ LiquidatorTool.prototype.countActivePerpAccounts = function (symbol, overrides) {
193
194
  return __awaiter(this, void 0, void 0, function () {
194
195
  var perpID, numAccounts;
195
196
  return __generator(this, function (_a) {
@@ -199,7 +200,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
199
200
  throw Error("no proxy contract initialized. Use createProxyInstance().");
200
201
  }
201
202
  perpID = LiquidatorTool.symbolToPerpetualId(symbol, this.symbolToPerpStaticInfo);
202
- return [4 /*yield*/, this.proxyContract.countActivePerpAccounts(perpID)];
203
+ return [4 /*yield*/, this.proxyContract.countActivePerpAccounts(perpID, overrides || {})];
203
204
  case 1:
204
205
  numAccounts = _a.sent();
205
206
  return [2 /*return*/, Number(numAccounts)];
@@ -229,7 +230,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
229
230
  *
230
231
  * @returns {string[]} Array of addresses at locations 'from', 'from'+1 ,..., 'to'-1.
231
232
  */
232
- LiquidatorTool.prototype.getActiveAccountsByChunks = function (symbol, from, to) {
233
+ LiquidatorTool.prototype.getActiveAccountsByChunks = function (symbol, from, to, overrides) {
233
234
  return __awaiter(this, void 0, void 0, function () {
234
235
  var perpID;
235
236
  return __generator(this, function (_a) {
@@ -239,7 +240,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
239
240
  throw Error("no proxy contract initialized. Use createProxyInstance().");
240
241
  }
241
242
  perpID = LiquidatorTool.symbolToPerpetualId(symbol, this.symbolToPerpStaticInfo);
242
- return [4 /*yield*/, this.proxyContract.getActivePerpAccountsByChunks(perpID, from, to)];
243
+ return [4 /*yield*/, this.proxyContract.getActivePerpAccountsByChunks(perpID, from, to, overrides || {})];
243
244
  case 1: return [2 /*return*/, _a.sent()];
244
245
  }
245
246
  });
@@ -265,7 +266,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
265
266
  *
266
267
  * @returns {string[]} Array of addresses.
267
268
  */
268
- LiquidatorTool.prototype.getAllActiveAccounts = function (symbol) {
269
+ LiquidatorTool.prototype.getAllActiveAccounts = function (symbol, overrides) {
269
270
  return __awaiter(this, void 0, void 0, function () {
270
271
  var totalAccounts;
271
272
  return __generator(this, function (_a) {
@@ -273,7 +274,7 @@ var LiquidatorTool = /** @class */ (function (_super) {
273
274
  case 0: return [4 /*yield*/, this.countActivePerpAccounts(symbol)];
274
275
  case 1:
275
276
  totalAccounts = _a.sent();
276
- return [4 /*yield*/, this.getActiveAccountsByChunks(symbol, 0, totalAccounts)];
277
+ return [4 /*yield*/, this.getActiveAccountsByChunks(symbol, 0, totalAccounts, overrides)];
277
278
  case 2: return [2 /*return*/, _a.sent()];
278
279
  }
279
280
  });
@@ -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
  }
@@ -54,7 +54,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
54
54
  *
55
55
  * @return Transaction object
56
56
  */
57
- LiquidityProviderTool.prototype.addLiquidity = function (poolSymbolName, amountCC) {
57
+ LiquidityProviderTool.prototype.addLiquidity = function (poolSymbolName, amountCC, overrides) {
58
58
  return __awaiter(this, void 0, void 0, function () {
59
59
  var poolId, tx;
60
60
  return __generator(this, function (_a) {
@@ -64,9 +64,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
64
64
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
65
65
  }
66
66
  poolId = PerpetualDataHandler._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
67
- return [4 /*yield*/, this.proxyContract.addLiquidity(poolId, floatToDec18(amountCC), {
68
- gasLimit: this.gasLimit,
69
- })];
67
+ return [4 /*yield*/, this.proxyContract.addLiquidity(poolId, floatToDec18(amountCC), overrides || { gasLimit: this.gasLimit })];
70
68
  case 1:
71
69
  tx = _a.sent();
72
70
  return [2 /*return*/, tx];
@@ -97,7 +95,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
97
95
  *
98
96
  * @return Transaction object.
99
97
  */
100
- LiquidityProviderTool.prototype.initiateLiquidityWithdrawal = function (poolSymbolName, amountPoolShares) {
98
+ LiquidityProviderTool.prototype.initiateLiquidityWithdrawal = function (poolSymbolName, amountPoolShares, overrides) {
101
99
  return __awaiter(this, void 0, void 0, function () {
102
100
  var poolId, tx;
103
101
  return __generator(this, function (_a) {
@@ -107,9 +105,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
107
105
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
108
106
  }
109
107
  poolId = PerpetualDataHandler._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
110
- return [4 /*yield*/, this.proxyContract.withdrawLiquidity(poolId, floatToDec18(amountPoolShares), {
111
- gasLimit: this.gasLimit,
112
- })];
108
+ return [4 /*yield*/, this.proxyContract.withdrawLiquidity(poolId, floatToDec18(amountPoolShares), overrides || { gasLimit: this.gasLimit })];
113
109
  case 1:
114
110
  tx = _a.sent();
115
111
  return [2 /*return*/, tx];
@@ -138,7 +134,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
138
134
  *
139
135
  * @returns Transaction object.
140
136
  */
141
- LiquidityProviderTool.prototype.executeLiquidityWithdrawal = function (poolSymbolName) {
137
+ LiquidityProviderTool.prototype.executeLiquidityWithdrawal = function (poolSymbolName, overrides) {
142
138
  return __awaiter(this, void 0, void 0, function () {
143
139
  var poolId, tx;
144
140
  return __generator(this, function (_a) {
@@ -148,9 +144,7 @@ var LiquidityProviderTool = /** @class */ (function (_super) {
148
144
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
149
145
  }
150
146
  poolId = PerpetualDataHandler._getPoolIdFromSymbol(poolSymbolName, this.poolStaticInfos);
151
- return [4 /*yield*/, this.proxyContract.executeLiquidityWithdrawal(poolId, {
152
- gasLimit: this.gasLimit,
153
- })];
147
+ return [4 /*yield*/, this.proxyContract.executeLiquidityWithdrawal(poolId, this.traderAddr, overrides || { gasLimit: this.gasLimit })];
154
148
  case 1:
155
149
  tx = _a.sent();
156
150
  return [2 /*return*/, tx];
@@ -1 +1 @@
1
- {"version":3,"file":"liquidityProviderTool.js","sourceRoot":"","sources":["../../src/liquidityProviderTool.ts"],"names":[],"mappings":";AACA,OAAO,EAAgB,YAAY,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD;;;;GAIG;AACH;IAAmD,yCAAkB;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,oBAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,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,oBAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,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,oBAAoB,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,kBAAkB,GA8HpE"}
1
+ {"version":3,"file":"liquidityProviderTool.js","sourceRoot":"","sources":["../../src/liquidityProviderTool.ts"],"names":[],"mappings":";AACA,OAAO,EAAgB,YAAY,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD;;;;GAIG;AACH;IAAmD,yCAAkB;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,oBAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAC5C,MAAM,EACN,YAAY,CAAC,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,oBAAoB,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpF,qBAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CACjD,MAAM,EACN,YAAY,CAAC,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,oBAAoB,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,kBAAkB,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
  }