@d8x/perpetuals-sdk 1.3.6 → 2.0.0-alpha

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 (271) hide show
  1. package/dist/cjs/accountTrade.d.ts +9 -9
  2. package/dist/cjs/accountTrade.js +19 -17
  3. package/dist/cjs/accountTrade.js.map +1 -1
  4. package/dist/cjs/brokerTool.d.ts +11 -12
  5. package/dist/cjs/brokerTool.js +7 -8
  6. package/dist/cjs/brokerTool.js.map +1 -1
  7. package/dist/cjs/constants.d.ts +11 -12
  8. package/dist/cjs/constants.js +12 -13
  9. package/dist/cjs/constants.js.map +1 -1
  10. package/dist/cjs/contracts/ERC20.d.ts +146 -171
  11. package/dist/cjs/contracts/IPerpetualManager.d.ts +2534 -2225
  12. package/dist/cjs/contracts/IPyth.d.ts +181 -184
  13. package/dist/cjs/contracts/LimitOrderBook.d.ts +373 -401
  14. package/dist/cjs/contracts/LimitOrderBookBeacon.d.ts +53 -104
  15. package/dist/cjs/contracts/LimitOrderBookFactory.d.ts +129 -185
  16. package/dist/cjs/contracts/MockTokenSwap.d.ts +109 -169
  17. package/dist/cjs/contracts/Multicall3.d.ts +147 -211
  18. package/dist/cjs/contracts/OnDemandOracleUpgradeable.d.ts +342 -399
  19. package/dist/cjs/contracts/OracleFactory.d.ts +258 -238
  20. package/dist/cjs/contracts/PerpetualManagerProxy.d.ts +1099 -891
  21. package/dist/cjs/contracts/RedStoneAbi.d.ts +369 -488
  22. package/dist/cjs/contracts/ShareToken.d.ts +232 -285
  23. package/dist/cjs/contracts/common.d.ts +40 -11
  24. package/dist/cjs/contracts/factories/ERC20__factory.d.ts +2 -3
  25. package/dist/cjs/contracts/factories/ERC20__factory.js +3 -3
  26. package/dist/cjs/contracts/factories/ERC20__factory.js.map +1 -1
  27. package/dist/cjs/contracts/factories/IPerpetualManager__factory.d.ts +2 -3
  28. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js +3 -3
  29. package/dist/cjs/contracts/factories/IPerpetualManager__factory.js.map +1 -1
  30. package/dist/cjs/contracts/factories/IPyth__factory.d.ts +2 -3
  31. package/dist/cjs/contracts/factories/IPyth__factory.js +3 -3
  32. package/dist/cjs/contracts/factories/IPyth__factory.js.map +1 -1
  33. package/dist/cjs/contracts/factories/LimitOrderBookBeacon__factory.d.ts +2 -3
  34. package/dist/cjs/contracts/factories/LimitOrderBookBeacon__factory.js +3 -3
  35. package/dist/cjs/contracts/factories/LimitOrderBookBeacon__factory.js.map +1 -1
  36. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.d.ts +2 -3
  37. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js +3 -3
  38. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -1
  39. package/dist/cjs/contracts/factories/LimitOrderBook__factory.d.ts +2 -3
  40. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js +3 -3
  41. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js.map +1 -1
  42. package/dist/cjs/contracts/factories/MockTokenSwap__factory.d.ts +2 -3
  43. package/dist/cjs/contracts/factories/MockTokenSwap__factory.js +3 -3
  44. package/dist/cjs/contracts/factories/MockTokenSwap__factory.js.map +1 -1
  45. package/dist/cjs/contracts/factories/Multicall3__factory.d.ts +11 -9
  46. package/dist/cjs/contracts/factories/Multicall3__factory.js +7 -10
  47. package/dist/cjs/contracts/factories/Multicall3__factory.js.map +1 -1
  48. package/dist/cjs/contracts/factories/OnDemandOracleUpgradeable__factory.d.ts +2 -3
  49. package/dist/cjs/contracts/factories/OnDemandOracleUpgradeable__factory.js +3 -3
  50. package/dist/cjs/contracts/factories/OnDemandOracleUpgradeable__factory.js.map +1 -1
  51. package/dist/cjs/contracts/factories/OracleFactory__factory.d.ts +2 -3
  52. package/dist/cjs/contracts/factories/OracleFactory__factory.js +3 -3
  53. package/dist/cjs/contracts/factories/OracleFactory__factory.js.map +1 -1
  54. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.d.ts +2 -3
  55. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js +3 -3
  56. package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
  57. package/dist/cjs/contracts/factories/RedStoneAbi__factory.d.ts +2 -3
  58. package/dist/cjs/contracts/factories/RedStoneAbi__factory.js +3 -3
  59. package/dist/cjs/contracts/factories/RedStoneAbi__factory.js.map +1 -1
  60. package/dist/cjs/contracts/factories/ShareToken__factory.d.ts +2 -3
  61. package/dist/cjs/contracts/factories/ShareToken__factory.js +3 -3
  62. package/dist/cjs/contracts/factories/ShareToken__factory.js.map +1 -1
  63. package/dist/cjs/d8XMath.d.ts +16 -16
  64. package/dist/cjs/d8XMath.js +48 -49
  65. package/dist/cjs/d8XMath.js.map +1 -1
  66. package/dist/cjs/liquidatorTool.d.ts +8 -8
  67. package/dist/cjs/liquidatorTool.js +5 -7
  68. package/dist/cjs/liquidatorTool.js.map +1 -1
  69. package/dist/cjs/liquidityProviderTool.d.ts +4 -5
  70. package/dist/cjs/liquidityProviderTool.js.map +1 -1
  71. package/dist/cjs/marketData.d.ts +27 -28
  72. package/dist/cjs/marketData.js +65 -69
  73. package/dist/cjs/marketData.js.map +1 -1
  74. package/dist/cjs/nodeSDKTypes.d.ts +35 -37
  75. package/dist/cjs/onChainPxFeed.d.ts +2 -2
  76. package/dist/cjs/onChainPxFeed.js +3 -3
  77. package/dist/cjs/onChainPxFeed.js.map +1 -1
  78. package/dist/cjs/onChainPxFeedAngle.d.ts +2 -2
  79. package/dist/cjs/onChainPxFeedAngle.js +4 -5
  80. package/dist/cjs/onChainPxFeedAngle.js.map +1 -1
  81. package/dist/cjs/onChainPxFeedRedStone.js +2 -2
  82. package/dist/cjs/onChainPxFeedRedStone.js.map +1 -1
  83. package/dist/cjs/orderExecutorTool.d.ts +7 -9
  84. package/dist/cjs/orderExecutorTool.js +54 -63
  85. package/dist/cjs/orderExecutorTool.js.map +1 -1
  86. package/dist/cjs/perpetualDataHandler.d.ts +38 -35
  87. package/dist/cjs/perpetualDataHandler.js +173 -167
  88. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  89. package/dist/cjs/perpetualEventHandler.d.ts +4 -5
  90. package/dist/cjs/perpetualEventHandler.js +2 -2
  91. package/dist/cjs/perpetualEventHandler.js.map +1 -1
  92. package/dist/cjs/priceFeeds.js +2 -3
  93. package/dist/cjs/priceFeeds.js.map +1 -1
  94. package/dist/cjs/referralCodeSigner.d.ts +1 -1
  95. package/dist/cjs/referralCodeSigner.js +12 -16
  96. package/dist/cjs/referralCodeSigner.js.map +1 -1
  97. package/dist/cjs/traderDigests.d.ts +2 -1
  98. package/dist/cjs/traderDigests.js +9 -11
  99. package/dist/cjs/traderDigests.js.map +1 -1
  100. package/dist/cjs/traderInterface.d.ts +8 -9
  101. package/dist/cjs/traderInterface.js +26 -23
  102. package/dist/cjs/traderInterface.js.map +1 -1
  103. package/dist/cjs/utils.d.ts +2 -3
  104. package/dist/cjs/utils.js +1 -2
  105. package/dist/cjs/utils.js.map +1 -1
  106. package/dist/cjs/version.d.ts +1 -1
  107. package/dist/cjs/version.js +1 -1
  108. package/dist/cjs/version.js.map +1 -1
  109. package/dist/cjs/writeAccessHandler.d.ts +7 -9
  110. package/dist/cjs/writeAccessHandler.js +13 -16
  111. package/dist/cjs/writeAccessHandler.js.map +1 -1
  112. package/dist/esm/accountTrade.d.ts +9 -9
  113. package/dist/esm/accountTrade.js +19 -17
  114. package/dist/esm/accountTrade.js.map +1 -1
  115. package/dist/esm/brokerTool.d.ts +11 -12
  116. package/dist/esm/brokerTool.js +2 -3
  117. package/dist/esm/brokerTool.js.map +1 -1
  118. package/dist/esm/constants.d.ts +11 -12
  119. package/dist/esm/constants.js +12 -13
  120. package/dist/esm/constants.js.map +1 -1
  121. package/dist/esm/contracts/ERC20.d.ts +146 -171
  122. package/dist/esm/contracts/IPerpetualManager.d.ts +2534 -2225
  123. package/dist/esm/contracts/IPyth.d.ts +181 -184
  124. package/dist/esm/contracts/LimitOrderBook.d.ts +373 -401
  125. package/dist/esm/contracts/LimitOrderBookBeacon.d.ts +53 -104
  126. package/dist/esm/contracts/LimitOrderBookFactory.d.ts +129 -185
  127. package/dist/esm/contracts/MockTokenSwap.d.ts +109 -169
  128. package/dist/esm/contracts/Multicall3.d.ts +147 -211
  129. package/dist/esm/contracts/OnDemandOracleUpgradeable.d.ts +342 -399
  130. package/dist/esm/contracts/OracleFactory.d.ts +258 -238
  131. package/dist/esm/contracts/PerpetualManagerProxy.d.ts +1099 -891
  132. package/dist/esm/contracts/RedStoneAbi.d.ts +369 -488
  133. package/dist/esm/contracts/ShareToken.d.ts +232 -285
  134. package/dist/esm/contracts/common.d.ts +40 -11
  135. package/dist/esm/contracts/factories/ERC20__factory.d.ts +2 -3
  136. package/dist/esm/contracts/factories/ERC20__factory.js +4 -4
  137. package/dist/esm/contracts/factories/ERC20__factory.js.map +1 -1
  138. package/dist/esm/contracts/factories/IPerpetualManager__factory.d.ts +2 -3
  139. package/dist/esm/contracts/factories/IPerpetualManager__factory.js +4 -4
  140. package/dist/esm/contracts/factories/IPerpetualManager__factory.js.map +1 -1
  141. package/dist/esm/contracts/factories/IPyth__factory.d.ts +2 -3
  142. package/dist/esm/contracts/factories/IPyth__factory.js +4 -4
  143. package/dist/esm/contracts/factories/IPyth__factory.js.map +1 -1
  144. package/dist/esm/contracts/factories/LimitOrderBookBeacon__factory.d.ts +2 -3
  145. package/dist/esm/contracts/factories/LimitOrderBookBeacon__factory.js +4 -4
  146. package/dist/esm/contracts/factories/LimitOrderBookBeacon__factory.js.map +1 -1
  147. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.d.ts +2 -3
  148. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js +4 -4
  149. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -1
  150. package/dist/esm/contracts/factories/LimitOrderBook__factory.d.ts +2 -3
  151. package/dist/esm/contracts/factories/LimitOrderBook__factory.js +4 -4
  152. package/dist/esm/contracts/factories/LimitOrderBook__factory.js.map +1 -1
  153. package/dist/esm/contracts/factories/MockTokenSwap__factory.d.ts +2 -3
  154. package/dist/esm/contracts/factories/MockTokenSwap__factory.js +4 -4
  155. package/dist/esm/contracts/factories/MockTokenSwap__factory.js.map +1 -1
  156. package/dist/esm/contracts/factories/Multicall3__factory.d.ts +11 -9
  157. package/dist/esm/contracts/factories/Multicall3__factory.js +8 -11
  158. package/dist/esm/contracts/factories/Multicall3__factory.js.map +1 -1
  159. package/dist/esm/contracts/factories/OnDemandOracleUpgradeable__factory.d.ts +2 -3
  160. package/dist/esm/contracts/factories/OnDemandOracleUpgradeable__factory.js +4 -4
  161. package/dist/esm/contracts/factories/OnDemandOracleUpgradeable__factory.js.map +1 -1
  162. package/dist/esm/contracts/factories/OracleFactory__factory.d.ts +2 -3
  163. package/dist/esm/contracts/factories/OracleFactory__factory.js +4 -4
  164. package/dist/esm/contracts/factories/OracleFactory__factory.js.map +1 -1
  165. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.d.ts +2 -3
  166. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js +4 -4
  167. package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
  168. package/dist/esm/contracts/factories/RedStoneAbi__factory.d.ts +2 -3
  169. package/dist/esm/contracts/factories/RedStoneAbi__factory.js +4 -4
  170. package/dist/esm/contracts/factories/RedStoneAbi__factory.js.map +1 -1
  171. package/dist/esm/contracts/factories/ShareToken__factory.d.ts +2 -3
  172. package/dist/esm/contracts/factories/ShareToken__factory.js +4 -4
  173. package/dist/esm/contracts/factories/ShareToken__factory.js.map +1 -1
  174. package/dist/esm/d8XMath.d.ts +16 -16
  175. package/dist/esm/d8XMath.js +48 -49
  176. package/dist/esm/d8XMath.js.map +1 -1
  177. package/dist/esm/liquidatorTool.d.ts +8 -8
  178. package/dist/esm/liquidatorTool.js +5 -7
  179. package/dist/esm/liquidatorTool.js.map +1 -1
  180. package/dist/esm/liquidityProviderTool.d.ts +4 -5
  181. package/dist/esm/liquidityProviderTool.js.map +1 -1
  182. package/dist/esm/marketData.d.ts +27 -28
  183. package/dist/esm/marketData.js +55 -59
  184. package/dist/esm/marketData.js.map +1 -1
  185. package/dist/esm/nodeSDKTypes.d.ts +35 -37
  186. package/dist/esm/onChainPxFeed.d.ts +2 -2
  187. package/dist/esm/onChainPxFeed.js +3 -3
  188. package/dist/esm/onChainPxFeed.js.map +1 -1
  189. package/dist/esm/onChainPxFeedAngle.d.ts +2 -2
  190. package/dist/esm/onChainPxFeedAngle.js +2 -3
  191. package/dist/esm/onChainPxFeedAngle.js.map +1 -1
  192. package/dist/esm/onChainPxFeedRedStone.js +1 -1
  193. package/dist/esm/onChainPxFeedRedStone.js.map +1 -1
  194. package/dist/esm/orderExecutorTool.d.ts +7 -9
  195. package/dist/esm/orderExecutorTool.js +40 -49
  196. package/dist/esm/orderExecutorTool.js.map +1 -1
  197. package/dist/esm/perpetualDataHandler.d.ts +38 -35
  198. package/dist/esm/perpetualDataHandler.js +114 -108
  199. package/dist/esm/perpetualDataHandler.js.map +1 -1
  200. package/dist/esm/perpetualEventHandler.d.ts +4 -5
  201. package/dist/esm/perpetualEventHandler.js +2 -2
  202. package/dist/esm/perpetualEventHandler.js.map +1 -1
  203. package/dist/esm/priceFeeds.js +2 -3
  204. package/dist/esm/priceFeeds.js.map +1 -1
  205. package/dist/esm/referralCodeSigner.d.ts +1 -1
  206. package/dist/esm/referralCodeSigner.js +6 -10
  207. package/dist/esm/referralCodeSigner.js.map +1 -1
  208. package/dist/esm/traderDigests.d.ts +2 -1
  209. package/dist/esm/traderDigests.js +2 -4
  210. package/dist/esm/traderDigests.js.map +1 -1
  211. package/dist/esm/traderInterface.d.ts +8 -9
  212. package/dist/esm/traderInterface.js +26 -23
  213. package/dist/esm/traderInterface.js.map +1 -1
  214. package/dist/esm/utils.d.ts +2 -3
  215. package/dist/esm/utils.js +1 -2
  216. package/dist/esm/utils.js.map +1 -1
  217. package/dist/esm/version.d.ts +1 -1
  218. package/dist/esm/version.js +1 -1
  219. package/dist/esm/version.js.map +1 -1
  220. package/dist/esm/writeAccessHandler.d.ts +7 -9
  221. package/dist/esm/writeAccessHandler.js +5 -8
  222. package/dist/esm/writeAccessHandler.js.map +1 -1
  223. package/package.json +7 -17
  224. package/src/accountTrade.ts +32 -34
  225. package/src/brokerTool.ts +17 -20
  226. package/src/constants.ts +12 -13
  227. package/src/contracts/ERC20.ts +236 -350
  228. package/src/contracts/IPerpetualManager.ts +3359 -5050
  229. package/src/contracts/IPyth.ts +272 -409
  230. package/src/contracts/LimitOrderBook.ts +503 -779
  231. package/src/contracts/LimitOrderBookBeacon.ts +123 -171
  232. package/src/contracts/LimitOrderBookFactory.ts +263 -332
  233. package/src/contracts/MockTokenSwap.ts +237 -275
  234. package/src/contracts/Multicall3.ts +208 -374
  235. package/src/contracts/OnDemandOracleUpgradeable.ts +569 -782
  236. package/src/contracts/OracleFactory.ts +410 -538
  237. package/src/contracts/PerpetualManagerProxy.ts +1898 -1426
  238. package/src/contracts/RedStoneAbi.ts +486 -986
  239. package/src/contracts/ShareToken.ts +376 -557
  240. package/src/contracts/common.ts +108 -21
  241. package/src/contracts/factories/ERC20__factory.ts +4 -5
  242. package/src/contracts/factories/IPerpetualManager__factory.ts +4 -5
  243. package/src/contracts/factories/IPyth__factory.ts +4 -5
  244. package/src/contracts/factories/LimitOrderBookBeacon__factory.ts +5 -6
  245. package/src/contracts/factories/LimitOrderBookFactory__factory.ts +5 -6
  246. package/src/contracts/factories/LimitOrderBook__factory.ts +4 -5
  247. package/src/contracts/factories/MockTokenSwap__factory.ts +4 -5
  248. package/src/contracts/factories/Multicall3__factory.ts +21 -19
  249. package/src/contracts/factories/OnDemandOracleUpgradeable__factory.ts +5 -6
  250. package/src/contracts/factories/OracleFactory__factory.ts +4 -5
  251. package/src/contracts/factories/PerpetualManagerProxy__factory.ts +5 -6
  252. package/src/contracts/factories/RedStoneAbi__factory.ts +4 -8
  253. package/src/contracts/factories/ShareToken__factory.ts +4 -8
  254. package/src/d8XMath.ts +57 -57
  255. package/src/liquidatorTool.ts +12 -15
  256. package/src/liquidityProviderTool.ts +7 -5
  257. package/src/marketData.ts +110 -121
  258. package/src/nodeSDKTypes.ts +51 -38
  259. package/src/onChainPxFeed.ts +4 -4
  260. package/src/onChainPxFeedAngle.ts +5 -7
  261. package/src/onChainPxFeedRedStone.ts +1 -3
  262. package/src/orderExecutorTool.ts +102 -109
  263. package/src/perpetualDataHandler.ts +181 -167
  264. package/src/perpetualEventHandler.ts +16 -17
  265. package/src/priceFeeds.ts +2 -3
  266. package/src/referralCodeSigner.ts +6 -10
  267. package/src/traderDigests.ts +8 -5
  268. package/src/traderInterface.ts +45 -31
  269. package/src/utils.ts +3 -4
  270. package/src/version.ts +1 -1
  271. package/src/writeAccessHandler.ts +26 -17
