@nktkas/hyperliquid 0.25.7 → 0.25.8

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 (516) hide show
  1. package/CONTRIBUTING.md +26 -19
  2. package/README.md +57 -5
  3. package/esm/bin/cli.js +1 -0
  4. package/esm/bin/cli.js.map +1 -1
  5. package/esm/src/api/_common_schemas.d.ts +19 -0
  6. package/esm/src/api/_common_schemas.d.ts.map +1 -1
  7. package/esm/src/api/_common_schemas.js +15 -0
  8. package/esm/src/api/_common_schemas.js.map +1 -1
  9. package/esm/src/api/exchange/_base/_execute.d.ts +6 -7
  10. package/esm/src/api/exchange/_base/_execute.d.ts.map +1 -1
  11. package/esm/src/api/exchange/_base/_execute.js +67 -43
  12. package/esm/src/api/exchange/_base/_execute.js.map +1 -1
  13. package/esm/src/api/exchange/_base/_types.d.ts +0 -7
  14. package/esm/src/api/exchange/_base/_types.d.ts.map +1 -1
  15. package/esm/src/api/exchange/_base/mod.d.ts +0 -2
  16. package/esm/src/api/exchange/_base/mod.d.ts.map +1 -1
  17. package/esm/src/api/exchange/_base/mod.js +0 -2
  18. package/esm/src/api/exchange/_base/mod.js.map +1 -1
  19. package/esm/src/api/exchange/agentEnableDexAbstraction.d.ts.map +1 -1
  20. package/esm/src/api/exchange/agentEnableDexAbstraction.js +14 -7
  21. package/esm/src/api/exchange/agentEnableDexAbstraction.js.map +1 -1
  22. package/esm/src/api/exchange/approveAgent.d.ts.map +1 -1
  23. package/esm/src/api/exchange/approveAgent.js +16 -8
  24. package/esm/src/api/exchange/approveAgent.js.map +1 -1
  25. package/esm/src/api/exchange/approveBuilderFee.d.ts.map +1 -1
  26. package/esm/src/api/exchange/approveBuilderFee.js +16 -8
  27. package/esm/src/api/exchange/approveBuilderFee.js.map +1 -1
  28. package/esm/src/api/exchange/batchModify.d.ts.map +1 -1
  29. package/esm/src/api/exchange/batchModify.js +16 -10
  30. package/esm/src/api/exchange/batchModify.js.map +1 -1
  31. package/esm/src/api/exchange/cDeposit.d.ts.map +1 -1
  32. package/esm/src/api/exchange/cDeposit.js +16 -8
  33. package/esm/src/api/exchange/cDeposit.js.map +1 -1
  34. package/esm/src/api/exchange/cSignerAction.d.ts.map +1 -1
  35. package/esm/src/api/exchange/cSignerAction.js +15 -8
  36. package/esm/src/api/exchange/cSignerAction.js.map +1 -1
  37. package/esm/src/api/exchange/cValidatorAction.d.ts.map +1 -1
  38. package/esm/src/api/exchange/cValidatorAction.js +15 -8
  39. package/esm/src/api/exchange/cValidatorAction.js.map +1 -1
  40. package/esm/src/api/exchange/cWithdraw.d.ts.map +1 -1
  41. package/esm/src/api/exchange/cWithdraw.js +16 -8
  42. package/esm/src/api/exchange/cWithdraw.js.map +1 -1
  43. package/esm/src/api/exchange/cancel.d.ts.map +1 -1
  44. package/esm/src/api/exchange/cancel.js +16 -10
  45. package/esm/src/api/exchange/cancel.js.map +1 -1
  46. package/esm/src/api/exchange/cancelByCloid.d.ts.map +1 -1
  47. package/esm/src/api/exchange/cancelByCloid.js +16 -10
  48. package/esm/src/api/exchange/cancelByCloid.js.map +1 -1
  49. package/esm/src/api/exchange/claimRewards.d.ts.map +1 -1
  50. package/esm/src/api/exchange/claimRewards.js +14 -7
  51. package/esm/src/api/exchange/claimRewards.js.map +1 -1
  52. package/esm/src/api/exchange/convertToMultiSigUser.d.ts.map +1 -1
  53. package/esm/src/api/exchange/convertToMultiSigUser.js +16 -8
  54. package/esm/src/api/exchange/convertToMultiSigUser.js.map +1 -1
  55. package/esm/src/api/exchange/createSubAccount.d.ts.map +1 -1
  56. package/esm/src/api/exchange/createSubAccount.js +15 -8
  57. package/esm/src/api/exchange/createSubAccount.js.map +1 -1
  58. package/esm/src/api/exchange/createVault.d.ts.map +1 -1
  59. package/esm/src/api/exchange/createVault.js +15 -8
  60. package/esm/src/api/exchange/createVault.js.map +1 -1
  61. package/esm/src/api/exchange/evmUserModify.d.ts +1 -1
  62. package/esm/src/api/exchange/evmUserModify.d.ts.map +1 -1
  63. package/esm/src/api/exchange/evmUserModify.js +16 -9
  64. package/esm/src/api/exchange/evmUserModify.js.map +1 -1
  65. package/esm/src/api/exchange/linkStakingUser.d.ts +112 -0
  66. package/esm/src/api/exchange/linkStakingUser.d.ts.map +1 -0
  67. package/esm/src/api/exchange/linkStakingUser.js +99 -0
  68. package/esm/src/api/exchange/linkStakingUser.js.map +1 -0
  69. package/esm/src/api/exchange/modify.d.ts.map +1 -1
  70. package/esm/src/api/exchange/modify.js +16 -10
  71. package/esm/src/api/exchange/modify.js.map +1 -1
  72. package/esm/src/api/exchange/multiSig.d.ts.map +1 -1
  73. package/esm/src/api/exchange/multiSig.js +17 -16
  74. package/esm/src/api/exchange/multiSig.js.map +1 -1
  75. package/esm/src/api/exchange/noop.d.ts.map +1 -1
  76. package/esm/src/api/exchange/noop.js +14 -7
  77. package/esm/src/api/exchange/noop.js.map +1 -1
  78. package/esm/src/api/exchange/order.d.ts.map +1 -1
  79. package/esm/src/api/exchange/order.js +16 -10
  80. package/esm/src/api/exchange/order.js.map +1 -1
  81. package/esm/src/api/exchange/perpDeploy.d.ts.map +1 -1
  82. package/esm/src/api/exchange/perpDeploy.js +15 -8
  83. package/esm/src/api/exchange/perpDeploy.js.map +1 -1
  84. package/esm/src/api/exchange/registerReferrer.d.ts.map +1 -1
  85. package/esm/src/api/exchange/registerReferrer.js +15 -8
  86. package/esm/src/api/exchange/registerReferrer.js.map +1 -1
  87. package/esm/src/api/exchange/reserveRequestWeight.d.ts.map +1 -1
  88. package/esm/src/api/exchange/reserveRequestWeight.js +15 -8
  89. package/esm/src/api/exchange/reserveRequestWeight.js.map +1 -1
  90. package/esm/src/api/exchange/scheduleCancel.js +16 -10
  91. package/esm/src/api/exchange/scheduleCancel.js.map +1 -1
  92. package/esm/src/api/exchange/sendAsset.d.ts.map +1 -1
  93. package/esm/src/api/exchange/sendAsset.js +16 -8
  94. package/esm/src/api/exchange/sendAsset.js.map +1 -1
  95. package/esm/src/api/exchange/setDisplayName.d.ts.map +1 -1
  96. package/esm/src/api/exchange/setDisplayName.js +15 -8
  97. package/esm/src/api/exchange/setDisplayName.js.map +1 -1
  98. package/esm/src/api/exchange/setReferrer.d.ts.map +1 -1
  99. package/esm/src/api/exchange/setReferrer.js +15 -8
  100. package/esm/src/api/exchange/setReferrer.js.map +1 -1
  101. package/esm/src/api/exchange/spotDeploy.d.ts.map +1 -1
  102. package/esm/src/api/exchange/spotDeploy.js +15 -8
  103. package/esm/src/api/exchange/spotDeploy.js.map +1 -1
  104. package/esm/src/api/exchange/spotSend.d.ts.map +1 -1
  105. package/esm/src/api/exchange/spotSend.js +16 -8
  106. package/esm/src/api/exchange/spotSend.js.map +1 -1
  107. package/esm/src/api/exchange/spotUser.d.ts.map +1 -1
  108. package/esm/src/api/exchange/spotUser.js +15 -8
  109. package/esm/src/api/exchange/spotUser.js.map +1 -1
  110. package/esm/src/api/exchange/subAccountModify.d.ts.map +1 -1
  111. package/esm/src/api/exchange/subAccountModify.js +15 -8
  112. package/esm/src/api/exchange/subAccountModify.js.map +1 -1
  113. package/esm/src/api/exchange/subAccountSpotTransfer.d.ts.map +1 -1
  114. package/esm/src/api/exchange/subAccountSpotTransfer.js +15 -8
  115. package/esm/src/api/exchange/subAccountSpotTransfer.js.map +1 -1
  116. package/esm/src/api/exchange/subAccountTransfer.d.ts.map +1 -1
  117. package/esm/src/api/exchange/subAccountTransfer.js +15 -8
  118. package/esm/src/api/exchange/subAccountTransfer.js.map +1 -1
  119. package/esm/src/api/exchange/tokenDelegate.d.ts.map +1 -1
  120. package/esm/src/api/exchange/tokenDelegate.js +16 -8
  121. package/esm/src/api/exchange/tokenDelegate.js.map +1 -1
  122. package/esm/src/api/exchange/twapCancel.d.ts.map +1 -1
  123. package/esm/src/api/exchange/twapCancel.js +16 -10
  124. package/esm/src/api/exchange/twapCancel.js.map +1 -1
  125. package/esm/src/api/exchange/twapOrder.d.ts.map +1 -1
  126. package/esm/src/api/exchange/twapOrder.js +16 -10
  127. package/esm/src/api/exchange/twapOrder.js.map +1 -1
  128. package/esm/src/api/exchange/updateIsolatedMargin.d.ts.map +1 -1
  129. package/esm/src/api/exchange/updateIsolatedMargin.js +16 -10
  130. package/esm/src/api/exchange/updateIsolatedMargin.js.map +1 -1
  131. package/esm/src/api/exchange/updateLeverage.d.ts.map +1 -1
  132. package/esm/src/api/exchange/updateLeverage.js +16 -10
  133. package/esm/src/api/exchange/updateLeverage.js.map +1 -1
  134. package/esm/src/api/exchange/usdClassTransfer.d.ts.map +1 -1
  135. package/esm/src/api/exchange/usdClassTransfer.js +16 -8
  136. package/esm/src/api/exchange/usdClassTransfer.js.map +1 -1
  137. package/esm/src/api/exchange/usdSend.d.ts.map +1 -1
  138. package/esm/src/api/exchange/usdSend.js +16 -8
  139. package/esm/src/api/exchange/usdSend.js.map +1 -1
  140. package/esm/src/api/exchange/userDexAbstraction.d.ts.map +1 -1
  141. package/esm/src/api/exchange/userDexAbstraction.js +16 -8
  142. package/esm/src/api/exchange/userDexAbstraction.js.map +1 -1
  143. package/esm/src/api/exchange/vaultDistribute.d.ts.map +1 -1
  144. package/esm/src/api/exchange/vaultDistribute.js +15 -8
  145. package/esm/src/api/exchange/vaultDistribute.js.map +1 -1
  146. package/esm/src/api/exchange/vaultModify.d.ts.map +1 -1
  147. package/esm/src/api/exchange/vaultModify.js +15 -8
  148. package/esm/src/api/exchange/vaultModify.js.map +1 -1
  149. package/esm/src/api/exchange/vaultTransfer.d.ts.map +1 -1
  150. package/esm/src/api/exchange/vaultTransfer.js +15 -8
  151. package/esm/src/api/exchange/vaultTransfer.js.map +1 -1
  152. package/esm/src/api/exchange/withdraw3.d.ts.map +1 -1
  153. package/esm/src/api/exchange/withdraw3.js +16 -8
  154. package/esm/src/api/exchange/withdraw3.js.map +1 -1
  155. package/esm/src/api/exchange/~client.d.ts +31 -3
  156. package/esm/src/api/exchange/~client.d.ts.map +1 -1
  157. package/esm/src/api/exchange/~client.js +27 -4
  158. package/esm/src/api/exchange/~client.js.map +1 -1
  159. package/esm/src/api/exchange/~mod.d.ts +1 -0
  160. package/esm/src/api/exchange/~mod.d.ts.map +1 -1
  161. package/esm/src/api/exchange/~mod.js +1 -0
  162. package/esm/src/api/exchange/~mod.js.map +1 -1
  163. package/esm/src/api/info/allPerpMetas.d.ts +5 -0
  164. package/esm/src/api/info/allPerpMetas.d.ts.map +1 -1
  165. package/esm/src/api/info/meta.d.ts +5 -0
  166. package/esm/src/api/info/meta.d.ts.map +1 -1
  167. package/esm/src/api/info/meta.js +2 -0
  168. package/esm/src/api/info/meta.js.map +1 -1
  169. package/esm/src/api/info/metaAndAssetCtxs.d.ts +5 -0
  170. package/esm/src/api/info/metaAndAssetCtxs.d.ts.map +1 -1
  171. package/esm/src/api/info/perpDexs.d.ts +4 -0
  172. package/esm/src/api/info/perpDexs.d.ts.map +1 -1
  173. package/esm/src/api/info/perpDexs.js +5 -0
  174. package/esm/src/api/info/perpDexs.js.map +1 -1
  175. package/esm/src/api/info/spotClearinghouseState.d.ts +0 -5
  176. package/esm/src/api/info/spotClearinghouseState.d.ts.map +1 -1
  177. package/esm/src/api/info/spotClearinghouseState.js +2 -14
  178. package/esm/src/api/info/spotClearinghouseState.js.map +1 -1
  179. package/esm/src/api/info/userFees.d.ts +27 -2
  180. package/esm/src/api/info/userFees.d.ts.map +1 -1
  181. package/esm/src/api/info/userFees.js +29 -1
  182. package/esm/src/api/info/userFees.js.map +1 -1
  183. package/esm/src/api/info/webData2.d.ts +6 -0
  184. package/esm/src/api/info/webData2.d.ts.map +1 -1
  185. package/esm/src/api/info/~client.d.ts +9 -1
  186. package/esm/src/api/info/~client.d.ts.map +1 -1
  187. package/esm/src/api/subscription/spotState.d.ts +91 -0
  188. package/esm/src/api/subscription/spotState.d.ts.map +1 -0
  189. package/esm/src/api/subscription/spotState.js +58 -0
  190. package/esm/src/api/subscription/spotState.js.map +1 -0
  191. package/esm/src/api/subscription/webData2.d.ts +5 -0
  192. package/esm/src/api/subscription/webData2.d.ts.map +1 -1
  193. package/esm/src/api/subscription/~client.d.ts +22 -0
  194. package/esm/src/api/subscription/~client.d.ts.map +1 -1
  195. package/esm/src/api/subscription/~client.js +23 -0
  196. package/esm/src/api/subscription/~client.js.map +1 -1
  197. package/esm/src/api/subscription/~mod.d.ts +1 -0
  198. package/esm/src/api/subscription/~mod.d.ts.map +1 -1
  199. package/esm/src/api/subscription/~mod.js +1 -0
  200. package/esm/src/api/subscription/~mod.js.map +1 -1
  201. package/esm/src/signing/_signTypedData.d.ts +1 -1
  202. package/esm/src/signing/_signTypedData.d.ts.map +1 -1
  203. package/esm/src/signing/_signTypedData.js +1 -1
  204. package/esm/src/signing/_signTypedData.js.map +1 -1
  205. package/esm/src/utils/{_minimalEIP712Signer.d.ts → _eip712.d.ts} +16 -1
  206. package/esm/src/utils/_eip712.d.ts.map +1 -0
  207. package/esm/src/utils/{_minimalEIP712Signer.js → _eip712.js} +14 -11
  208. package/esm/src/utils/_eip712.js.map +1 -0
  209. package/esm/src/utils/_format.d.ts +3 -4
  210. package/esm/src/utils/_format.d.ts.map +1 -1
  211. package/esm/src/utils/_format.js +98 -88
  212. package/esm/src/utils/_format.js.map +1 -1
  213. package/esm/src/utils/_recover.d.ts +89 -0
  214. package/esm/src/utils/_recover.d.ts.map +1 -0
  215. package/esm/src/utils/_recover.js +119 -0
  216. package/esm/src/utils/_recover.js.map +1 -0
  217. package/esm/src/utils/mod.d.ts +1 -0
  218. package/esm/src/utils/mod.d.ts.map +1 -1
  219. package/esm/src/utils/mod.js +1 -0
  220. package/esm/src/utils/mod.js.map +1 -1
  221. package/package.json +3 -2
  222. package/script/bin/cli.js +1 -0
  223. package/script/bin/cli.js.map +1 -1
  224. package/script/src/api/_common_schemas.d.ts +19 -0
  225. package/script/src/api/_common_schemas.d.ts.map +1 -1
  226. package/script/src/api/_common_schemas.js +16 -1
  227. package/script/src/api/_common_schemas.js.map +1 -1
  228. package/script/src/api/exchange/_base/_execute.d.ts +6 -7
  229. package/script/src/api/exchange/_base/_execute.d.ts.map +1 -1
  230. package/script/src/api/exchange/_base/_execute.js +67 -43
  231. package/script/src/api/exchange/_base/_execute.js.map +1 -1
  232. package/script/src/api/exchange/_base/_types.d.ts +0 -7
  233. package/script/src/api/exchange/_base/_types.d.ts.map +1 -1
  234. package/script/src/api/exchange/_base/mod.d.ts +0 -2
  235. package/script/src/api/exchange/_base/mod.d.ts.map +1 -1
  236. package/script/src/api/exchange/_base/mod.js +0 -2
  237. package/script/src/api/exchange/_base/mod.js.map +1 -1
  238. package/script/src/api/exchange/agentEnableDexAbstraction.d.ts.map +1 -1
  239. package/script/src/api/exchange/agentEnableDexAbstraction.js +14 -7
  240. package/script/src/api/exchange/agentEnableDexAbstraction.js.map +1 -1
  241. package/script/src/api/exchange/approveAgent.d.ts.map +1 -1
  242. package/script/src/api/exchange/approveAgent.js +15 -7
  243. package/script/src/api/exchange/approveAgent.js.map +1 -1
  244. package/script/src/api/exchange/approveBuilderFee.d.ts.map +1 -1
  245. package/script/src/api/exchange/approveBuilderFee.js +15 -7
  246. package/script/src/api/exchange/approveBuilderFee.js.map +1 -1
  247. package/script/src/api/exchange/batchModify.d.ts.map +1 -1
  248. package/script/src/api/exchange/batchModify.js +16 -10
  249. package/script/src/api/exchange/batchModify.js.map +1 -1
  250. package/script/src/api/exchange/cDeposit.d.ts.map +1 -1
  251. package/script/src/api/exchange/cDeposit.js +15 -7
  252. package/script/src/api/exchange/cDeposit.js.map +1 -1
  253. package/script/src/api/exchange/cSignerAction.d.ts.map +1 -1
  254. package/script/src/api/exchange/cSignerAction.js +15 -8
  255. package/script/src/api/exchange/cSignerAction.js.map +1 -1
  256. package/script/src/api/exchange/cValidatorAction.d.ts.map +1 -1
  257. package/script/src/api/exchange/cValidatorAction.js +15 -8
  258. package/script/src/api/exchange/cValidatorAction.js.map +1 -1
  259. package/script/src/api/exchange/cWithdraw.d.ts.map +1 -1
  260. package/script/src/api/exchange/cWithdraw.js +15 -7
  261. package/script/src/api/exchange/cWithdraw.js.map +1 -1
  262. package/script/src/api/exchange/cancel.d.ts.map +1 -1
  263. package/script/src/api/exchange/cancel.js +16 -10
  264. package/script/src/api/exchange/cancel.js.map +1 -1
  265. package/script/src/api/exchange/cancelByCloid.d.ts.map +1 -1
  266. package/script/src/api/exchange/cancelByCloid.js +16 -10
  267. package/script/src/api/exchange/cancelByCloid.js.map +1 -1
  268. package/script/src/api/exchange/claimRewards.d.ts.map +1 -1
  269. package/script/src/api/exchange/claimRewards.js +14 -7
  270. package/script/src/api/exchange/claimRewards.js.map +1 -1
  271. package/script/src/api/exchange/convertToMultiSigUser.d.ts.map +1 -1
  272. package/script/src/api/exchange/convertToMultiSigUser.js +15 -7
  273. package/script/src/api/exchange/convertToMultiSigUser.js.map +1 -1
  274. package/script/src/api/exchange/createSubAccount.d.ts.map +1 -1
  275. package/script/src/api/exchange/createSubAccount.js +15 -8
  276. package/script/src/api/exchange/createSubAccount.js.map +1 -1
  277. package/script/src/api/exchange/createVault.d.ts.map +1 -1
  278. package/script/src/api/exchange/createVault.js +15 -8
  279. package/script/src/api/exchange/createVault.js.map +1 -1
  280. package/script/src/api/exchange/evmUserModify.d.ts +1 -1
  281. package/script/src/api/exchange/evmUserModify.d.ts.map +1 -1
  282. package/script/src/api/exchange/evmUserModify.js +16 -9
  283. package/script/src/api/exchange/evmUserModify.js.map +1 -1
  284. package/script/src/api/exchange/linkStakingUser.d.ts +112 -0
  285. package/script/src/api/exchange/linkStakingUser.d.ts.map +1 -0
  286. package/script/src/api/exchange/linkStakingUser.js +136 -0
  287. package/script/src/api/exchange/linkStakingUser.js.map +1 -0
  288. package/script/src/api/exchange/modify.d.ts.map +1 -1
  289. package/script/src/api/exchange/modify.js +16 -10
  290. package/script/src/api/exchange/modify.js.map +1 -1
  291. package/script/src/api/exchange/multiSig.d.ts.map +1 -1
  292. package/script/src/api/exchange/multiSig.js +17 -16
  293. package/script/src/api/exchange/multiSig.js.map +1 -1
  294. package/script/src/api/exchange/noop.d.ts.map +1 -1
  295. package/script/src/api/exchange/noop.js +14 -7
  296. package/script/src/api/exchange/noop.js.map +1 -1
  297. package/script/src/api/exchange/order.d.ts.map +1 -1
  298. package/script/src/api/exchange/order.js +16 -10
  299. package/script/src/api/exchange/order.js.map +1 -1
  300. package/script/src/api/exchange/perpDeploy.d.ts.map +1 -1
  301. package/script/src/api/exchange/perpDeploy.js +15 -8
  302. package/script/src/api/exchange/perpDeploy.js.map +1 -1
  303. package/script/src/api/exchange/registerReferrer.d.ts.map +1 -1
  304. package/script/src/api/exchange/registerReferrer.js +15 -8
  305. package/script/src/api/exchange/registerReferrer.js.map +1 -1
  306. package/script/src/api/exchange/reserveRequestWeight.d.ts.map +1 -1
  307. package/script/src/api/exchange/reserveRequestWeight.js +15 -8
  308. package/script/src/api/exchange/reserveRequestWeight.js.map +1 -1
  309. package/script/src/api/exchange/scheduleCancel.js +16 -10
  310. package/script/src/api/exchange/scheduleCancel.js.map +1 -1
  311. package/script/src/api/exchange/sendAsset.d.ts.map +1 -1
  312. package/script/src/api/exchange/sendAsset.js +15 -7
  313. package/script/src/api/exchange/sendAsset.js.map +1 -1
  314. package/script/src/api/exchange/setDisplayName.d.ts.map +1 -1
  315. package/script/src/api/exchange/setDisplayName.js +15 -8
  316. package/script/src/api/exchange/setDisplayName.js.map +1 -1
  317. package/script/src/api/exchange/setReferrer.d.ts.map +1 -1
  318. package/script/src/api/exchange/setReferrer.js +15 -8
  319. package/script/src/api/exchange/setReferrer.js.map +1 -1
  320. package/script/src/api/exchange/spotDeploy.d.ts.map +1 -1
  321. package/script/src/api/exchange/spotDeploy.js +15 -8
  322. package/script/src/api/exchange/spotDeploy.js.map +1 -1
  323. package/script/src/api/exchange/spotSend.d.ts.map +1 -1
  324. package/script/src/api/exchange/spotSend.js +15 -7
  325. package/script/src/api/exchange/spotSend.js.map +1 -1
  326. package/script/src/api/exchange/spotUser.d.ts.map +1 -1
  327. package/script/src/api/exchange/spotUser.js +15 -8
  328. package/script/src/api/exchange/spotUser.js.map +1 -1
  329. package/script/src/api/exchange/subAccountModify.d.ts.map +1 -1
  330. package/script/src/api/exchange/subAccountModify.js +15 -8
  331. package/script/src/api/exchange/subAccountModify.js.map +1 -1
  332. package/script/src/api/exchange/subAccountSpotTransfer.d.ts.map +1 -1
  333. package/script/src/api/exchange/subAccountSpotTransfer.js +15 -8
  334. package/script/src/api/exchange/subAccountSpotTransfer.js.map +1 -1
  335. package/script/src/api/exchange/subAccountTransfer.d.ts.map +1 -1
  336. package/script/src/api/exchange/subAccountTransfer.js +15 -8
  337. package/script/src/api/exchange/subAccountTransfer.js.map +1 -1
  338. package/script/src/api/exchange/tokenDelegate.d.ts.map +1 -1
  339. package/script/src/api/exchange/tokenDelegate.js +15 -7
  340. package/script/src/api/exchange/tokenDelegate.js.map +1 -1
  341. package/script/src/api/exchange/twapCancel.d.ts.map +1 -1
  342. package/script/src/api/exchange/twapCancel.js +16 -10
  343. package/script/src/api/exchange/twapCancel.js.map +1 -1
  344. package/script/src/api/exchange/twapOrder.d.ts.map +1 -1
  345. package/script/src/api/exchange/twapOrder.js +16 -10
  346. package/script/src/api/exchange/twapOrder.js.map +1 -1
  347. package/script/src/api/exchange/updateIsolatedMargin.d.ts.map +1 -1
  348. package/script/src/api/exchange/updateIsolatedMargin.js +16 -10
  349. package/script/src/api/exchange/updateIsolatedMargin.js.map +1 -1
  350. package/script/src/api/exchange/updateLeverage.d.ts.map +1 -1
  351. package/script/src/api/exchange/updateLeverage.js +16 -10
  352. package/script/src/api/exchange/updateLeverage.js.map +1 -1
  353. package/script/src/api/exchange/usdClassTransfer.d.ts.map +1 -1
  354. package/script/src/api/exchange/usdClassTransfer.js +15 -7
  355. package/script/src/api/exchange/usdClassTransfer.js.map +1 -1
  356. package/script/src/api/exchange/usdSend.d.ts.map +1 -1
  357. package/script/src/api/exchange/usdSend.js +15 -7
  358. package/script/src/api/exchange/usdSend.js.map +1 -1
  359. package/script/src/api/exchange/userDexAbstraction.d.ts.map +1 -1
  360. package/script/src/api/exchange/userDexAbstraction.js +15 -7
  361. package/script/src/api/exchange/userDexAbstraction.js.map +1 -1
  362. package/script/src/api/exchange/vaultDistribute.d.ts.map +1 -1
  363. package/script/src/api/exchange/vaultDistribute.js +15 -8
  364. package/script/src/api/exchange/vaultDistribute.js.map +1 -1
  365. package/script/src/api/exchange/vaultModify.d.ts.map +1 -1
  366. package/script/src/api/exchange/vaultModify.js +15 -8
  367. package/script/src/api/exchange/vaultModify.js.map +1 -1
  368. package/script/src/api/exchange/vaultTransfer.d.ts.map +1 -1
  369. package/script/src/api/exchange/vaultTransfer.js +15 -8
  370. package/script/src/api/exchange/vaultTransfer.js.map +1 -1
  371. package/script/src/api/exchange/withdraw3.d.ts.map +1 -1
  372. package/script/src/api/exchange/withdraw3.js +15 -7
  373. package/script/src/api/exchange/withdraw3.js.map +1 -1
  374. package/script/src/api/exchange/~client.d.ts +31 -3
  375. package/script/src/api/exchange/~client.d.ts.map +1 -1
  376. package/script/src/api/exchange/~client.js +29 -6
  377. package/script/src/api/exchange/~client.js.map +1 -1
  378. package/script/src/api/exchange/~mod.d.ts +1 -0
  379. package/script/src/api/exchange/~mod.d.ts.map +1 -1
  380. package/script/src/api/exchange/~mod.js +1 -0
  381. package/script/src/api/exchange/~mod.js.map +1 -1
  382. package/script/src/api/info/allPerpMetas.d.ts +5 -0
  383. package/script/src/api/info/allPerpMetas.d.ts.map +1 -1
  384. package/script/src/api/info/meta.d.ts +5 -0
  385. package/script/src/api/info/meta.d.ts.map +1 -1
  386. package/script/src/api/info/meta.js +2 -0
  387. package/script/src/api/info/meta.js.map +1 -1
  388. package/script/src/api/info/metaAndAssetCtxs.d.ts +5 -0
  389. package/script/src/api/info/metaAndAssetCtxs.d.ts.map +1 -1
  390. package/script/src/api/info/perpDexs.d.ts +4 -0
  391. package/script/src/api/info/perpDexs.d.ts.map +1 -1
  392. package/script/src/api/info/perpDexs.js +5 -0
  393. package/script/src/api/info/perpDexs.js.map +1 -1
  394. package/script/src/api/info/spotClearinghouseState.d.ts +0 -5
  395. package/script/src/api/info/spotClearinghouseState.d.ts.map +1 -1
  396. package/script/src/api/info/spotClearinghouseState.js +2 -14
  397. package/script/src/api/info/spotClearinghouseState.js.map +1 -1
  398. package/script/src/api/info/userFees.d.ts +27 -2
  399. package/script/src/api/info/userFees.d.ts.map +1 -1
  400. package/script/src/api/info/userFees.js +29 -1
  401. package/script/src/api/info/userFees.js.map +1 -1
  402. package/script/src/api/info/webData2.d.ts +6 -0
  403. package/script/src/api/info/webData2.d.ts.map +1 -1
  404. package/script/src/api/info/~client.d.ts +9 -1
  405. package/script/src/api/info/~client.d.ts.map +1 -1
  406. package/script/src/api/subscription/spotState.d.ts +91 -0
  407. package/script/src/api/subscription/spotState.d.ts.map +1 -0
  408. package/script/src/api/subscription/spotState.js +95 -0
  409. package/script/src/api/subscription/spotState.js.map +1 -0
  410. package/script/src/api/subscription/webData2.d.ts +5 -0
  411. package/script/src/api/subscription/webData2.d.ts.map +1 -1
  412. package/script/src/api/subscription/~client.d.ts +22 -0
  413. package/script/src/api/subscription/~client.d.ts.map +1 -1
  414. package/script/src/api/subscription/~client.js +23 -0
  415. package/script/src/api/subscription/~client.js.map +1 -1
  416. package/script/src/api/subscription/~mod.d.ts +1 -0
  417. package/script/src/api/subscription/~mod.d.ts.map +1 -1
  418. package/script/src/api/subscription/~mod.js +1 -0
  419. package/script/src/api/subscription/~mod.js.map +1 -1
  420. package/script/src/signing/_signTypedData.d.ts +1 -1
  421. package/script/src/signing/_signTypedData.d.ts.map +1 -1
  422. package/script/src/signing/_signTypedData.js +1 -1
  423. package/script/src/signing/_signTypedData.js.map +1 -1
  424. package/script/src/utils/{_minimalEIP712Signer.d.ts → _eip712.d.ts} +16 -1
  425. package/script/src/utils/_eip712.d.ts.map +1 -0
  426. package/script/src/utils/{_minimalEIP712Signer.js → _eip712.js} +14 -9
  427. package/script/src/utils/_eip712.js.map +1 -0
  428. package/script/src/utils/_format.d.ts +3 -4
  429. package/script/src/utils/_format.d.ts.map +1 -1
  430. package/script/src/utils/_format.js +98 -88
  431. package/script/src/utils/_format.js.map +1 -1
  432. package/script/src/utils/_recover.d.ts +89 -0
  433. package/script/src/utils/_recover.d.ts.map +1 -0
  434. package/script/src/utils/_recover.js +156 -0
  435. package/script/src/utils/_recover.js.map +1 -0
  436. package/script/src/utils/mod.d.ts +1 -0
  437. package/script/src/utils/mod.d.ts.map +1 -1
  438. package/script/src/utils/mod.js +1 -0
  439. package/script/src/utils/mod.js.map +1 -1
  440. package/src/bin/cli.ts +1 -0
  441. package/src/src/api/_common_schemas.ts +34 -0
  442. package/src/src/api/exchange/_base/_execute.ts +73 -49
  443. package/src/src/api/exchange/_base/_types.ts +0 -7
  444. package/src/src/api/exchange/_base/mod.ts +0 -2
  445. package/src/src/api/exchange/agentEnableDexAbstraction.ts +14 -9
  446. package/src/src/api/exchange/approveAgent.ts +15 -12
  447. package/src/src/api/exchange/approveBuilderFee.ts +15 -12
  448. package/src/src/api/exchange/batchModify.ts +16 -13
  449. package/src/src/api/exchange/cDeposit.ts +15 -12
  450. package/src/src/api/exchange/cSignerAction.ts +15 -10
  451. package/src/src/api/exchange/cValidatorAction.ts +15 -10
  452. package/src/src/api/exchange/cWithdraw.ts +15 -12
  453. package/src/src/api/exchange/cancel.ts +16 -13
  454. package/src/src/api/exchange/cancelByCloid.ts +16 -13
  455. package/src/src/api/exchange/claimRewards.ts +14 -9
  456. package/src/src/api/exchange/convertToMultiSigUser.ts +15 -12
  457. package/src/src/api/exchange/createSubAccount.ts +15 -10
  458. package/src/src/api/exchange/createVault.ts +15 -10
  459. package/src/src/api/exchange/evmUserModify.ts +16 -11
  460. package/src/src/api/exchange/linkStakingUser.ts +157 -0
  461. package/src/src/api/exchange/modify.ts +16 -13
  462. package/src/src/api/exchange/multiSig.ts +17 -23
  463. package/src/src/api/exchange/noop.ts +14 -9
  464. package/src/src/api/exchange/order.ts +16 -13
  465. package/src/src/api/exchange/perpDeploy.ts +15 -10
  466. package/src/src/api/exchange/registerReferrer.ts +15 -10
  467. package/src/src/api/exchange/reserveRequestWeight.ts +15 -10
  468. package/src/src/api/exchange/scheduleCancel.ts +16 -13
  469. package/src/src/api/exchange/sendAsset.ts +15 -12
  470. package/src/src/api/exchange/setDisplayName.ts +15 -10
  471. package/src/src/api/exchange/setReferrer.ts +15 -10
  472. package/src/src/api/exchange/spotDeploy.ts +15 -10
  473. package/src/src/api/exchange/spotSend.ts +15 -12
  474. package/src/src/api/exchange/spotUser.ts +15 -10
  475. package/src/src/api/exchange/subAccountModify.ts +15 -10
  476. package/src/src/api/exchange/subAccountSpotTransfer.ts +15 -10
  477. package/src/src/api/exchange/subAccountTransfer.ts +15 -10
  478. package/src/src/api/exchange/tokenDelegate.ts +15 -12
  479. package/src/src/api/exchange/twapCancel.ts +16 -13
  480. package/src/src/api/exchange/twapOrder.ts +16 -13
  481. package/src/src/api/exchange/updateIsolatedMargin.ts +16 -13
  482. package/src/src/api/exchange/updateLeverage.ts +16 -13
  483. package/src/src/api/exchange/usdClassTransfer.ts +15 -12
  484. package/src/src/api/exchange/usdSend.ts +15 -12
  485. package/src/src/api/exchange/userDexAbstraction.ts +15 -12
  486. package/src/src/api/exchange/vaultDistribute.ts +15 -10
  487. package/src/src/api/exchange/vaultModify.ts +15 -10
  488. package/src/src/api/exchange/vaultTransfer.ts +15 -10
  489. package/src/src/api/exchange/withdraw3.ts +15 -12
  490. package/src/src/api/exchange/~client.ts +30 -5
  491. package/src/src/api/exchange/~mod.ts +1 -0
  492. package/src/src/api/info/meta.ts +7 -0
  493. package/src/src/api/info/perpDexs.ts +10 -0
  494. package/src/src/api/info/spotClearinghouseState.ts +3 -33
  495. package/src/src/api/info/userFees.ts +46 -1
  496. package/src/src/api/subscription/spotState.ts +96 -0
  497. package/src/src/api/subscription/~client.ts +25 -0
  498. package/src/src/api/subscription/~mod.ts +1 -0
  499. package/src/src/signing/_signTypedData.ts +1 -1
  500. package/src/src/utils/{_minimalEIP712Signer.ts → _eip712.ts} +22 -29
  501. package/src/src/utils/_format.ts +99 -98
  502. package/src/src/utils/_recover.ts +178 -0
  503. package/src/src/utils/mod.ts +1 -0
  504. package/esm/src/api/exchange/_base/_sequential.d.ts +0 -30
  505. package/esm/src/api/exchange/_base/_sequential.d.ts.map +0 -1
  506. package/esm/src/api/exchange/_base/_sequential.js +0 -69
  507. package/esm/src/api/exchange/_base/_sequential.js.map +0 -1
  508. package/esm/src/utils/_minimalEIP712Signer.d.ts.map +0 -1
  509. package/esm/src/utils/_minimalEIP712Signer.js.map +0 -1
  510. package/script/src/api/exchange/_base/_sequential.d.ts +0 -30
  511. package/script/src/api/exchange/_base/_sequential.d.ts.map +0 -1
  512. package/script/src/api/exchange/_base/_sequential.js +0 -72
  513. package/script/src/api/exchange/_base/_sequential.js.map +0 -1
  514. package/script/src/utils/_minimalEIP712Signer.d.ts.map +0 -1
  515. package/script/src/utils/_minimalEIP712Signer.js.map +0 -1
  516. package/src/src/api/exchange/_base/_sequential.ts +0 -82
