@lifi/perps-sdk-provider-hyperliquid 0.0.0-preview-c903f1e

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 (434) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +29 -0
  3. package/dist/cjs/HyperliquidProvider.d.ts +15 -0
  4. package/dist/cjs/HyperliquidProvider.d.ts.map +1 -0
  5. package/dist/cjs/HyperliquidProvider.js +135 -0
  6. package/dist/cjs/HyperliquidProvider.js.map +1 -0
  7. package/dist/cjs/accountConfig.d.ts +3 -0
  8. package/dist/cjs/accountConfig.d.ts.map +1 -0
  9. package/dist/cjs/accountConfig.js +45 -0
  10. package/dist/cjs/accountConfig.js.map +1 -0
  11. package/dist/cjs/accountSummary.d.ts +3 -0
  12. package/dist/cjs/accountSummary.d.ts.map +1 -0
  13. package/dist/cjs/accountSummary.js +12 -0
  14. package/dist/cjs/accountSummary.js.map +1 -0
  15. package/dist/cjs/constants.d.ts +11 -0
  16. package/dist/cjs/constants.d.ts.map +1 -0
  17. package/dist/cjs/constants.js +16 -0
  18. package/dist/cjs/constants.js.map +1 -0
  19. package/dist/cjs/context.d.ts +13 -0
  20. package/dist/cjs/context.d.ts.map +1 -0
  21. package/dist/cjs/context.js +24 -0
  22. package/dist/cjs/context.js.map +1 -0
  23. package/dist/cjs/index.d.ts +22 -0
  24. package/dist/cjs/index.d.ts.map +1 -0
  25. package/dist/cjs/index.js +47 -0
  26. package/dist/cjs/index.js.map +1 -0
  27. package/dist/cjs/package.json +1 -0
  28. package/dist/cjs/services/getAccount.d.ts +6 -0
  29. package/dist/cjs/services/getAccount.d.ts.map +1 -0
  30. package/dist/cjs/services/getAccount.js +109 -0
  31. package/dist/cjs/services/getAccount.js.map +1 -0
  32. package/dist/cjs/services/getActivity.d.ts +15 -0
  33. package/dist/cjs/services/getActivity.d.ts.map +1 -0
  34. package/dist/cjs/services/getActivity.js +65 -0
  35. package/dist/cjs/services/getActivity.js.map +1 -0
  36. package/dist/cjs/services/getFills.d.ts +13 -0
  37. package/dist/cjs/services/getFills.d.ts.map +1 -0
  38. package/dist/cjs/services/getFills.js +40 -0
  39. package/dist/cjs/services/getFills.js.map +1 -0
  40. package/dist/cjs/services/getOrder.d.ts +6 -0
  41. package/dist/cjs/services/getOrder.d.ts.map +1 -0
  42. package/dist/cjs/services/getOrder.js +27 -0
  43. package/dist/cjs/services/getOrder.js.map +1 -0
  44. package/dist/cjs/services/getOrders.d.ts +11 -0
  45. package/dist/cjs/services/getOrders.d.ts.map +1 -0
  46. package/dist/cjs/services/getOrders.js +51 -0
  47. package/dist/cjs/services/getOrders.js.map +1 -0
  48. package/dist/cjs/services/getPositions.d.ts +11 -0
  49. package/dist/cjs/services/getPositions.d.ts.map +1 -0
  50. package/dist/cjs/services/getPositions.js +33 -0
  51. package/dist/cjs/services/getPositions.js.map +1 -0
  52. package/dist/cjs/signers/HyperliquidAgentStore.d.ts +19 -0
  53. package/dist/cjs/signers/HyperliquidAgentStore.d.ts.map +1 -0
  54. package/dist/cjs/signers/HyperliquidAgentStore.js +110 -0
  55. package/dist/cjs/signers/HyperliquidAgentStore.js.map +1 -0
  56. package/dist/cjs/signers/index.d.ts +4 -0
  57. package/dist/cjs/signers/index.d.ts.map +1 -0
  58. package/dist/cjs/signers/index.js +8 -0
  59. package/dist/cjs/signers/index.js.map +1 -0
  60. package/dist/cjs/signers/signActions.d.ts +7 -0
  61. package/dist/cjs/signers/signActions.d.ts.map +1 -0
  62. package/dist/cjs/signers/signActions.js +33 -0
  63. package/dist/cjs/signers/signActions.js.map +1 -0
  64. package/dist/cjs/types/account.d.ts +51 -0
  65. package/dist/cjs/types/account.d.ts.map +1 -0
  66. package/dist/cjs/types/account.js +10 -0
  67. package/dist/cjs/types/account.js.map +1 -0
  68. package/dist/cjs/types/action.d.ts +51 -0
  69. package/dist/cjs/types/action.d.ts.map +1 -0
  70. package/dist/cjs/types/action.js +11 -0
  71. package/dist/cjs/types/action.js.map +1 -0
  72. package/dist/cjs/types/asset.d.ts +66 -0
  73. package/dist/cjs/types/asset.d.ts.map +1 -0
  74. package/dist/cjs/types/asset.js +3 -0
  75. package/dist/cjs/types/asset.js.map +1 -0
  76. package/dist/cjs/types/fill.d.ts +18 -0
  77. package/dist/cjs/types/fill.d.ts.map +1 -0
  78. package/dist/cjs/types/fill.js +3 -0
  79. package/dist/cjs/types/fill.js.map +1 -0
  80. package/dist/cjs/types/index.d.ts +8 -0
  81. package/dist/cjs/types/index.d.ts.map +1 -0
  82. package/dist/cjs/types/index.js +24 -0
  83. package/dist/cjs/types/index.js.map +1 -0
  84. package/dist/cjs/types/ledger.d.ts +53 -0
  85. package/dist/cjs/types/ledger.d.ts.map +1 -0
  86. package/dist/cjs/types/ledger.js +8 -0
  87. package/dist/cjs/types/ledger.js.map +1 -0
  88. package/dist/cjs/types/order.d.ts +46 -0
  89. package/dist/cjs/types/order.d.ts.map +1 -0
  90. package/dist/cjs/types/order.js +3 -0
  91. package/dist/cjs/types/order.js.map +1 -0
  92. package/dist/cjs/types/ws.d.ts +36 -0
  93. package/dist/cjs/types/ws.d.ts.map +1 -0
  94. package/dist/cjs/types/ws.js +3 -0
  95. package/dist/cjs/types/ws.js.map +1 -0
  96. package/dist/cjs/utils/assetId.d.ts +4 -0
  97. package/dist/cjs/utils/assetId.d.ts.map +1 -0
  98. package/dist/cjs/utils/assetId.js +21 -0
  99. package/dist/cjs/utils/assetId.js.map +1 -0
  100. package/dist/cjs/utils/index.d.ts +15 -0
  101. package/dist/cjs/utils/index.d.ts.map +1 -0
  102. package/dist/cjs/utils/index.js +49 -0
  103. package/dist/cjs/utils/index.js.map +1 -0
  104. package/dist/cjs/utils/infoClient.d.ts +10 -0
  105. package/dist/cjs/utils/infoClient.d.ts.map +1 -0
  106. package/dist/cjs/utils/infoClient.js +58 -0
  107. package/dist/cjs/utils/infoClient.js.map +1 -0
  108. package/dist/cjs/utils/liquidation.d.ts +3 -0
  109. package/dist/cjs/utils/liquidation.d.ts.map +1 -0
  110. package/dist/cjs/utils/liquidation.js +24 -0
  111. package/dist/cjs/utils/liquidation.js.map +1 -0
  112. package/dist/cjs/utils/mapActivity.d.ts +5 -0
  113. package/dist/cjs/utils/mapActivity.d.ts.map +1 -0
  114. package/dist/cjs/utils/mapActivity.js +133 -0
  115. package/dist/cjs/utils/mapActivity.js.map +1 -0
  116. package/dist/cjs/utils/mapFill.d.ts +6 -0
  117. package/dist/cjs/utils/mapFill.d.ts.map +1 -0
  118. package/dist/cjs/utils/mapFill.js +33 -0
  119. package/dist/cjs/utils/mapFill.js.map +1 -0
  120. package/dist/cjs/utils/mapMarket.d.ts +4 -0
  121. package/dist/cjs/utils/mapMarket.d.ts.map +1 -0
  122. package/dist/cjs/utils/mapMarket.js +22 -0
  123. package/dist/cjs/utils/mapMarket.js.map +1 -0
  124. package/dist/cjs/utils/mapMarketPrice.d.ts +4 -0
  125. package/dist/cjs/utils/mapMarketPrice.d.ts.map +1 -0
  126. package/dist/cjs/utils/mapMarketPrice.js +22 -0
  127. package/dist/cjs/utils/mapMarketPrice.js.map +1 -0
  128. package/dist/cjs/utils/mapOrder.d.ts +12 -0
  129. package/dist/cjs/utils/mapOrder.d.ts.map +1 -0
  130. package/dist/cjs/utils/mapOrder.js +156 -0
  131. package/dist/cjs/utils/mapOrder.js.map +1 -0
  132. package/dist/cjs/utils/mapPosition.d.ts +5 -0
  133. package/dist/cjs/utils/mapPosition.d.ts.map +1 -0
  134. package/dist/cjs/utils/mapPosition.js +28 -0
  135. package/dist/cjs/utils/mapPosition.js.map +1 -0
  136. package/dist/cjs/utils/marketDisplay.d.ts +4 -0
  137. package/dist/cjs/utils/marketDisplay.d.ts.map +1 -0
  138. package/dist/cjs/utils/marketDisplay.js +23 -0
  139. package/dist/cjs/utils/marketDisplay.js.map +1 -0
  140. package/dist/cjs/utils/orderFormatting.d.ts +4 -0
  141. package/dist/cjs/utils/orderFormatting.d.ts.map +1 -0
  142. package/dist/cjs/utils/orderFormatting.js +30 -0
  143. package/dist/cjs/utils/orderFormatting.js.map +1 -0
  144. package/dist/cjs/utils/priceStepToAggregation.d.ts +5 -0
  145. package/dist/cjs/utils/priceStepToAggregation.d.ts.map +1 -0
  146. package/dist/cjs/utils/priceStepToAggregation.js +36 -0
  147. package/dist/cjs/utils/priceStepToAggregation.js.map +1 -0
  148. package/dist/cjs/utils/spotBalance.d.ts +6 -0
  149. package/dist/cjs/utils/spotBalance.d.ts.map +1 -0
  150. package/dist/cjs/utils/spotBalance.js +34 -0
  151. package/dist/cjs/utils/spotBalance.js.map +1 -0
  152. package/dist/cjs/websocket/HyperliquidWsProvider.d.ts +29 -0
  153. package/dist/cjs/websocket/HyperliquidWsProvider.d.ts.map +1 -0
  154. package/dist/cjs/websocket/HyperliquidWsProvider.js +359 -0
  155. package/dist/cjs/websocket/HyperliquidWsProvider.js.map +1 -0
  156. package/dist/cjs/websocket/index.d.ts +2 -0
  157. package/dist/cjs/websocket/index.d.ts.map +1 -0
  158. package/dist/cjs/websocket/index.js +6 -0
  159. package/dist/cjs/websocket/index.js.map +1 -0
  160. package/dist/esm/HyperliquidProvider.d.ts +64 -0
  161. package/dist/esm/HyperliquidProvider.d.ts.map +1 -0
  162. package/dist/esm/HyperliquidProvider.js +162 -0
  163. package/dist/esm/HyperliquidProvider.js.map +1 -0
  164. package/dist/esm/accountConfig.d.ts +10 -0
  165. package/dist/esm/accountConfig.d.ts.map +1 -0
  166. package/dist/esm/accountConfig.js +65 -0
  167. package/dist/esm/accountConfig.js.map +1 -0
  168. package/dist/esm/accountSummary.d.ts +10 -0
  169. package/dist/esm/accountSummary.d.ts.map +1 -0
  170. package/dist/esm/accountSummary.js +22 -0
  171. package/dist/esm/accountSummary.js.map +1 -0
  172. package/dist/esm/constants.d.ts +40 -0
  173. package/dist/esm/constants.d.ts.map +1 -0
  174. package/dist/esm/constants.js +42 -0
  175. package/dist/esm/constants.js.map +1 -0
  176. package/dist/esm/context.d.ts +26 -0
  177. package/dist/esm/context.d.ts.map +1 -0
  178. package/dist/esm/context.js +25 -0
  179. package/dist/esm/context.js.map +1 -0
  180. package/dist/esm/index.d.ts +31 -0
  181. package/dist/esm/index.d.ts.map +1 -0
  182. package/dist/esm/index.js +26 -0
  183. package/dist/esm/index.js.map +1 -0
  184. package/dist/esm/package.json +1 -0
  185. package/dist/esm/services/getAccount.d.ts +28 -0
  186. package/dist/esm/services/getAccount.d.ts.map +1 -0
  187. package/dist/esm/services/getAccount.js +134 -0
  188. package/dist/esm/services/getAccount.js.map +1 -0
  189. package/dist/esm/services/getActivity.d.ts +33 -0
  190. package/dist/esm/services/getActivity.d.ts.map +1 -0
  191. package/dist/esm/services/getActivity.js +75 -0
  192. package/dist/esm/services/getActivity.js.map +1 -0
  193. package/dist/esm/services/getFills.d.ts +34 -0
  194. package/dist/esm/services/getFills.d.ts.map +1 -0
  195. package/dist/esm/services/getFills.js +49 -0
  196. package/dist/esm/services/getFills.js.map +1 -0
  197. package/dist/esm/services/getOrder.d.ts +17 -0
  198. package/dist/esm/services/getOrder.d.ts.map +1 -0
  199. package/dist/esm/services/getOrder.js +29 -0
  200. package/dist/esm/services/getOrder.js.map +1 -0
  201. package/dist/esm/services/getOrders.d.ts +27 -0
  202. package/dist/esm/services/getOrders.d.ts.map +1 -0
  203. package/dist/esm/services/getOrders.js +57 -0
  204. package/dist/esm/services/getOrders.js.map +1 -0
  205. package/dist/esm/services/getPositions.d.ts +26 -0
  206. package/dist/esm/services/getPositions.d.ts.map +1 -0
  207. package/dist/esm/services/getPositions.js +37 -0
  208. package/dist/esm/services/getPositions.js.map +1 -0
  209. package/dist/esm/signers/HyperliquidAgentStore.d.ts +54 -0
  210. package/dist/esm/signers/HyperliquidAgentStore.d.ts.map +1 -0
  211. package/dist/esm/signers/HyperliquidAgentStore.js +134 -0
  212. package/dist/esm/signers/HyperliquidAgentStore.js.map +1 -0
  213. package/dist/esm/signers/index.d.ts +4 -0
  214. package/dist/esm/signers/index.d.ts.map +1 -0
  215. package/dist/esm/signers/index.js +4 -0
  216. package/dist/esm/signers/index.js.map +1 -0
  217. package/dist/esm/signers/signActions.d.ts +15 -0
  218. package/dist/esm/signers/signActions.d.ts.map +1 -0
  219. package/dist/esm/signers/signActions.js +38 -0
  220. package/dist/esm/signers/signActions.js.map +1 -0
  221. package/dist/esm/types/account.d.ts +64 -0
  222. package/dist/esm/types/account.d.ts.map +1 -0
  223. package/dist/esm/types/account.js +13 -0
  224. package/dist/esm/types/account.js.map +1 -0
  225. package/dist/esm/types/action.d.ts +61 -0
  226. package/dist/esm/types/action.d.ts.map +1 -0
  227. package/dist/esm/types/action.js +16 -0
  228. package/dist/esm/types/action.js.map +1 -0
  229. package/dist/esm/types/asset.d.ts +82 -0
  230. package/dist/esm/types/asset.d.ts.map +1 -0
  231. package/dist/esm/types/asset.js +3 -0
  232. package/dist/esm/types/asset.js.map +1 -0
  233. package/dist/esm/types/fill.d.ts +21 -0
  234. package/dist/esm/types/fill.d.ts.map +1 -0
  235. package/dist/esm/types/fill.js +3 -0
  236. package/dist/esm/types/fill.js.map +1 -0
  237. package/dist/esm/types/index.d.ts +8 -0
  238. package/dist/esm/types/index.d.ts.map +1 -0
  239. package/dist/esm/types/index.js +11 -0
  240. package/dist/esm/types/index.js.map +1 -0
  241. package/dist/esm/types/ledger.d.ts +93 -0
  242. package/dist/esm/types/ledger.d.ts.map +1 -0
  243. package/dist/esm/types/ledger.js +16 -0
  244. package/dist/esm/types/ledger.js.map +1 -0
  245. package/dist/esm/types/order.d.ts +51 -0
  246. package/dist/esm/types/order.d.ts.map +1 -0
  247. package/dist/esm/types/order.js +3 -0
  248. package/dist/esm/types/order.js.map +1 -0
  249. package/dist/esm/types/ws.d.ts +43 -0
  250. package/dist/esm/types/ws.d.ts.map +1 -0
  251. package/dist/esm/types/ws.js +3 -0
  252. package/dist/esm/types/ws.js.map +1 -0
  253. package/dist/esm/utils/assetId.d.ts +20 -0
  254. package/dist/esm/utils/assetId.d.ts.map +1 -0
  255. package/dist/esm/utils/assetId.js +31 -0
  256. package/dist/esm/utils/assetId.js.map +1 -0
  257. package/dist/esm/utils/index.d.ts +15 -0
  258. package/dist/esm/utils/index.d.ts.map +1 -0
  259. package/dist/esm/utils/index.js +17 -0
  260. package/dist/esm/utils/index.js.map +1 -0
  261. package/dist/esm/utils/infoClient.d.ts +28 -0
  262. package/dist/esm/utils/infoClient.d.ts.map +1 -0
  263. package/dist/esm/utils/infoClient.js +70 -0
  264. package/dist/esm/utils/infoClient.js.map +1 -0
  265. package/dist/esm/utils/liquidation.d.ts +48 -0
  266. package/dist/esm/utils/liquidation.d.ts.map +1 -0
  267. package/dist/esm/utils/liquidation.js +65 -0
  268. package/dist/esm/utils/liquidation.js.map +1 -0
  269. package/dist/esm/utils/mapActivity.d.ts +15 -0
  270. package/dist/esm/utils/mapActivity.d.ts.map +1 -0
  271. package/dist/esm/utils/mapActivity.js +148 -0
  272. package/dist/esm/utils/mapActivity.js.map +1 -0
  273. package/dist/esm/utils/mapFill.d.ts +11 -0
  274. package/dist/esm/utils/mapFill.d.ts.map +1 -0
  275. package/dist/esm/utils/mapFill.js +34 -0
  276. package/dist/esm/utils/mapFill.js.map +1 -0
  277. package/dist/esm/utils/mapMarket.d.ts +12 -0
  278. package/dist/esm/utils/mapMarket.d.ts.map +1 -0
  279. package/dist/esm/utils/mapMarket.js +27 -0
  280. package/dist/esm/utils/mapMarket.js.map +1 -0
  281. package/dist/esm/utils/mapMarketPrice.d.ts +10 -0
  282. package/dist/esm/utils/mapMarketPrice.d.ts.map +1 -0
  283. package/dist/esm/utils/mapMarketPrice.js +24 -0
  284. package/dist/esm/utils/mapMarketPrice.js.map +1 -0
  285. package/dist/esm/utils/mapOrder.d.ts +49 -0
  286. package/dist/esm/utils/mapOrder.d.ts.map +1 -0
  287. package/dist/esm/utils/mapOrder.js +182 -0
  288. package/dist/esm/utils/mapOrder.js.map +1 -0
  289. package/dist/esm/utils/mapPosition.d.ts +12 -0
  290. package/dist/esm/utils/mapPosition.d.ts.map +1 -0
  291. package/dist/esm/utils/mapPosition.js +30 -0
  292. package/dist/esm/utils/mapPosition.js.map +1 -0
  293. package/dist/esm/utils/marketDisplay.d.ts +17 -0
  294. package/dist/esm/utils/marketDisplay.d.ts.map +1 -0
  295. package/dist/esm/utils/marketDisplay.js +31 -0
  296. package/dist/esm/utils/marketDisplay.js.map +1 -0
  297. package/dist/esm/utils/orderFormatting.d.ts +50 -0
  298. package/dist/esm/utils/orderFormatting.d.ts.map +1 -0
  299. package/dist/esm/utils/orderFormatting.js +78 -0
  300. package/dist/esm/utils/orderFormatting.js.map +1 -0
  301. package/dist/esm/utils/priceStepToAggregation.d.ts +20 -0
  302. package/dist/esm/utils/priceStepToAggregation.d.ts.map +1 -0
  303. package/dist/esm/utils/priceStepToAggregation.js +51 -0
  304. package/dist/esm/utils/priceStepToAggregation.js.map +1 -0
  305. package/dist/esm/utils/spotBalance.d.ts +18 -0
  306. package/dist/esm/utils/spotBalance.d.ts.map +1 -0
  307. package/dist/esm/utils/spotBalance.js +40 -0
  308. package/dist/esm/utils/spotBalance.js.map +1 -0
  309. package/dist/esm/websocket/HyperliquidWsProvider.d.ts +61 -0
  310. package/dist/esm/websocket/HyperliquidWsProvider.d.ts.map +1 -0
  311. package/dist/esm/websocket/HyperliquidWsProvider.js +406 -0
  312. package/dist/esm/websocket/HyperliquidWsProvider.js.map +1 -0
  313. package/dist/esm/websocket/index.d.ts +2 -0
  314. package/dist/esm/websocket/index.d.ts.map +1 -0
  315. package/dist/esm/websocket/index.js +3 -0
  316. package/dist/esm/websocket/index.js.map +1 -0
  317. package/dist/types/HyperliquidProvider.d.ts +64 -0
  318. package/dist/types/HyperliquidProvider.d.ts.map +1 -0
  319. package/dist/types/accountConfig.d.ts +10 -0
  320. package/dist/types/accountConfig.d.ts.map +1 -0
  321. package/dist/types/accountSummary.d.ts +10 -0
  322. package/dist/types/accountSummary.d.ts.map +1 -0
  323. package/dist/types/constants.d.ts +40 -0
  324. package/dist/types/constants.d.ts.map +1 -0
  325. package/dist/types/context.d.ts +26 -0
  326. package/dist/types/context.d.ts.map +1 -0
  327. package/dist/types/index.d.ts +31 -0
  328. package/dist/types/index.d.ts.map +1 -0
  329. package/dist/types/services/getAccount.d.ts +28 -0
  330. package/dist/types/services/getAccount.d.ts.map +1 -0
  331. package/dist/types/services/getActivity.d.ts +33 -0
  332. package/dist/types/services/getActivity.d.ts.map +1 -0
  333. package/dist/types/services/getFills.d.ts +34 -0
  334. package/dist/types/services/getFills.d.ts.map +1 -0
  335. package/dist/types/services/getOrder.d.ts +17 -0
  336. package/dist/types/services/getOrder.d.ts.map +1 -0
  337. package/dist/types/services/getOrders.d.ts +27 -0
  338. package/dist/types/services/getOrders.d.ts.map +1 -0
  339. package/dist/types/services/getPositions.d.ts +26 -0
  340. package/dist/types/services/getPositions.d.ts.map +1 -0
  341. package/dist/types/signers/HyperliquidAgentStore.d.ts +54 -0
  342. package/dist/types/signers/HyperliquidAgentStore.d.ts.map +1 -0
  343. package/dist/types/signers/index.d.ts +4 -0
  344. package/dist/types/signers/index.d.ts.map +1 -0
  345. package/dist/types/signers/signActions.d.ts +15 -0
  346. package/dist/types/signers/signActions.d.ts.map +1 -0
  347. package/dist/types/types/account.d.ts +64 -0
  348. package/dist/types/types/account.d.ts.map +1 -0
  349. package/dist/types/types/action.d.ts +61 -0
  350. package/dist/types/types/action.d.ts.map +1 -0
  351. package/dist/types/types/asset.d.ts +82 -0
  352. package/dist/types/types/asset.d.ts.map +1 -0
  353. package/dist/types/types/fill.d.ts +21 -0
  354. package/dist/types/types/fill.d.ts.map +1 -0
  355. package/dist/types/types/index.d.ts +8 -0
  356. package/dist/types/types/index.d.ts.map +1 -0
  357. package/dist/types/types/ledger.d.ts +93 -0
  358. package/dist/types/types/ledger.d.ts.map +1 -0
  359. package/dist/types/types/order.d.ts +51 -0
  360. package/dist/types/types/order.d.ts.map +1 -0
  361. package/dist/types/types/ws.d.ts +43 -0
  362. package/dist/types/types/ws.d.ts.map +1 -0
  363. package/dist/types/utils/assetId.d.ts +20 -0
  364. package/dist/types/utils/assetId.d.ts.map +1 -0
  365. package/dist/types/utils/index.d.ts +15 -0
  366. package/dist/types/utils/index.d.ts.map +1 -0
  367. package/dist/types/utils/infoClient.d.ts +28 -0
  368. package/dist/types/utils/infoClient.d.ts.map +1 -0
  369. package/dist/types/utils/liquidation.d.ts +48 -0
  370. package/dist/types/utils/liquidation.d.ts.map +1 -0
  371. package/dist/types/utils/mapActivity.d.ts +15 -0
  372. package/dist/types/utils/mapActivity.d.ts.map +1 -0
  373. package/dist/types/utils/mapFill.d.ts +11 -0
  374. package/dist/types/utils/mapFill.d.ts.map +1 -0
  375. package/dist/types/utils/mapMarket.d.ts +12 -0
  376. package/dist/types/utils/mapMarket.d.ts.map +1 -0
  377. package/dist/types/utils/mapMarketPrice.d.ts +10 -0
  378. package/dist/types/utils/mapMarketPrice.d.ts.map +1 -0
  379. package/dist/types/utils/mapOrder.d.ts +49 -0
  380. package/dist/types/utils/mapOrder.d.ts.map +1 -0
  381. package/dist/types/utils/mapPosition.d.ts +12 -0
  382. package/dist/types/utils/mapPosition.d.ts.map +1 -0
  383. package/dist/types/utils/marketDisplay.d.ts +17 -0
  384. package/dist/types/utils/marketDisplay.d.ts.map +1 -0
  385. package/dist/types/utils/orderFormatting.d.ts +50 -0
  386. package/dist/types/utils/orderFormatting.d.ts.map +1 -0
  387. package/dist/types/utils/priceStepToAggregation.d.ts +20 -0
  388. package/dist/types/utils/priceStepToAggregation.d.ts.map +1 -0
  389. package/dist/types/utils/spotBalance.d.ts +18 -0
  390. package/dist/types/utils/spotBalance.d.ts.map +1 -0
  391. package/dist/types/websocket/HyperliquidWsProvider.d.ts +61 -0
  392. package/dist/types/websocket/HyperliquidWsProvider.d.ts.map +1 -0
  393. package/dist/types/websocket/index.d.ts +2 -0
  394. package/dist/types/websocket/index.d.ts.map +1 -0
  395. package/package.json +68 -0
  396. package/src/HyperliquidProvider.ts +381 -0
  397. package/src/accountConfig.ts +89 -0
  398. package/src/accountSummary.ts +32 -0
  399. package/src/constants.ts +47 -0
  400. package/src/context.ts +41 -0
  401. package/src/index.ts +45 -0
  402. package/src/services/getAccount.ts +263 -0
  403. package/src/services/getActivity.ts +162 -0
  404. package/src/services/getFills.ts +96 -0
  405. package/src/services/getOrder.ts +61 -0
  406. package/src/services/getOrders.ts +101 -0
  407. package/src/services/getPositions.ts +76 -0
  408. package/src/signers/HyperliquidAgentStore.ts +176 -0
  409. package/src/signers/index.ts +5 -0
  410. package/src/signers/signActions.ts +78 -0
  411. package/src/types/account.ts +74 -0
  412. package/src/types/action.ts +66 -0
  413. package/src/types/asset.ts +96 -0
  414. package/src/types/fill.ts +24 -0
  415. package/src/types/index.ts +11 -0
  416. package/src/types/ledger.ts +111 -0
  417. package/src/types/order.ts +56 -0
  418. package/src/types/ws.ts +47 -0
  419. package/src/utils/assetId.ts +38 -0
  420. package/src/utils/index.ts +38 -0
  421. package/src/utils/infoClient.ts +111 -0
  422. package/src/utils/liquidation.ts +74 -0
  423. package/src/utils/mapActivity.ts +182 -0
  424. package/src/utils/mapFill.ts +48 -0
  425. package/src/utils/mapMarket.ts +33 -0
  426. package/src/utils/mapMarketPrice.ts +33 -0
  427. package/src/utils/mapOrder.ts +218 -0
  428. package/src/utils/mapPosition.ts +40 -0
  429. package/src/utils/marketDisplay.ts +38 -0
  430. package/src/utils/orderFormatting.ts +93 -0
  431. package/src/utils/priceStepToAggregation.ts +58 -0
  432. package/src/utils/spotBalance.ts +51 -0
  433. package/src/websocket/HyperliquidWsProvider.ts +533 -0
  434. package/src/websocket/index.ts +3 -0
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.hyperliquidWsProvider = exports.HyperliquidWsProvider = exports.HyperliquidAgentStore = exports.getPositions = exports.getOrders = exports.getOrder = exports.getFills = exports.getActivity = exports.getAccount = exports.hyperliquidProvider = exports.HYPERLIQUID_PROVIDER_KEY = exports.HYPERLIQUID_FEE_TIER_FALLBACK = exports.DEFAULT_HYPERLIQUID_API_URL = exports.getAccountSummary = exports.projectHyperliquidConfigSettings = void 0;
18
+ var accountConfig_js_1 = require("./accountConfig.js");
19
+ Object.defineProperty(exports, "projectHyperliquidConfigSettings", { enumerable: true, get: function () { return accountConfig_js_1.projectHyperliquidConfigSettings; } });
20
+ var accountSummary_js_1 = require("./accountSummary.js");
21
+ Object.defineProperty(exports, "getAccountSummary", { enumerable: true, get: function () { return accountSummary_js_1.getAccountSummary; } });
22
+ var constants_js_1 = require("./constants.js");
23
+ Object.defineProperty(exports, "DEFAULT_HYPERLIQUID_API_URL", { enumerable: true, get: function () { return constants_js_1.DEFAULT_HYPERLIQUID_API_URL; } });
24
+ Object.defineProperty(exports, "HYPERLIQUID_FEE_TIER_FALLBACK", { enumerable: true, get: function () { return constants_js_1.HYPERLIQUID_FEE_TIER_FALLBACK; } });
25
+ Object.defineProperty(exports, "HYPERLIQUID_PROVIDER_KEY", { enumerable: true, get: function () { return constants_js_1.PROVIDER_KEY; } });
26
+ var HyperliquidProvider_js_1 = require("./HyperliquidProvider.js");
27
+ Object.defineProperty(exports, "hyperliquidProvider", { enumerable: true, get: function () { return HyperliquidProvider_js_1.hyperliquidProvider; } });
28
+ var getAccount_js_1 = require("./services/getAccount.js");
29
+ Object.defineProperty(exports, "getAccount", { enumerable: true, get: function () { return getAccount_js_1.getAccount; } });
30
+ var getActivity_js_1 = require("./services/getActivity.js");
31
+ Object.defineProperty(exports, "getActivity", { enumerable: true, get: function () { return getActivity_js_1.getActivity; } });
32
+ var getFills_js_1 = require("./services/getFills.js");
33
+ Object.defineProperty(exports, "getFills", { enumerable: true, get: function () { return getFills_js_1.getFills; } });
34
+ var getOrder_js_1 = require("./services/getOrder.js");
35
+ Object.defineProperty(exports, "getOrder", { enumerable: true, get: function () { return getOrder_js_1.getOrder; } });
36
+ var getOrders_js_1 = require("./services/getOrders.js");
37
+ Object.defineProperty(exports, "getOrders", { enumerable: true, get: function () { return getOrders_js_1.getOrders; } });
38
+ var getPositions_js_1 = require("./services/getPositions.js");
39
+ Object.defineProperty(exports, "getPositions", { enumerable: true, get: function () { return getPositions_js_1.getPositions; } });
40
+ var HyperliquidAgentStore_js_1 = require("./signers/HyperliquidAgentStore.js");
41
+ Object.defineProperty(exports, "HyperliquidAgentStore", { enumerable: true, get: function () { return HyperliquidAgentStore_js_1.HyperliquidAgentStore; } });
42
+ __exportStar(require("./types/index.js"), exports);
43
+ __exportStar(require("./utils/index.js"), exports);
44
+ var HyperliquidWsProvider_js_1 = require("./websocket/HyperliquidWsProvider.js");
45
+ Object.defineProperty(exports, "HyperliquidWsProvider", { enumerable: true, get: function () { return HyperliquidWsProvider_js_1.HyperliquidWsProvider; } });
46
+ Object.defineProperty(exports, "hyperliquidWsProvider", { enumerable: true, get: function () { return HyperliquidWsProvider_js_1.hyperliquidWsProvider; } });
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAaA,uDAAqE;AAA5D,oIAAA,gCAAgC,OAAA;AACzC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,+CAIuB;AAHrB,2HAAA,2BAA2B,OAAA;AAC3B,6HAAA,6BAA6B,OAAA;AAC7B,wHAAA,YAAY,OAA4B;AAE1C,mEAIiC;AAD/B,6HAAA,mBAAmB,OAAA;AAGrB,0DAAqD;AAA5C,2GAAA,UAAU,OAAA;AAEnB,4DAAuD;AAA9C,6GAAA,WAAW,OAAA;AAEpB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,+EAA0E;AAAjE,iIAAA,qBAAqB,OAAA;AAC9B,mDAAgC;AAChC,mDAAgC;AAChC,iFAG6C;AAF3C,iIAAA,qBAAqB,OAAA;AACrB,iIAAA,qBAAqB,OAAA"}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -0,0 +1,6 @@
1
+ import { type ProviderGetAccountParams, type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { AccountResponse } from '@lifi/perps-types';
3
+ import type { HyperliquidContext } from '../context.js';
4
+ export type GetAccountParams = ProviderGetAccountParams;
5
+ export declare const getAccount: ({ client, apiUrl }: HyperliquidContext, params: GetAccountParams, options?: SDKRequestOptions) => Promise<AccountResponse>;
6
+ //# sourceMappingURL=getAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAccount.d.ts","sourceRoot":"","sources":["../../../src/services/getAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,eAAe,EAKhB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAsBvD,MAAM,MAAM,gBAAgB,GAAG,wBAAwB,CAAA;AAmHvD,eAAO,MAAM,UAAU,GACrB,oBAAoB,kBAAkB,EACtC,QAAQ,gBAAgB,EACxB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,eAAe,CA0GzB,CAAA"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAccount = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const constants_js_1 = require("../constants.js");
6
+ const index_js_1 = require("../types/index.js");
7
+ const index_js_2 = require("../utils/index.js");
8
+ const infoClient_js_1 = require("../utils/infoClient.js");
9
+ const mapPosition_js_1 = require("../utils/mapPosition.js");
10
+ const getAccountValue = (state) => Number.parseFloat(state.crossMarginSummary.accountValue || state.marginSummary.accountValue);
11
+ const getTotalMarginUsed = (state) => Number.parseFloat(state.crossMarginSummary.totalMarginUsed ||
12
+ state.marginSummary.totalMarginUsed);
13
+ const getMarginUsed = (abstraction, positions, stateByDex) => {
14
+ if (abstraction === index_js_1.HlAbstractionMode.UNIFIED_ACCOUNT ||
15
+ abstraction === index_js_1.HlAbstractionMode.PORTFOLIO_MARGIN) {
16
+ const total = positions.reduce((sum, p) => sum + Number.parseFloat(p.marginUsed), 0);
17
+ return total.toString();
18
+ }
19
+ if (abstraction === index_js_1.HlAbstractionMode.DEX_ABSTRACTION) {
20
+ let total = 0;
21
+ for (const [, state] of stateByDex) {
22
+ total += getTotalMarginUsed(state);
23
+ }
24
+ return total.toString();
25
+ }
26
+ const mainState = stateByDex.get('');
27
+ if (!mainState) {
28
+ return '0';
29
+ }
30
+ return getTotalMarginUsed(mainState).toString();
31
+ };
32
+ const isUnifiedMode = (abstraction) => abstraction === index_js_1.HlAbstractionMode.UNIFIED_ACCOUNT ||
33
+ abstraction === index_js_1.HlAbstractionMode.PORTFOLIO_MARGIN;
34
+ const buildBalances = (abstraction, spotState, stateByDex, quoteAssetIds, priceById, quoteAssetByCategory) => {
35
+ const balances = [];
36
+ const collateralBalances = [];
37
+ for (const b of spotState.balances) {
38
+ const balance = (0, index_js_2.spotBalance)((0, index_js_2.spotAssetFromToken)(b), b.total, priceById);
39
+ if (quoteAssetIds.has(balance.asset.id)) {
40
+ collateralBalances.push(balance);
41
+ }
42
+ else {
43
+ balances.push(balance);
44
+ }
45
+ }
46
+ if (!isUnifiedMode(abstraction)) {
47
+ for (const [dex, state] of stateByDex) {
48
+ const categoryId = dex || constants_js_1.PROVIDER_KEY;
49
+ const value = getAccountValue(state);
50
+ collateralBalances.push({
51
+ categoryId,
52
+ asset: quoteAssetByCategory.get(categoryId),
53
+ units: value.toString(),
54
+ valueUsd: value.toString(),
55
+ });
56
+ }
57
+ }
58
+ return { balances, collateralBalances };
59
+ };
60
+ const getAccount = async ({ client, apiUrl }, params, options) => {
61
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
62
+ const markets = await registry.sync();
63
+ const dexNames = (0, index_js_2.perpsDexNames)(markets);
64
+ const quoteAssetIds = new Set(markets.map((m) => m.quoteAsset.id));
65
+ const quoteAssetByCategory = new Map(markets.map((m) => [m.categoryId, m.quoteAsset]));
66
+ const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
67
+ const [feesResult, abstractionResult, agentsResult, spotState, stateResults, { prices },] = await Promise.all([
68
+ (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'userFees', user: params.address }, infoOpts),
69
+ (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'userAbstraction', user: params.address }, infoOpts),
70
+ (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'extraAgents', user: params.address }, infoOpts),
71
+ (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'spotClearinghouseState', user: params.address }, infoOpts),
72
+ Promise.all(dexNames.map((name) => (0, infoClient_js_1.infoRequest)(apiUrl, {
73
+ type: 'clearinghouseState',
74
+ user: params.address,
75
+ ...(name ? { dex: name } : {}),
76
+ }, infoOpts))),
77
+ (0, perps_sdk_1.getPrices)(client, { provider: constants_js_1.PROVIDER_KEY }, options),
78
+ ]);
79
+ const priceById = (0, index_js_2.spotPriceById)(markets, new Map(prices.map((p) => [p.marketId, (0, perps_sdk_1.stringToFloat)(p.markPrice)])));
80
+ const positions = stateResults.flatMap((state) => state.assetPositions
81
+ .filter((ap) => Number.parseFloat(ap.position.szi) !== 0)
82
+ .map((ap) => (0, mapPosition_js_1.mapPosition)(ap, registry.require(ap.position.coin))));
83
+ const stateByDex = new Map();
84
+ stateResults.forEach((state, i) => {
85
+ stateByDex.set(dexNames[i], state);
86
+ });
87
+ const totalUnrealizedPnl = positions.reduce((sum, p) => sum + Number.parseFloat(p.unrealizedPnl), 0);
88
+ const config = {
89
+ provider: constants_js_1.PROVIDER_KEY,
90
+ abstractionMode: abstractionResult,
91
+ agents: agentsResult,
92
+ };
93
+ const { balances, collateralBalances } = buildBalances(abstractionResult, spotState, stateByDex, quoteAssetIds, priceById, quoteAssetByCategory);
94
+ return {
95
+ provider: constants_js_1.PROVIDER_KEY,
96
+ address: params.address,
97
+ balances,
98
+ collateralBalances,
99
+ marginUsed: getMarginUsed(abstractionResult, positions, stateByDex),
100
+ unrealizedPnl: totalUnrealizedPnl.toString(),
101
+ feeTier: {
102
+ maker: feesResult.userAddRate ?? '0',
103
+ taker: feesResult.userCrossRate ?? '0',
104
+ },
105
+ config,
106
+ };
107
+ };
108
+ exports.getAccount = getAccount;
109
+ //# sourceMappingURL=getAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAccount.js","sourceRoot":"","sources":["../../../src/services/getAccount.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { ActivitiesResponse } from '@lifi/perps-types';
3
+ import { ActivityType } from '@lifi/perps-types';
4
+ import type { Address } from 'viem';
5
+ import type { HyperliquidContext } from '../context.js';
6
+ export interface GetActivityParams {
7
+ address: Address;
8
+ limit?: number;
9
+ cursor?: string;
10
+ startTime?: number;
11
+ endTime?: number;
12
+ type?: ActivityType[];
13
+ }
14
+ export declare const getActivity: ({ client, apiUrl }: HyperliquidContext, params: GetActivityParams, options?: SDKRequestOptions) => Promise<ActivitiesResponse>;
15
+ //# sourceMappingURL=getActivity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getActivity.d.ts","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAOnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAiBvD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,YAAY,EAAE,CAAA;CACtB;AA+DD,eAAO,MAAM,WAAW,GACtB,oBAAoB,kBAAkB,EACtC,QAAQ,iBAAiB,EACzB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,kBAAkB,CAuD5B,CAAA"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getActivity = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const perps_types_1 = require("@lifi/perps-types");
6
+ const constants_js_1 = require("../constants.js");
7
+ const index_js_1 = require("../utils/index.js");
8
+ const infoClient_js_1 = require("../utils/infoClient.js");
9
+ const fetchActivityData = async (apiUrl, typeFilter, timeParams, resolveMarket, options) => {
10
+ const needLedger = !typeFilter || typeFilter.some((t) => t !== perps_types_1.ActivityType.FUNDING);
11
+ const needFunding = !typeFilter || typeFilter.includes(perps_types_1.ActivityType.FUNDING);
12
+ const [ledgerUpdates, fundingUpdates] = await Promise.all([
13
+ needLedger
14
+ ? (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'userNonFundingLedgerUpdates', ...timeParams }, options)
15
+ : Promise.resolve([]),
16
+ needFunding
17
+ ? (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'userFunding', ...timeParams }, options)
18
+ : Promise.resolve([]),
19
+ ]);
20
+ const ledgerItems = ledgerUpdates
21
+ .map((entry) => (0, index_js_1.mapLedgerEntry)(entry, constants_js_1.PROVIDER_KEY, timeParams.user, resolveMarket))
22
+ .filter((item) => item !== null);
23
+ const fundingItems = fundingUpdates.map((entry) => (0, index_js_1.mapFundingActivity)(entry, constants_js_1.PROVIDER_KEY, resolveMarket));
24
+ const merged = [...ledgerItems, ...fundingItems].sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
25
+ if (!typeFilter) {
26
+ return merged;
27
+ }
28
+ const typeSet = new Set(typeFilter);
29
+ return merged.filter((item) => typeSet.has(item.type));
30
+ };
31
+ const getActivity = async ({ client, apiUrl }, params, options) => {
32
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
33
+ await registry.sync();
34
+ const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
35
+ const limit = Math.min(params.limit ?? constants_js_1.DEFAULT_HISTORY_LIMIT, constants_js_1.MAX_HISTORY_LIMIT);
36
+ const startTime = params.startTime ?? Date.now() - constants_js_1.NINETY_DAYS_MS;
37
+ const endTime = params.cursor === undefined
38
+ ? params.endTime
39
+ : Number.parseInt(params.cursor, 10);
40
+ const timeParams = {
41
+ user: params.address,
42
+ startTime,
43
+ ...(endTime === undefined ? {} : { endTime }),
44
+ };
45
+ const merged = await fetchActivityData(apiUrl, params.type, timeParams, (coin) => registry.require(coin), infoOpts);
46
+ const filtered = params.cursor === undefined
47
+ ? merged
48
+ : merged.filter((item) => new Date(item.timestamp).getTime() <
49
+ Number.parseInt(params.cursor, 10));
50
+ const hasMore = filtered.length > limit;
51
+ const items = filtered.slice(0, limit);
52
+ return {
53
+ provider: constants_js_1.PROVIDER_KEY,
54
+ items,
55
+ pagination: {
56
+ limit,
57
+ hasMore,
58
+ cursor: items.length > 0
59
+ ? String(new Date(items[items.length - 1].timestamp).getTime())
60
+ : undefined,
61
+ },
62
+ };
63
+ };
64
+ exports.getActivity = getActivity;
65
+ //# sourceMappingURL=getActivity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getActivity.js","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { FillsResponse } from '@lifi/perps-types';
3
+ import type { Address } from 'viem';
4
+ import type { HyperliquidContext } from '../context.js';
5
+ export interface GetFillsParams {
6
+ address: Address;
7
+ limit?: number;
8
+ cursor?: string;
9
+ startTime?: number;
10
+ endTime?: number;
11
+ }
12
+ export declare const getFills: ({ client, apiUrl }: HyperliquidContext, params: GetFillsParams, options?: SDKRequestOptions) => Promise<FillsResponse>;
13
+ //# sourceMappingURL=getFills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFills.d.ts","sourceRoot":"","sources":["../../../src/services/getFills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAMnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAUvD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAeD,eAAO,MAAM,QAAQ,GACnB,oBAAoB,kBAAkB,EACtC,QAAQ,cAAc,EACtB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,aAAa,CAiDvB,CAAA"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFills = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const constants_js_1 = require("../constants.js");
6
+ const index_js_1 = require("../utils/index.js");
7
+ const infoClient_js_1 = require("../utils/infoClient.js");
8
+ const getFills = async ({ client, apiUrl }, params, options) => {
9
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
10
+ await registry.sync();
11
+ const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
12
+ const limit = Math.min(params.limit ?? constants_js_1.DEFAULT_HISTORY_LIMIT, constants_js_1.MAX_HISTORY_LIMIT);
13
+ const useByTime = params.startTime !== undefined || params.endTime !== undefined;
14
+ const allFills = useByTime
15
+ ? await (0, infoClient_js_1.infoRequest)(apiUrl, {
16
+ type: 'userFillsByTime',
17
+ user: params.address,
18
+ startTime: params.startTime ?? 0,
19
+ ...(params.endTime !== undefined ? { endTime: params.endTime } : {}),
20
+ }, infoOpts)
21
+ : await (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'userFills', user: params.address }, infoOpts);
22
+ const filtered = params.cursor === undefined
23
+ ? allFills
24
+ : allFills.filter((f) => f.tid < Number.parseInt(params.cursor, 10));
25
+ const hasMore = filtered.length > limit;
26
+ const items = filtered
27
+ .slice(0, limit)
28
+ .map((f) => (0, index_js_1.mapFill)(f, registry.require(f.coin)));
29
+ return {
30
+ provider: constants_js_1.PROVIDER_KEY,
31
+ items,
32
+ pagination: {
33
+ limit,
34
+ hasMore,
35
+ cursor: items.length > 0 ? items[items.length - 1].id : undefined,
36
+ },
37
+ };
38
+ };
39
+ exports.getFills = getFills;
40
+ //# sourceMappingURL=getFills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFills.js","sourceRoot":"","sources":["../../../src/services/getFills.ts"],"names":[],"mappings":";;;AAAA,+CAA2E;AAG3E,kDAIwB;AAGxB,gDAA2C;AAC3C,0DAAmE;AA+B5D,MAAM,QAAQ,GAAG,KAAK,EAC3B,EAAE,MAAM,EAAE,MAAM,EAAsB,EACtC,MAAsB,EACtB,OAA2B,EACH,EAAE;IAC1B,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,MAAM,EAAE,2BAAY,CAAC,CAAA;IACxD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACrB,MAAM,QAAQ,GAAG,IAAA,6BAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAE/C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,MAAM,CAAC,KAAK,IAAI,oCAAqB,EACrC,gCAAiB,CAClB,CAAA;IAED,MAAM,SAAS,GACb,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,CAAA;IAEhE,MAAM,QAAQ,GAAG,SAAS;QACxB,CAAC,CAAC,MAAM,IAAA,2BAAW,EACf,MAAM,EACN;YACE,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,MAAM,CAAC,OAAO;YACpB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,CAAC;YAChC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrE,EACD,QAAQ,CACT;QACH,CAAC,CAAC,MAAM,IAAA,2BAAW,EACf,MAAM,EACN,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,EAC3C,QAAQ,CACT,CAAA;IAEL,MAAM,QAAQ,GACZ,MAAM,CAAC,MAAM,KAAK,SAAS;QACzB,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAO,EAAE,EAAE,CAAC,CAAC,CAAA;IAEzE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAA;IACvC,MAAM,KAAK,GAAG,QAAQ;SACnB,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;SACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,kBAAO,EAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAEnD,OAAO;QACL,QAAQ,EAAE,2BAAY;QACtB,KAAK;QACL,UAAU,EAAE;YACV,KAAK;YACL,OAAO;YACP,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;SAClE;KACF,CAAA;AACH,CAAC,CAAA;AArDY,QAAA,QAAQ,YAqDpB"}
@@ -0,0 +1,6 @@
1
+ import { type ProviderGetOrderParams, type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { Order } from '@lifi/perps-types';
3
+ import type { HyperliquidContext } from '../context.js';
4
+ export type GetOrderParams = ProviderGetOrderParams;
5
+ export declare const getOrder: ({ client, apiUrl }: HyperliquidContext, params: GetOrderParams, options?: SDKRequestOptions) => Promise<Order>;
6
+ //# sourceMappingURL=getOrder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrder.d.ts","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAG9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAUvD,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAA;AAQnD,eAAO,MAAM,QAAQ,GACnB,oBAAoB,kBAAkB,EACtC,QAAQ,cAAc,EACtB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,KAAK,CA6Bf,CAAA"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrder = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const perps_types_1 = require("@lifi/perps-types");
6
+ const constants_js_1 = require("../constants.js");
7
+ const index_js_1 = require("../utils/index.js");
8
+ const infoClient_js_1 = require("../utils/infoClient.js");
9
+ const getOrder = async ({ client, apiUrl }, params, options) => {
10
+ const oid = Number.parseInt(params.id, 10);
11
+ if (Number.isNaN(oid)) {
12
+ const err = new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Invalid order ID: ${params.id}. Must be a numeric oid.`);
13
+ err.tool = constants_js_1.PROVIDER_KEY;
14
+ throw err;
15
+ }
16
+ const status = await (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'orderStatus', user: params.address, oid }, (0, infoClient_js_1.hlInfoOptions)(client, options));
17
+ if (status.status !== 'order') {
18
+ const err = new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.OrderNotFound, `Order not found: ${params.id}`);
19
+ err.tool = constants_js_1.PROVIDER_KEY;
20
+ throw err;
21
+ }
22
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
23
+ await registry.sync();
24
+ return (0, index_js_1.mapOrder)(status.order, registry.require(status.order.order.coin));
25
+ };
26
+ exports.getOrder = getOrder;
27
+ //# sourceMappingURL=getOrder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrder.js","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAExB,mDAAkD;AAClD,kDAA8C;AAG9C,gDAA4C;AAC5C,0DAAmE;AAe5D,MAAM,QAAQ,GAAG,KAAK,EAC3B,EAAE,MAAM,EAAE,MAAM,EAAsB,EACtC,MAAsB,EACtB,OAA2B,EACX,EAAE;IAClB,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,IAAI,sBAAU,CACxB,4BAAc,CAAC,eAAe,EAC9B,qBAAqB,MAAM,CAAC,EAAE,0BAA0B,CACzD,CAAA;QACD,GAAG,CAAC,IAAI,GAAG,2BAAY,CAAA;QACvB,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAW,EAC9B,MAAM,EACN,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,EAClD,IAAA,6BAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAC/B,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,sBAAU,CACxB,4BAAc,CAAC,aAAa,EAC5B,oBAAoB,MAAM,CAAC,EAAE,EAAE,CAChC,CAAA;QACD,GAAG,CAAC,IAAI,GAAG,2BAAY,CAAA;QACvB,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,MAAM,EAAE,2BAAY,CAAC,CAAA;IACxD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACrB,OAAO,IAAA,mBAAQ,EAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAjCY,QAAA,QAAQ,YAiCpB"}
@@ -0,0 +1,11 @@
1
+ import { type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { OrdersResponse } from '@lifi/perps-types';
3
+ import type { Address } from 'viem';
4
+ import type { HyperliquidContext } from '../context.js';
5
+ export interface GetOrdersParams {
6
+ address: Address;
7
+ marketId?: string;
8
+ limit?: number;
9
+ }
10
+ export declare const getOrders: ({ client, apiUrl }: HyperliquidContext, params: GetOrdersParams, options?: SDKRequestOptions) => Promise<OrdersResponse>;
11
+ //# sourceMappingURL=getOrders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrders.d.ts","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EAAa,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAkBvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAYD,eAAO,MAAM,SAAS,GACpB,oBAAoB,kBAAkB,EACtC,QAAQ,eAAe,EACvB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,cAAc,CAyDxB,CAAA"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrders = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const constants_js_1 = require("../constants.js");
6
+ const index_js_1 = require("../utils/index.js");
7
+ const infoClient_js_1 = require("../utils/infoClient.js");
8
+ const getOrders = async ({ client, apiUrl }, params, options) => {
9
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
10
+ const markets = await registry.sync();
11
+ const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
12
+ const ordersResults = await Promise.all((0, index_js_1.perpsDexNames)(markets).map((name) => (0, infoClient_js_1.infoRequest)(apiUrl, {
13
+ type: 'frontendOpenOrders',
14
+ user: params.address,
15
+ ...(name ? { dex: name } : {}),
16
+ }, infoOpts)));
17
+ const raw = ordersResults.flat();
18
+ const childOids = new Set();
19
+ for (const o of raw) {
20
+ for (const child of o.children) {
21
+ childOids.add(child.oid);
22
+ }
23
+ }
24
+ const nonChild = raw.filter((o) => !childOids.has(o.oid));
25
+ let openOrders = nonChild
26
+ .filter((o) => !(0, index_js_1.isTriggerOrder)(o))
27
+ .map((o) => (0, index_js_1.mapOpenOrder)(o, registry.require(o.coin)));
28
+ let triggerOrders = [
29
+ ...nonChild
30
+ .filter((o) => (0, index_js_1.isTriggerOrder)(o))
31
+ .map((o) => (0, index_js_1.mapTriggerOrder)(o, registry.require(o.coin))),
32
+ ...raw
33
+ .filter((o) => childOids.has(o.oid))
34
+ .map((o) => (0, index_js_1.mapTriggerOrder)(o, registry.require(o.coin))),
35
+ ];
36
+ if (params.marketId !== undefined) {
37
+ openOrders = openOrders.filter((o) => o.market.id === params.marketId);
38
+ triggerOrders = triggerOrders.filter((o) => o.market.id === params.marketId);
39
+ }
40
+ return {
41
+ provider: constants_js_1.PROVIDER_KEY,
42
+ openOrders,
43
+ triggerOrders,
44
+ pagination: {
45
+ limit: params.limit ?? openOrders.length + triggerOrders.length,
46
+ hasMore: false,
47
+ },
48
+ };
49
+ };
50
+ exports.getOrders = getOrders;
51
+ //# sourceMappingURL=getOrders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrders.js","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { type SDKRequestOptions } from '@lifi/perps-sdk';
2
+ import type { PositionsResponse } from '@lifi/perps-types';
3
+ import type { Address } from 'viem';
4
+ import type { HyperliquidContext } from '../context.js';
5
+ export interface GetPositionsParams {
6
+ address: Address;
7
+ marketId?: string;
8
+ limit?: number;
9
+ }
10
+ export declare const getPositions: ({ client, apiUrl }: HyperliquidContext, params: GetPositionsParams, options?: SDKRequestOptions) => Promise<PositionsResponse>;
11
+ //# sourceMappingURL=getPositions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPositions.d.ts","sourceRoot":"","sources":["../../../src/services/getPositions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAcvD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAA;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAUD,eAAO,MAAM,YAAY,GACvB,oBAAoB,kBAAkB,EACtC,QAAQ,kBAAkB,EAC1B,UAAU,iBAAiB,KAC1B,OAAO,CAAC,iBAAiB,CAqC3B,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPositions = void 0;
4
+ const perps_sdk_1 = require("@lifi/perps-sdk");
5
+ const constants_js_1 = require("../constants.js");
6
+ const index_js_1 = require("../utils/index.js");
7
+ const infoClient_js_1 = require("../utils/infoClient.js");
8
+ const getPositions = async ({ client, apiUrl }, params, options) => {
9
+ const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
10
+ const markets = await registry.sync();
11
+ const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
12
+ const stateResults = await Promise.all((0, index_js_1.perpsDexNames)(markets).map((name) => (0, infoClient_js_1.infoRequest)(apiUrl, {
13
+ type: 'clearinghouseState',
14
+ user: params.address,
15
+ ...(name ? { dex: name } : {}),
16
+ }, infoOpts)));
17
+ let positions = stateResults.flatMap((state) => state.assetPositions
18
+ .filter(index_js_1.isOpenAssetPosition)
19
+ .map((ap) => (0, index_js_1.mapPosition)(ap, registry.require(ap.position.coin))));
20
+ if (params.marketId !== undefined) {
21
+ positions = positions.filter((p) => p.market.id === params.marketId);
22
+ }
23
+ return {
24
+ provider: constants_js_1.PROVIDER_KEY,
25
+ positions,
26
+ pagination: {
27
+ limit: params.limit ?? positions.length,
28
+ hasMore: false,
29
+ },
30
+ };
31
+ };
32
+ exports.getPositions = getPositions;
33
+ //# sourceMappingURL=getPositions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPositions.js","sourceRoot":"","sources":["../../../src/services/getPositions.ts"],"names":[],"mappings":";;;AAAA,+CAA2E;AAG3E,kDAA8C;AAG9C,gDAI0B;AAC1B,0DAAmE;AAuB5D,MAAM,YAAY,GAAG,KAAK,EAC/B,EAAE,MAAM,EAAE,MAAM,EAAsB,EACtC,MAA0B,EAC1B,OAA2B,EACC,EAAE;IAC9B,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,MAAM,EAAE,2BAAY,CAAC,CAAA;IACxD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAG,IAAA,6BAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAE/C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,IAAA,wBAAa,EAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClC,IAAA,2BAAW,EACT,MAAM,EACN;QACE,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,MAAM,CAAC,OAAO;QACpB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/B,EACD,QAAQ,CACT,CACF,CACF,CAAA;IAED,IAAI,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7C,KAAK,CAAC,cAAc;SACjB,MAAM,CAAC,8BAAmB,CAAC;SAC3B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,sBAAW,EAAC,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CACpE,CAAA;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAA;IACtE,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,2BAAY;QACtB,SAAS;QACT,UAAU,EAAE;YACV,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM;YACvC,OAAO,EAAE,KAAK;SACf;KACF,CAAA;AACH,CAAC,CAAA;AAzCY,QAAA,YAAY,gBAyCxB"}
@@ -0,0 +1,19 @@
1
+ import { type StorageAdapter } from '@lifi/perps-sdk';
2
+ import { type Address, type Hex } from 'viem';
3
+ export interface HyperliquidAgent {
4
+ address: Address;
5
+ privateKey: Hex;
6
+ }
7
+ export declare class HyperliquidAgentStore {
8
+ private storage;
9
+ private cache;
10
+ constructor(storage?: StorageAdapter);
11
+ private storageKey;
12
+ get(address: Address): Promise<HyperliquidAgent>;
13
+ getOrCreate(address: Address): Promise<HyperliquidAgent>;
14
+ has(address: Address): Promise<boolean>;
15
+ remove(address: Address): Promise<void>;
16
+ import(address: Address, privateKey: Hex): Promise<HyperliquidAgent>;
17
+ clearCache(): void;
18
+ }
19
+ //# sourceMappingURL=HyperliquidAgentStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperliquidAgentStore.d.ts","sourceRoot":"","sources":["../../../src/signers/HyperliquidAgentStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAoB,MAAM,MAAM,CAAA;AAW/D,MAAM,WAAW,gBAAgB;IAE/B,OAAO,EAAE,OAAO,CAAA;IAEhB,UAAU,EAAE,GAAG,CAAA;CAChB;AA+BD,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,KAAK,CAA2C;gBAE5C,OAAO,CAAC,EAAE,cAAc;IAIpC,OAAO,CAAC,UAAU;IAYZ,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA+BhD,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2BxD,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAavC,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgB1E,UAAU,IAAI,IAAI;CAGnB"}