package/src/brokerTool.ts CHANGED
@@ -1,7 +1,3 @@
1
- import { defaultAbiCoder } from "@ethersproject/abi";
2
- import { Signer } from "@ethersproject/abstract-signer";
3
- import { CallOverrides, ContractTransaction, Overrides } from "@ethersproject/contracts";
4
- import { keccak256 } from "@ethersproject/keccak256";
5
1
  import { ABK64x64ToFloat } from "./d8XMath";
6
2
  import { NodeSDKConfig, Order, PerpetualStaticInfo, SmartContractOrder } from "./nodeSDKTypes";
7
3
  import PerpetualDataHandler from "./perpetualDataHandler";
@@ -9,6 +5,7 @@ import WriteAccessHandler from "./writeAccessHandler";
9
5
 
10
6
  import { Buffer } from "buffer";
11
7
  import AccountTrade from "./accountTrade";
8
+ import { AbiCoder, BigNumberish, ContractTransactionResponse, keccak256, Overrides, Signer } from "ethers";
12
9
  /**
13
10
  * Functions for white-label partners to determine fees, deposit lots, and sign-up traders.
14
11
  * This class requires a private key and executes smart-contract interactions that
@@ -64,7 +61,7 @@ export default class BrokerTool extends WriteAccessHandler {
64
61
  *
65
62
  * @returns {number} Exchange fee for this white-label partner, in decimals (i.e. 0.1% is 0.001)
66
63
  */