@@ -1,72 +0,0 @@
1
- "use strict";
2
- /**
3
- * Sequential request execution to prevent nonce race conditions.
4
- *
5
- * Problem: When multiple requests are sent rapidly, they may execute in different order
6
- * on the transport layer, causing nonce errors (e.g., server receives nonce 101 before 100).
7
- *
8
- * Solution: Queue ensures requests execute sequentially in order.
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.getRequestQueue = getRequestQueue;
12
- const mod_js_1 = require("../../../signing/mod.js");
13
- /**
14
- * Request queue for sequential execution of requests.
15
- * Ensures that requests are executed in order, preventing them from arriving at the server out of sequence.
16
- */
17
- class RequestQueue {
18
- queue = Promise.resolve();
19
- /**
20
- * Enqueue a request to be executed sequentially.
21
- * @param fn - The function to execute.
22
- * @returns A promise that resolves with the result of the function.
23
- */
24
- enqueue(fn) {
25
- const current = this.queue.then(() => fn());
26
- this.queue = current.catch(() => { }); // Prevent unhandled rejection
27
- return current;
28
- }
29
- }
30
- /**
31
- * Map of wallet addresses to weak references of request queues.
32
- * Uses WeakRef to allow garbage collection of unused queues:
33
- * - When a queue is no longer referenced (all requests completed), GC can remove it
34
- * - FinalizationRegistry automatically cleans up the Map entry when queue is GC'd
35
- * - This prevents memory leaks in long-running applications without manual cleanup
36
- */
37
- const requestQueueMap = /* @__PURE__ */ new Map();
38
- /**
39
- * Registry to clean up Map entries when queues are garbage collected.
40
- * When a RequestQueue is GC'd, this callback removes the corresponding Map entry.
41
- */
42
- const requestQueueRegistry = /* @__PURE__ */ new FinalizationRegistry((address) => {
43
- requestQueueMap.delete(address);
44
- });
45
- /**
46
- * Get or create a request queue for the given config.
47
- * Uses a global Map keyed by wallet address to ensure the same wallet uses the same queue
48
- * regardless of whether called via client or direct function.
49
- */
50
- async function getRequestQueue(config) {
51
- const sequentialRequests = config.sequentialRequests ?? true; // default to true
52
- if (!sequentialRequests) {
53
- return undefined;
54
- }
55
- // Get wallet address to use as key
56
- const walletAddress = "signers" in config
57
- ? await (0, mod_js_1.getWalletAddress)(config.signers[0])
58
- : await (0, mod_js_1.getWalletAddress)(config.wallet);
59
- const address = walletAddress.toLowerCase();
60
- // Try to get existing queue from weak reference
61
- const queueRef = requestQueueMap.get(address);
62
- let queue = queueRef?.deref();
63
- if (!queue) {
64
- // Create new queue if it doesn't exist or was garbage collected
65
- queue = new RequestQueue();
66
- requestQueueMap.set(address, new WeakRef(queue));
67
- // Register for automatic cleanup when queue is GC'd
68
- requestQueueRegistry.register(queue, address);
69
- }
70
- return queue;
71
- }
72
- //# sourceMappingURL=_sequential.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_sequential.js","sourceRoot":"","sources":["../../../../../src/src/api/exchange/_base/_sequential.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AA8CH,0CA4BC;AAvED,oDAA2D;AAE3D;;;GAGG;AACH,MAAM,YAAY;IACR,KAAK,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEpD;;;;OAIG;IACH,OAAO,CAAI,EAAoB;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,8BAA8B;QACpE,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,GAAG,EAAiC,CAAC;AAEjF;;;GAGG;AACH,MAAM,oBAAoB,GAAG,eAAe,CAAC,IAAI,oBAAoB,CAAS,CAAC,OAAO,EAAE,EAAE;IACxF,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACI,KAAK,UAAU,eAAe,CACnC,MAAsD;IAEtD,MAAM,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC,kBAAkB;IAChF,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mCAAmC;IACnC,MAAM,aAAa,GAAG,SAAS,IAAI,MAAM;QACvC,CAAC,CAAC,MAAM,IAAA,yBAAgB,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC,CAAC,MAAM,IAAA,yBAAgB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE1C,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;IAE5C,gDAAgD;IAChD,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,KAAK,GAAG,QAAQ,EAAE,KAAK,EAAE,CAAC;IAE9B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,gEAAgE;QAChE,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;QAC3B,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,oDAAoD;QACpD,oBAAoB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_minimalEIP712Signer.d.ts","sourceRoot":"","sources":["../../../src/src/utils/_minimalEIP712Signer.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,KAAK;IACpB,CAAC,IAAI,EAAE,MAAM,GAAG;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,EAAE,CAAC;CACL;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,MAAM,EAAE,CAAC;IACnD,iBAAiB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAClC,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;CACtB;AAqMD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAElE,2DAA2D;AAC3D,qBAAa,sBAAuB,YAAW,wBAAwB;;IAErE,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;gBACX,UAAU,EAAE,MAAM,GAAG,UAAU;IAI3C,aAAa,CACX,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,GACA,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC;CAG1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_minimalEIP712Signer.js","sourceRoot":"","sources":["../../../src/src/utils/_minimalEIP712Signer.ts"],"names":[],"mappings":"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"}
@@ -1,82 +0,0 @@
1
- /**
2
- * Sequential request execution to prevent nonce race conditions.
3
- *
4
- * Problem: When multiple requests are sent rapidly, they may execute in different order
5
- * on the transport layer, causing nonce errors (e.g., server receives nonce 101 before 100).
6
- *
7
- * Solution: Queue ensures requests execute sequentially in order.
8
- */
9
-
10
- import type { ExchangeRequestConfig, MultiSignRequestConfig } from "./_types.js";
11
- import { getWalletAddress } from "../../../signing/mod.js";
12
-
13
- /**
14
- * Request queue for sequential execution of requests.
15
- * Ensures that requests are executed in order, preventing them from arriving at the server out of sequence.
16
- */
17
- class RequestQueue {
18
- private queue: Promise<unknown> = Promise.resolve();
19
-
20
- /**
21
- * Enqueue a request to be executed sequentially.
22
- * @param fn - The function to execute.
23
- * @returns A promise that resolves with the result of the function.
24
- */
25
- enqueue<T>(fn: () => Promise<T>): Promise<T> {
26
- const current = this.queue.then(() => fn());
27
- this.queue = current.catch(() => {}); // Prevent unhandled rejection
28
- return current;
29
- }
30
- }
31
-
32
- /**
33
- * Map of wallet addresses to weak references of request queues.
34
- * Uses WeakRef to allow garbage collection of unused queues:
35
- * - When a queue is no longer referenced (all requests completed), GC can remove it
36
- * - FinalizationRegistry automatically cleans up the Map entry when queue is GC'd
37
- * - This prevents memory leaks in long-running applications without manual cleanup
38
- */
39
- const requestQueueMap = /* @__PURE__ */ new Map<string, WeakRef<RequestQueue>>();
40
-
41
- /**
42
- * Registry to clean up Map entries when queues are garbage collected.
43
- * When a RequestQueue is GC'd, this callback removes the corresponding Map entry.
44
- */
45
- const requestQueueRegistry = /* @__PURE__ */ new FinalizationRegistry<string>((address) => {
46
- requestQueueMap.delete(address);
47
- });
48
-
49
- /**
50
- * Get or create a request queue for the given config.
51
- * Uses a global Map keyed by wallet address to ensure the same wallet uses the same queue
52
- * regardless of whether called via client or direct function.
53
- */
54
- export async function getRequestQueue(
55
- config: ExchangeRequestConfig | MultiSignRequestConfig,
56
- ): Promise<RequestQueue | undefined> {
57
- const sequentialRequests = config.sequentialRequests ?? true; // default to true
58
- if (!sequentialRequests) {
59
- return undefined;
60
- }
61
-
62
- // Get wallet address to use as key
63
- const walletAddress = "signers" in config
64
- ? await getWalletAddress(config.signers[0])
65
- : await getWalletAddress(config.wallet);
66
-
67
- const address = walletAddress.toLowerCase();
68
-
69
- // Try to get existing queue from weak reference
70
- const queueRef = requestQueueMap.get(address);
71
- let queue = queueRef?.deref();
72
-
73
- if (!queue) {
74
- // Create new queue if it doesn't exist or was garbage collected
75
- queue = new RequestQueue();
76
- requestQueueMap.set(address, new WeakRef(queue));
77
- // Register for automatic cleanup when queue is GC'd
78
- requestQueueRegistry.register(queue, address);
79
- }
80
-
81
- return queue;
82
- }