67
- public async getBrokerInducedFee(poolSymbolName: string, overrides?: CallOverrides): Promise<number | undefined> {
64
+ public async getBrokerInducedFee(poolSymbolName: string, overrides?: Overrides): Promise<number | undefined> {
68
65
  if (this.proxyContract == null || this.signer == null) {
69
66
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
70
67
  }
@@ -103,7 +100,7 @@ export default class BrokerTool extends WriteAccessHandler {
103
100
  public async getFeeForBrokerDesignation(
104
101
  poolSymbolName: string,
105
102
  lots?: number,
106
- overrides?: CallOverrides
103
+ overrides?: Overrides
107
104
  ): Promise<number> {
108
105
  if (this.proxyContract == null || this.signer == null) {
109
106
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
@@ -142,7 +139,7 @@ export default class BrokerTool extends WriteAccessHandler {
142
139
  *
143
140
  * @returns {number} Fee based solely on a white-label partner's traded volume in the corresponding pool, in decimals (i.e. 0.1% is 0.001).
144
141
  */
145
- public async getFeeForBrokerVolume(poolSymbolName: string, overrides?: CallOverrides): Promise<number> {
142
+ public async getFeeForBrokerVolume(poolSymbolName: string, overrides?: Overrides): Promise<number> {
146
143
  if (this.proxyContract == null || this.signer == null) {
147
144
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
148
145
  }
@@ -173,7 +170,7 @@ export default class BrokerTool extends WriteAccessHandler {
173
170
  *
174
171
  * @returns {number} Fee based solely on a white-label partner's D8X balance, in decimals (i.e. 0.1% is 0.001).
175
172
  */
176
- public async getFeeForBrokerStake(brokerAddr?: string, overrides?: CallOverrides): Promise<number> {
173
+ public async getFeeForBrokerStake(brokerAddr?: string, overrides?: Overrides): Promise<number> {
177
174
  if (this.proxyContract == null || this.signer == null) {
178
175
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
179
176
  }
@@ -219,7 +216,7 @@ export default class BrokerTool extends WriteAccessHandler {
219
216
  *
220
217
  * @returns {number} Fee in decimals (i.e. 0.1% is 0.001).
221
218
  */
222
- public async determineExchangeFee(order: Order, traderAddr: string, overrides?: CallOverrides): Promise<number> {
219
+ public async determineExchangeFee(order: Order, traderAddr: string, overrides?: Overrides): Promise<number> {
223
220
  if (this.proxyContract == null || this.signer == null) {
224
221
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
225
222
  }
@@ -251,7 +248,7 @@ export default class BrokerTool extends WriteAccessHandler {
251
248
  *
252
249
  * @returns {number} Current trading volume for this white-label partner, in USD.
253
250
  */
254
- public async getCurrentBrokerVolume(poolSymbolName: string, overrides?: CallOverrides): Promise<number> {
251
+ public async getCurrentBrokerVolume(poolSymbolName: string, overrides?: Overrides): Promise<number> {
255
252
  if (this.proxyContract == null || this.signer == null) {
256
253
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
257
254
  }
@@ -283,7 +280,7 @@ export default class BrokerTool extends WriteAccessHandler {
283
280
  *
284
281
  * @returns {number} White-label partner lot size in a given pool's currency, e.g. in MATIC for poolSymbolName MATIC.
285
282
  */
286
- public async getLotSize(poolSymbolName: string, overrides?: CallOverrides): Promise<number> {
283
+ public async getLotSize(poolSymbolName: string, overrides?: Overrides): Promise<number> {
287
284
  if (this.proxyContract == null) {
288
285
  throw Error("no proxy contract initialized. Use createProxyInstance().");
289
286
  }
@@ -314,7 +311,7 @@ export default class BrokerTool extends WriteAccessHandler {
314
311
  *
315
312
  * @returns {number} Number of lots purchased by this white-label partner.
316
313
  */
317
- public async getBrokerDesignation(poolSymbolName: string, overrides?: CallOverrides): Promise<number> {
314
+ public async getBrokerDesignation(poolSymbolName: string, overrides?: Overrides): Promise<number> {
318
315
  if (this.proxyContract == null || this.signer == null) {
319
316
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
320
317
  }
@@ -349,7 +346,7 @@ export default class BrokerTool extends WriteAccessHandler {
349
346
  poolSymbolName: string,
350
347
  lots: number,
351
348
  overrides?: Overrides
352
- ): Promise<ContractTransaction> {
349
+ ): Promise<ContractTransactionResponse> {
353
350
  if (this.proxyContract == null || this.signer == null) {
354
351
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
355
352
  }
@@ -490,19 +487,19 @@ export default class BrokerTool extends WriteAccessHandler {
490
487
  }
491
488
 
492
489
  private static async _signOrderFromRawData(
493
- iPerpetualId: number,
494
- brokerFeeTbps: number,
490
+ iPerpetualId: BigNumberish,
491
+ brokerFeeTbps: BigNumberish,
495
492
  traderAddr: string,
496
- iDeadline: number,
493
+ iDeadline: BigNumberish,
497
494
  signer: Signer,
498
- chainId: number,
495
+ chainId: BigNumberish,
499
496
  proxyAddress: string
500
497
  ) {
501
498
  const NAME = "Perpetual Trade Manager";
502
499
  const DOMAIN_TYPEHASH = keccak256(
503
500
  Buffer.from("EIP712Domain(string name,uint256 chainId,address verifyingContract)")
504
501
  );
505
- let abiCoder = defaultAbiCoder;
502
+ let abiCoder = new AbiCoder();
506
503
  let domainSeparator = keccak256(
507
504
  abiCoder.encode(
508
505
  ["bytes32", "bytes32", "uint256", "address"],
@@ -532,7 +529,7 @@ export default class BrokerTool extends WriteAccessHandler {
532
529
  traderAddr: string,
533
530
  iDeadline: number,
534
531
  signer: Signer,
535
- chainId: number,
532
+ chainId: BigNumberish,
536
533
  proxyAddress: string,
537
534
  symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>
538
535
  ): Promise<string> {
@@ -577,7 +574,7 @@ export default class BrokerTool extends WriteAccessHandler {
577
574
  poolSymbolName: string,
578
575
  newAddress: string,
579
576
  overrides?: Overrides
580
- ): Promise<ContractTransaction> {
577
+ ): Promise<ContractTransactionResponse> {
581
578
  if (this.proxyContract == null) {
582
579
  throw Error("no proxy contract or wallet initialized. Use createProxyInstance().");
583
580
  }
package/src/constants.ts CHANGED
@@ -1,5 +1,4 @@
1
- import { BigNumber } from "@ethersproject/bignumber";
2
- import { AddressZero, HashZero } from "@ethersproject/constants";
1
+ import { ZeroAddress, ZeroHash } from "ethers";
3
2
  import { NodeSDKConfig } from "./nodeSDKTypes";
4
3
 
5
4
  export const ERC20_ABI = require("./abi/ERC20.json");
@@ -16,21 +15,21 @@ export const COLLATERAL_CURRENCY_QUOTE = 0;
16
15
  export const COLLATERAL_CURRENCY_BASE = 1;
17
16
  export const COLLATERAL_CURRENCY_QUANTO = 2;
18
17
  export const PERP_STATE_STR = ["INVALID", "INITIALIZING", "NORMAL", "EMERGENCY", "SETTLE", "CLEARED"];
19
- export const ZERO_ADDRESS = AddressZero;
20
- export const ZERO_ORDER_ID = HashZero;
18
+ export const ZERO_ADDRESS = ZeroAddress;
19
+ export const ZERO_ORDER_ID = ZeroHash;
21
20
  export const MULTICALL_ADDRESS = "0xcA11bde05977b3631167028862bE2a173976CA11";
22
- export const ONE_64x64 = BigNumber.from("0x010000000000000000");
23
- export const MAX_64x64 = BigNumber.from("0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
24
- export const MAX_UINT_256 = BigNumber.from(2).pow(256).sub(BigNumber.from(1));
25
- export const DECIMALS = BigNumber.from(10).pow(BigNumber.from(18));
21
+ export const ONE_64x64 = BigInt("0x010000000000000000");
22
+ export const MAX_64x64 = BigInt("0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
23
+ export const MAX_UINT_256 = 2n ** 256n - 1n; // BigNumber.from(2).pow(256).sub(BigNumber.from(1));
24
+ export const DECIMALS = 10n ** 18n; // BigNumber.from(10).pow(BigNumber.from(18));
26
25
 
27
26
  export const ORDER_MAX_DURATION_SEC = 60 * 60 * 24 * 30 * 4;
28
27
 
29
- export const MASK_CLOSE_ONLY = BigNumber.from("0x80000000");
30
- export const MASK_LIMIT_ORDER = BigNumber.from("0x04000000");
31
- export const MASK_MARKET_ORDER = BigNumber.from("0x40000000");
32
- export const MASK_STOP_ORDER = BigNumber.from("0x20000000");
33
- export const MASK_KEEP_POS_LEVERAGE = BigNumber.from("0x08000000");
28
+ export const MASK_CLOSE_ONLY = BigInt("0x80000000");
29
+ export const MASK_LIMIT_ORDER = BigInt("0x04000000");
30
+ export const MASK_MARKET_ORDER = BigInt("0x40000000");
31
+ export const MASK_STOP_ORDER = BigInt("0x20000000");
32
+ export const MASK_KEEP_POS_LEVERAGE = BigInt("0x08000000");
34
33
 
35
34
  export const ORDER_TYPE_LIMIT = "LIMIT";
36
35
  export const ORDER_TYPE_MARKET = "MARKET";