@lifi/perps-sdk 0.1.1-alpha.9 → 1.0.0

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 (959) hide show
  1. package/README.md +157 -20
  2. package/dist/cjs/client/PerpsClient.d.ts +57 -24
  3. package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
  4. package/dist/cjs/client/PerpsClient.js +218 -208
  5. package/dist/cjs/client/PerpsClient.js.map +1 -1
  6. package/dist/cjs/client/bindProvider.d.ts +3 -0
  7. package/dist/cjs/client/bindProvider.d.ts.map +1 -0
  8. package/dist/cjs/client/bindProvider.js +9 -0
  9. package/dist/cjs/client/bindProvider.js.map +1 -0
  10. package/dist/cjs/client/createPerpsClient.d.ts +7 -25
  11. package/dist/cjs/client/createPerpsClient.d.ts.map +1 -1
  12. package/dist/cjs/client/createPerpsClient.js +28 -8
  13. package/dist/cjs/client/createPerpsClient.js.map +1 -1
  14. package/dist/cjs/client/requireProvider.d.ts +3 -0
  15. package/dist/cjs/client/requireProvider.d.ts.map +1 -0
  16. package/dist/cjs/client/requireProvider.js +16 -0
  17. package/dist/cjs/client/requireProvider.js.map +1 -0
  18. package/dist/cjs/errors/PerpsError.d.ts +2 -3
  19. package/dist/cjs/errors/PerpsError.d.ts.map +1 -1
  20. package/dist/cjs/errors/PerpsError.js +3 -15
  21. package/dist/cjs/errors/PerpsError.js.map +1 -1
  22. package/dist/cjs/errors/constants.d.ts +2 -12
  23. package/dist/cjs/errors/constants.d.ts.map +1 -1
  24. package/dist/cjs/errors/constants.js +3 -14
  25. package/dist/cjs/errors/constants.js.map +1 -1
  26. package/dist/cjs/index.d.ts +58 -34
  27. package/dist/cjs/index.d.ts.map +1 -1
  28. package/dist/cjs/index.js +122 -45
  29. package/dist/cjs/index.js.map +1 -1
  30. package/dist/cjs/registry/assetRegistry.d.ts +11 -0
  31. package/dist/cjs/registry/assetRegistry.d.ts.map +1 -0
  32. package/dist/cjs/registry/assetRegistry.js +39 -0
  33. package/dist/cjs/registry/assetRegistry.js.map +1 -0
  34. package/dist/cjs/registry/marketRegistry.d.ts +13 -0
  35. package/dist/cjs/registry/marketRegistry.d.ts.map +1 -0
  36. package/dist/cjs/registry/marketRegistry.js +58 -0
  37. package/dist/cjs/registry/marketRegistry.js.map +1 -0
  38. package/dist/cjs/registry/referenceDataRegistry.d.ts +20 -0
  39. package/dist/cjs/registry/referenceDataRegistry.d.ts.map +1 -0
  40. package/dist/cjs/registry/referenceDataRegistry.js +59 -0
  41. package/dist/cjs/registry/referenceDataRegistry.js.map +1 -0
  42. package/dist/cjs/services/createAction.d.ts +13 -0
  43. package/dist/cjs/services/createAction.d.ts.map +1 -0
  44. package/dist/cjs/services/createAction.js +17 -0
  45. package/dist/cjs/services/createAction.js.map +1 -0
  46. package/dist/cjs/services/executeAction.d.ts +13 -0
  47. package/dist/cjs/services/executeAction.d.ts.map +1 -0
  48. package/dist/cjs/services/{submitAuthorization.js → executeAction.js} +8 -6
  49. package/dist/cjs/services/executeAction.js.map +1 -0
  50. package/dist/cjs/services/getAccount.d.ts +5 -3
  51. package/dist/cjs/services/getAccount.d.ts.map +1 -1
  52. package/dist/cjs/services/getAccount.js +2 -6
  53. package/dist/cjs/services/getAccount.js.map +1 -1
  54. package/dist/cjs/services/getActivity.d.ts +15 -0
  55. package/dist/cjs/services/getActivity.d.ts.map +1 -0
  56. package/dist/cjs/services/getActivity.js +15 -0
  57. package/dist/cjs/services/getActivity.js.map +1 -0
  58. package/dist/cjs/services/getAssets.d.ts +8 -0
  59. package/dist/cjs/services/getAssets.d.ts.map +1 -0
  60. package/dist/cjs/services/getAssets.js +11 -0
  61. package/dist/cjs/services/getAssets.js.map +1 -0
  62. package/dist/cjs/services/getFills.d.ts +14 -0
  63. package/dist/cjs/services/getFills.d.ts.map +1 -0
  64. package/dist/cjs/services/getFills.js +14 -0
  65. package/dist/cjs/services/getFills.js.map +1 -0
  66. package/dist/cjs/services/getMarket.d.ts +4 -3
  67. package/dist/cjs/services/getMarket.d.ts.map +1 -1
  68. package/dist/cjs/services/getMarket.js +6 -4
  69. package/dist/cjs/services/getMarket.js.map +1 -1
  70. package/dist/cjs/services/getMarkets.d.ts +4 -2
  71. package/dist/cjs/services/getMarkets.d.ts.map +1 -1
  72. package/dist/cjs/services/getMarkets.js +5 -2
  73. package/dist/cjs/services/getMarkets.js.map +1 -1
  74. package/dist/cjs/services/getMeta.d.ts +5 -0
  75. package/dist/cjs/services/getMeta.d.ts.map +1 -0
  76. package/dist/cjs/services/getMeta.js +8 -0
  77. package/dist/cjs/services/getMeta.js.map +1 -0
  78. package/dist/cjs/services/getOhlcv.d.ts +4 -3
  79. package/dist/cjs/services/getOhlcv.d.ts.map +1 -1
  80. package/dist/cjs/services/getOhlcv.js +4 -3
  81. package/dist/cjs/services/getOhlcv.js.map +1 -1
  82. package/dist/cjs/services/getOrder.d.ts +5 -3
  83. package/dist/cjs/services/getOrder.d.ts.map +1 -1
  84. package/dist/cjs/services/getOrder.js +2 -6
  85. package/dist/cjs/services/getOrder.js.map +1 -1
  86. package/dist/cjs/services/getOrderbook.d.ts +4 -3
  87. package/dist/cjs/services/getOrderbook.d.ts.map +1 -1
  88. package/dist/cjs/services/getOrderbook.js +4 -3
  89. package/dist/cjs/services/getOrderbook.js.map +1 -1
  90. package/dist/cjs/services/getOrders.d.ts +13 -0
  91. package/dist/cjs/services/getOrders.d.ts.map +1 -0
  92. package/dist/cjs/services/getOrders.js +13 -0
  93. package/dist/cjs/services/getOrders.js.map +1 -0
  94. package/dist/cjs/services/getPositions.d.ts +13 -0
  95. package/dist/cjs/services/getPositions.d.ts.map +1 -0
  96. package/dist/cjs/services/getPositions.js +13 -0
  97. package/dist/cjs/services/getPositions.js.map +1 -0
  98. package/dist/cjs/services/getPrices.d.ts +4 -3
  99. package/dist/cjs/services/getPrices.d.ts.map +1 -1
  100. package/dist/cjs/services/getPrices.js +3 -3
  101. package/dist/cjs/services/getPrices.js.map +1 -1
  102. package/dist/cjs/services/getProviders.d.ts +5 -0
  103. package/dist/cjs/services/getProviders.d.ts.map +1 -0
  104. package/dist/cjs/services/getProviders.js +8 -0
  105. package/dist/cjs/services/getProviders.js.map +1 -0
  106. package/dist/cjs/services/getQuote.d.ts +12 -0
  107. package/dist/cjs/services/getQuote.d.ts.map +1 -0
  108. package/dist/cjs/services/getQuote.js +13 -0
  109. package/dist/cjs/services/getQuote.js.map +1 -0
  110. package/dist/cjs/services/getTermsAcceptance.d.ts +6 -0
  111. package/dist/cjs/services/getTermsAcceptance.d.ts.map +1 -0
  112. package/dist/cjs/services/getTermsAcceptance.js +9 -0
  113. package/dist/cjs/services/getTermsAcceptance.js.map +1 -0
  114. package/dist/cjs/services/resolveQuote.d.ts +7 -0
  115. package/dist/cjs/services/resolveQuote.d.ts.map +1 -0
  116. package/dist/cjs/services/resolveQuote.js +50 -0
  117. package/dist/cjs/services/resolveQuote.js.map +1 -0
  118. package/dist/cjs/services/resolveSubscribeQuote.d.ts +6 -0
  119. package/dist/cjs/services/resolveSubscribeQuote.d.ts.map +1 -0
  120. package/dist/cjs/services/resolveSubscribeQuote.js +65 -0
  121. package/dist/cjs/services/resolveSubscribeQuote.js.map +1 -0
  122. package/dist/cjs/storage/parseStoredRecord.d.ts +4 -0
  123. package/dist/cjs/storage/parseStoredRecord.d.ts.map +1 -0
  124. package/dist/cjs/storage/parseStoredRecord.js +26 -0
  125. package/dist/cjs/storage/parseStoredRecord.js.map +1 -0
  126. package/dist/cjs/storage/storage.d.ts.map +1 -0
  127. package/dist/cjs/storage/storage.js.map +1 -0
  128. package/dist/cjs/{agent → storage}/types.d.ts +0 -5
  129. package/dist/cjs/storage/types.d.ts.map +1 -0
  130. package/dist/cjs/{agent → storage}/types.js.map +1 -1
  131. package/dist/cjs/transport/fetchWithRetry.d.ts +8 -0
  132. package/dist/cjs/transport/fetchWithRetry.d.ts.map +1 -0
  133. package/dist/cjs/transport/fetchWithRetry.js +81 -0
  134. package/dist/cjs/transport/fetchWithRetry.js.map +1 -0
  135. package/dist/cjs/{utils → transport}/request.d.ts +3 -2
  136. package/dist/cjs/transport/request.d.ts.map +1 -0
  137. package/dist/cjs/transport/request.js +75 -0
  138. package/dist/cjs/transport/request.js.map +1 -0
  139. package/dist/cjs/transport/retryPolicy.d.ts +37 -0
  140. package/dist/cjs/transport/retryPolicy.d.ts.map +1 -0
  141. package/dist/cjs/transport/retryPolicy.js +79 -0
  142. package/dist/cjs/transport/retryPolicy.js.map +1 -0
  143. package/dist/cjs/types/api.d.ts +85 -0
  144. package/dist/cjs/types/api.d.ts.map +1 -0
  145. package/dist/cjs/{dex/types.js → types/api.js} +1 -1
  146. package/dist/cjs/types/api.js.map +1 -0
  147. package/dist/cjs/types/config.d.ts +26 -0
  148. package/dist/cjs/types/config.d.ts.map +1 -0
  149. package/dist/cjs/{realtime/hyperliquid/types.js → types/config.js} +1 -1
  150. package/dist/cjs/types/config.js.map +1 -0
  151. package/dist/cjs/types/provider.d.ts +84 -0
  152. package/dist/cjs/types/provider.d.ts.map +1 -0
  153. package/dist/cjs/types/provider.js +3 -0
  154. package/dist/cjs/types/provider.js.map +1 -0
  155. package/dist/cjs/utils/accountSummary.d.ts +3 -0
  156. package/dist/cjs/utils/accountSummary.d.ts.map +1 -0
  157. package/dist/cjs/utils/accountSummary.js +25 -0
  158. package/dist/cjs/utils/accountSummary.js.map +1 -0
  159. package/dist/cjs/utils/assertNever.d.ts +2 -0
  160. package/dist/cjs/utils/assertNever.d.ts.map +1 -0
  161. package/dist/cjs/utils/assertNever.js +7 -0
  162. package/dist/cjs/utils/assertNever.js.map +1 -0
  163. package/dist/cjs/utils/calculations.d.ts +52 -0
  164. package/dist/cjs/utils/calculations.d.ts.map +1 -0
  165. package/dist/cjs/utils/calculations.js +148 -0
  166. package/dist/cjs/utils/calculations.js.map +1 -0
  167. package/dist/cjs/utils/depositChain.d.ts +6 -0
  168. package/dist/cjs/utils/depositChain.d.ts.map +1 -0
  169. package/dist/cjs/utils/depositChain.js +13 -0
  170. package/dist/cjs/utils/depositChain.js.map +1 -0
  171. package/dist/cjs/utils/explorer.d.ts +9 -0
  172. package/dist/cjs/utils/explorer.d.ts.map +1 -0
  173. package/dist/cjs/utils/explorer.js +23 -0
  174. package/dist/cjs/utils/explorer.js.map +1 -0
  175. package/dist/cjs/utils/fillClassification.d.ts +3 -0
  176. package/dist/cjs/utils/fillClassification.d.ts.map +1 -0
  177. package/dist/cjs/utils/fillClassification.js +37 -0
  178. package/dist/cjs/utils/fillClassification.js.map +1 -0
  179. package/dist/cjs/utils/format.d.ts +13 -0
  180. package/dist/cjs/utils/format.d.ts.map +1 -0
  181. package/dist/cjs/utils/format.js +117 -0
  182. package/dist/cjs/utils/format.js.map +1 -0
  183. package/dist/cjs/utils/orderClassification.d.ts +10 -0
  184. package/dist/cjs/utils/orderClassification.d.ts.map +1 -0
  185. package/dist/cjs/utils/orderClassification.js +49 -0
  186. package/dist/cjs/utils/orderClassification.js.map +1 -0
  187. package/dist/cjs/utils/orderMath.d.ts +6 -0
  188. package/dist/cjs/utils/orderMath.d.ts.map +1 -0
  189. package/dist/cjs/utils/orderMath.js +71 -0
  190. package/dist/cjs/utils/orderMath.js.map +1 -0
  191. package/dist/cjs/utils/parse.d.ts +2 -0
  192. package/dist/cjs/utils/parse.d.ts.map +1 -0
  193. package/dist/cjs/utils/parse.js +14 -0
  194. package/dist/cjs/utils/parse.js.map +1 -0
  195. package/dist/cjs/utils/positionMath.d.ts +32 -0
  196. package/dist/cjs/utils/positionMath.d.ts.map +1 -0
  197. package/dist/cjs/utils/positionMath.js +52 -0
  198. package/dist/cjs/utils/positionMath.js.map +1 -0
  199. package/dist/cjs/utils/signTypedData.d.ts +3 -1
  200. package/dist/cjs/utils/signTypedData.d.ts.map +1 -1
  201. package/dist/cjs/utils/signTypedData.js +11 -3
  202. package/dist/cjs/utils/signTypedData.js.map +1 -1
  203. package/dist/cjs/utils/sleep.d.ts.map +1 -1
  204. package/dist/cjs/utils/sleep.js.map +1 -1
  205. package/dist/cjs/utils/units.d.ts +3 -0
  206. package/dist/cjs/utils/units.d.ts.map +1 -0
  207. package/dist/cjs/utils/units.js +18 -0
  208. package/dist/cjs/utils/units.js.map +1 -0
  209. package/dist/cjs/utils/validation.d.ts +2 -0
  210. package/dist/cjs/utils/validation.d.ts.map +1 -0
  211. package/dist/cjs/utils/validation.js +16 -0
  212. package/dist/cjs/utils/validation.js.map +1 -0
  213. package/dist/cjs/version.d.ts +1 -1
  214. package/dist/cjs/version.d.ts.map +1 -1
  215. package/dist/cjs/version.js +1 -1
  216. package/dist/cjs/version.js.map +1 -1
  217. package/dist/cjs/websocket/PerpsWsClient.d.ts +27 -0
  218. package/dist/cjs/websocket/PerpsWsClient.d.ts.map +1 -0
  219. package/dist/cjs/websocket/PerpsWsClient.js +84 -0
  220. package/dist/cjs/websocket/PerpsWsClient.js.map +1 -0
  221. package/dist/{esm/realtime → cjs/websocket}/ReconnectingWebSocket.d.ts +23 -7
  222. package/dist/cjs/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  223. package/dist/cjs/websocket/ReconnectingWebSocket.js +213 -0
  224. package/dist/cjs/websocket/ReconnectingWebSocket.js.map +1 -0
  225. package/dist/cjs/websocket/WsProviderBase.d.ts +31 -0
  226. package/dist/cjs/websocket/WsProviderBase.d.ts.map +1 -0
  227. package/dist/cjs/websocket/WsProviderBase.js +197 -0
  228. package/dist/cjs/websocket/WsProviderBase.js.map +1 -0
  229. package/dist/cjs/websocket/cachePromise.d.ts +2 -0
  230. package/dist/cjs/websocket/cachePromise.d.ts.map +1 -0
  231. package/dist/cjs/websocket/cachePromise.js +18 -0
  232. package/dist/cjs/websocket/cachePromise.js.map +1 -0
  233. package/dist/cjs/websocket/types.d.ts +15 -0
  234. package/dist/cjs/websocket/types.d.ts.map +1 -0
  235. package/dist/cjs/{dex → websocket}/types.js.map +1 -1
  236. package/dist/cjs/websocket/wsLog.d.ts +10 -0
  237. package/dist/cjs/websocket/wsLog.d.ts.map +1 -0
  238. package/dist/cjs/websocket/wsLog.js +31 -0
  239. package/dist/cjs/websocket/wsLog.js.map +1 -0
  240. package/dist/esm/client/PerpsClient.d.ts +223 -136
  241. package/dist/esm/client/PerpsClient.d.ts.map +1 -1
  242. package/dist/esm/client/PerpsClient.js +399 -339
  243. package/dist/esm/client/PerpsClient.js.map +1 -1
  244. package/dist/esm/client/bindProvider.d.ts +13 -0
  245. package/dist/esm/client/bindProvider.d.ts.map +1 -0
  246. package/dist/esm/client/bindProvider.js +16 -0
  247. package/dist/esm/client/bindProvider.js.map +1 -0
  248. package/dist/esm/client/createPerpsClient.d.ts +24 -64
  249. package/dist/esm/client/createPerpsClient.d.ts.map +1 -1
  250. package/dist/esm/client/createPerpsClient.js +45 -17
  251. package/dist/esm/client/createPerpsClient.js.map +1 -1
  252. package/dist/esm/client/requireProvider.d.ts +12 -0
  253. package/dist/esm/client/requireProvider.d.ts.map +1 -0
  254. package/dist/esm/client/requireProvider.js +22 -0
  255. package/dist/esm/client/requireProvider.js.map +1 -0
  256. package/dist/esm/errors/PerpsError.d.ts +10 -3
  257. package/dist/esm/errors/PerpsError.d.ts.map +1 -1
  258. package/dist/esm/errors/PerpsError.js +11 -15
  259. package/dist/esm/errors/PerpsError.js.map +1 -1
  260. package/dist/esm/errors/constants.d.ts +8 -12
  261. package/dist/esm/errors/constants.d.ts.map +1 -1
  262. package/dist/esm/errors/constants.js +8 -13
  263. package/dist/esm/errors/constants.js.map +1 -1
  264. package/dist/esm/index.d.ts +66 -34
  265. package/dist/esm/index.d.ts.map +1 -1
  266. package/dist/esm/index.js +49 -29
  267. package/dist/esm/index.js.map +1 -1
  268. package/dist/esm/registry/assetRegistry.d.ts +25 -0
  269. package/dist/esm/registry/assetRegistry.d.ts.map +1 -0
  270. package/dist/esm/registry/assetRegistry.js +48 -0
  271. package/dist/esm/registry/assetRegistry.js.map +1 -0
  272. package/dist/esm/registry/marketRegistry.d.ts +42 -0
  273. package/dist/esm/registry/marketRegistry.d.ts.map +1 -0
  274. package/dist/esm/registry/marketRegistry.js +81 -0
  275. package/dist/esm/registry/marketRegistry.js.map +1 -0
  276. package/dist/esm/registry/referenceDataRegistry.d.ts +44 -0
  277. package/dist/esm/registry/referenceDataRegistry.d.ts.map +1 -0
  278. package/dist/esm/registry/referenceDataRegistry.js +79 -0
  279. package/dist/esm/registry/referenceDataRegistry.js.map +1 -0
  280. package/dist/esm/services/createAction.d.ts +26 -0
  281. package/dist/esm/services/createAction.d.ts.map +1 -0
  282. package/dist/esm/services/createAction.js +22 -0
  283. package/dist/esm/services/createAction.js.map +1 -0
  284. package/dist/esm/services/executeAction.d.ts +26 -0
  285. package/dist/esm/services/executeAction.d.ts.map +1 -0
  286. package/dist/esm/services/executeAction.js +26 -0
  287. package/dist/esm/services/executeAction.js.map +1 -0
  288. package/dist/esm/services/getAccount.d.ts +21 -18
  289. package/dist/esm/services/getAccount.d.ts.map +1 -1
  290. package/dist/esm/services/getAccount.js +13 -19
  291. package/dist/esm/services/getAccount.js.map +1 -1
  292. package/dist/esm/services/getActivity.d.ts +39 -0
  293. package/dist/esm/services/getActivity.d.ts.map +1 -0
  294. package/dist/esm/services/getActivity.js +29 -0
  295. package/dist/esm/services/getActivity.js.map +1 -0
  296. package/dist/esm/services/getAssets.d.ts +27 -0
  297. package/dist/esm/services/getAssets.d.ts.map +1 -0
  298. package/dist/esm/services/getAssets.js +22 -0
  299. package/dist/esm/services/getAssets.js.map +1 -0
  300. package/dist/esm/services/getFills.d.ts +38 -0
  301. package/dist/esm/services/getFills.d.ts.map +1 -0
  302. package/dist/esm/services/getFills.js +28 -0
  303. package/dist/esm/services/getFills.js.map +1 -0
  304. package/dist/esm/services/getMarket.d.ts +22 -15
  305. package/dist/esm/services/getMarket.d.ts.map +1 -1
  306. package/dist/esm/services/getMarket.js +14 -14
  307. package/dist/esm/services/getMarket.js.map +1 -1
  308. package/dist/esm/services/getMarkets.d.ts +16 -13
  309. package/dist/esm/services/getMarkets.d.ts.map +1 -1
  310. package/dist/esm/services/getMarkets.js +11 -12
  311. package/dist/esm/services/getMarkets.js.map +1 -1
  312. package/dist/esm/services/getMeta.d.ts +19 -0
  313. package/dist/esm/services/getMeta.d.ts.map +1 -0
  314. package/dist/esm/services/getMeta.js +19 -0
  315. package/dist/esm/services/getMeta.js.map +1 -0
  316. package/dist/esm/services/getOhlcv.d.ts +17 -21
  317. package/dist/esm/services/getOhlcv.d.ts.map +1 -1
  318. package/dist/esm/services/getOhlcv.js +9 -15
  319. package/dist/esm/services/getOhlcv.js.map +1 -1
  320. package/dist/esm/services/getOrder.d.ts +18 -18
  321. package/dist/esm/services/getOrder.d.ts.map +1 -1
  322. package/dist/esm/services/getOrder.js +10 -18
  323. package/dist/esm/services/getOrder.js.map +1 -1
  324. package/dist/esm/services/getOrderbook.d.ts +14 -24
  325. package/dist/esm/services/getOrderbook.d.ts.map +1 -1
  326. package/dist/esm/services/getOrderbook.js +8 -22
  327. package/dist/esm/services/getOrderbook.js.map +1 -1
  328. package/dist/esm/services/getOrders.d.ts +35 -0
  329. package/dist/esm/services/getOrders.d.ts.map +1 -0
  330. package/dist/esm/services/getOrders.js +26 -0
  331. package/dist/esm/services/getOrders.js.map +1 -0
  332. package/dist/esm/services/getPositions.d.ts +35 -0
  333. package/dist/esm/services/getPositions.d.ts.map +1 -0
  334. package/dist/esm/services/getPositions.js +26 -0
  335. package/dist/esm/services/getPositions.js.map +1 -0
  336. package/dist/esm/services/getPrices.d.ts +13 -25
  337. package/dist/esm/services/getPrices.d.ts.map +1 -1
  338. package/dist/esm/services/getPrices.js +6 -23
  339. package/dist/esm/services/getPrices.js.map +1 -1
  340. package/dist/esm/services/getProviders.d.ts +20 -0
  341. package/dist/esm/services/getProviders.d.ts.map +1 -0
  342. package/dist/esm/services/getProviders.js +20 -0
  343. package/dist/esm/services/getProviders.js.map +1 -0
  344. package/dist/esm/services/getQuote.d.ts +42 -0
  345. package/dist/esm/services/getQuote.d.ts.map +1 -0
  346. package/dist/esm/services/getQuote.js +33 -0
  347. package/dist/esm/services/getQuote.js.map +1 -0
  348. package/dist/esm/services/getTermsAcceptance.d.ts +24 -0
  349. package/dist/esm/services/getTermsAcceptance.d.ts.map +1 -0
  350. package/dist/esm/services/getTermsAcceptance.js +24 -0
  351. package/dist/esm/services/getTermsAcceptance.js.map +1 -0
  352. package/dist/esm/services/resolveQuote.d.ts +36 -0
  353. package/dist/esm/services/resolveQuote.d.ts.map +1 -0
  354. package/dist/esm/services/resolveQuote.js +74 -0
  355. package/dist/esm/services/resolveQuote.js.map +1 -0
  356. package/dist/esm/services/resolveSubscribeQuote.d.ts +31 -0
  357. package/dist/esm/services/resolveSubscribeQuote.d.ts.map +1 -0
  358. package/dist/esm/services/resolveSubscribeQuote.js +86 -0
  359. package/dist/esm/services/resolveSubscribeQuote.js.map +1 -0
  360. package/dist/esm/storage/parseStoredRecord.d.ts +29 -0
  361. package/dist/esm/storage/parseStoredRecord.d.ts.map +1 -0
  362. package/dist/esm/storage/parseStoredRecord.js +47 -0
  363. package/dist/esm/storage/parseStoredRecord.js.map +1 -0
  364. package/dist/{types/agent → esm/storage}/storage.d.ts +6 -3
  365. package/dist/esm/storage/storage.d.ts.map +1 -0
  366. package/dist/esm/{agent → storage}/storage.js +6 -4
  367. package/dist/esm/storage/storage.js.map +1 -0
  368. package/dist/esm/storage/types.d.ts +14 -0
  369. package/dist/esm/storage/types.d.ts.map +1 -0
  370. package/dist/{cjs/client → esm/storage}/types.js.map +1 -1
  371. package/dist/esm/transport/fetchWithRetry.d.ts +22 -0
  372. package/dist/esm/transport/fetchWithRetry.d.ts.map +1 -0
  373. package/dist/esm/transport/fetchWithRetry.js +87 -0
  374. package/dist/esm/transport/fetchWithRetry.js.map +1 -0
  375. package/dist/esm/transport/request.d.ts +25 -0
  376. package/dist/esm/transport/request.d.ts.map +1 -0
  377. package/dist/esm/transport/request.js +82 -0
  378. package/dist/esm/transport/request.js.map +1 -0
  379. package/dist/esm/transport/retryPolicy.d.ts +106 -0
  380. package/dist/esm/transport/retryPolicy.d.ts.map +1 -0
  381. package/dist/esm/transport/retryPolicy.js +99 -0
  382. package/dist/esm/transport/retryPolicy.js.map +1 -0
  383. package/dist/esm/types/api.d.ts +214 -0
  384. package/dist/esm/types/api.d.ts.map +1 -0
  385. package/dist/esm/types/api.js +2 -0
  386. package/dist/esm/types/api.js.map +1 -0
  387. package/dist/esm/types/config.d.ts +70 -0
  388. package/dist/esm/types/config.d.ts.map +1 -0
  389. package/dist/esm/types/config.js +2 -0
  390. package/dist/esm/types/config.js.map +1 -0
  391. package/dist/esm/types/provider.d.ts +330 -0
  392. package/dist/esm/types/provider.d.ts.map +1 -0
  393. package/dist/esm/types/provider.js +2 -0
  394. package/dist/esm/types/provider.js.map +1 -0
  395. package/dist/esm/utils/accountSummary.d.ts +13 -0
  396. package/dist/esm/utils/accountSummary.d.ts.map +1 -0
  397. package/dist/esm/utils/accountSummary.js +32 -0
  398. package/dist/esm/utils/accountSummary.js.map +1 -0
  399. package/dist/esm/utils/assertNever.d.ts +20 -0
  400. package/dist/esm/utils/assertNever.d.ts.map +1 -0
  401. package/dist/esm/utils/assertNever.js +22 -0
  402. package/dist/esm/utils/assertNever.js.map +1 -0
  403. package/dist/esm/utils/calculations.d.ts +225 -0
  404. package/dist/esm/utils/calculations.d.ts.map +1 -0
  405. package/dist/esm/utils/calculations.js +291 -0
  406. package/dist/esm/utils/calculations.js.map +1 -0
  407. package/dist/esm/utils/depositChain.d.ts +25 -0
  408. package/dist/esm/utils/depositChain.d.ts.map +1 -0
  409. package/dist/esm/utils/depositChain.js +23 -0
  410. package/dist/esm/utils/depositChain.js.map +1 -0
  411. package/dist/esm/utils/explorer.d.ts +33 -0
  412. package/dist/esm/utils/explorer.d.ts.map +1 -0
  413. package/dist/esm/utils/explorer.js +38 -0
  414. package/dist/esm/utils/explorer.js.map +1 -0
  415. package/dist/esm/utils/fillClassification.d.ts +13 -0
  416. package/dist/esm/utils/fillClassification.d.ts.map +1 -0
  417. package/dist/esm/utils/fillClassification.js +44 -0
  418. package/dist/esm/utils/fillClassification.js.map +1 -0
  419. package/dist/esm/utils/format.d.ts +66 -0
  420. package/dist/esm/utils/format.d.ts.map +1 -0
  421. package/dist/esm/utils/format.js +171 -0
  422. package/dist/esm/utils/format.js.map +1 -0
  423. package/dist/esm/utils/orderClassification.d.ts +47 -0
  424. package/dist/esm/utils/orderClassification.d.ts.map +1 -0
  425. package/dist/esm/utils/orderClassification.js +78 -0
  426. package/dist/esm/utils/orderClassification.js.map +1 -0
  427. package/dist/esm/utils/orderMath.d.ts +44 -0
  428. package/dist/esm/utils/orderMath.d.ts.map +1 -0
  429. package/dist/esm/utils/orderMath.js +103 -0
  430. package/dist/esm/utils/orderMath.js.map +1 -0
  431. package/dist/esm/utils/parse.d.ts +21 -0
  432. package/dist/esm/utils/parse.d.ts.map +1 -0
  433. package/dist/esm/utils/parse.js +30 -0
  434. package/dist/esm/utils/parse.js.map +1 -0
  435. package/dist/esm/utils/positionMath.d.ts +107 -0
  436. package/dist/esm/utils/positionMath.d.ts.map +1 -0
  437. package/dist/esm/utils/positionMath.js +119 -0
  438. package/dist/esm/utils/positionMath.js.map +1 -0
  439. package/dist/esm/utils/signTypedData.d.ts +13 -10
  440. package/dist/esm/utils/signTypedData.d.ts.map +1 -1
  441. package/dist/esm/utils/signTypedData.js +20 -13
  442. package/dist/esm/utils/signTypedData.js.map +1 -1
  443. package/dist/esm/utils/sleep.d.ts +5 -0
  444. package/dist/esm/utils/sleep.d.ts.map +1 -1
  445. package/dist/esm/utils/sleep.js +5 -0
  446. package/dist/esm/utils/sleep.js.map +1 -1
  447. package/dist/esm/utils/units.d.ts +27 -0
  448. package/dist/esm/utils/units.d.ts.map +1 -0
  449. package/dist/esm/utils/units.js +38 -0
  450. package/dist/esm/utils/units.js.map +1 -0
  451. package/dist/esm/utils/validation.d.ts +18 -0
  452. package/dist/esm/utils/validation.d.ts.map +1 -0
  453. package/dist/esm/utils/validation.js +29 -0
  454. package/dist/esm/utils/validation.js.map +1 -0
  455. package/dist/esm/version.d.ts +1 -1
  456. package/dist/esm/version.d.ts.map +1 -1
  457. package/dist/esm/version.js +1 -1
  458. package/dist/esm/version.js.map +1 -1
  459. package/dist/esm/websocket/PerpsWsClient.d.ts +100 -0
  460. package/dist/esm/websocket/PerpsWsClient.d.ts.map +1 -0
  461. package/dist/esm/websocket/PerpsWsClient.js +121 -0
  462. package/dist/esm/websocket/PerpsWsClient.js.map +1 -0
  463. package/dist/esm/websocket/ReconnectingWebSocket.d.ts +130 -0
  464. package/dist/esm/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  465. package/dist/esm/websocket/ReconnectingWebSocket.js +288 -0
  466. package/dist/esm/websocket/ReconnectingWebSocket.js.map +1 -0
  467. package/dist/esm/websocket/WsProviderBase.d.ts +89 -0
  468. package/dist/esm/websocket/WsProviderBase.d.ts.map +1 -0
  469. package/dist/esm/websocket/WsProviderBase.js +246 -0
  470. package/dist/esm/websocket/WsProviderBase.js.map +1 -0
  471. package/dist/esm/websocket/cachePromise.d.ts +14 -0
  472. package/dist/esm/websocket/cachePromise.d.ts.map +1 -0
  473. package/dist/esm/websocket/cachePromise.js +27 -0
  474. package/dist/esm/websocket/cachePromise.js.map +1 -0
  475. package/dist/esm/websocket/types.d.ts +60 -0
  476. package/dist/esm/websocket/types.d.ts.map +1 -0
  477. package/dist/{cjs/realtime → esm/websocket}/types.js.map +1 -1
  478. package/dist/esm/websocket/wsLog.d.ts +50 -0
  479. package/dist/esm/websocket/wsLog.d.ts.map +1 -0
  480. package/dist/esm/websocket/wsLog.js +68 -0
  481. package/dist/esm/websocket/wsLog.js.map +1 -0
  482. package/dist/types/client/PerpsClient.d.ts +223 -136
  483. package/dist/types/client/PerpsClient.d.ts.map +1 -1
  484. package/dist/types/client/bindProvider.d.ts +13 -0
  485. package/dist/types/client/bindProvider.d.ts.map +1 -0
  486. package/dist/types/client/createPerpsClient.d.ts +24 -64
  487. package/dist/types/client/createPerpsClient.d.ts.map +1 -1
  488. package/dist/types/client/requireProvider.d.ts +12 -0
  489. package/dist/types/client/requireProvider.d.ts.map +1 -0
  490. package/dist/types/errors/PerpsError.d.ts +10 -3
  491. package/dist/types/errors/PerpsError.d.ts.map +1 -1
  492. package/dist/types/errors/constants.d.ts +8 -12
  493. package/dist/types/errors/constants.d.ts.map +1 -1
  494. package/dist/types/index.d.ts +66 -34
  495. package/dist/types/index.d.ts.map +1 -1
  496. package/dist/types/registry/assetRegistry.d.ts +25 -0
  497. package/dist/types/registry/assetRegistry.d.ts.map +1 -0
  498. package/dist/types/registry/marketRegistry.d.ts +42 -0
  499. package/dist/types/registry/marketRegistry.d.ts.map +1 -0
  500. package/dist/types/registry/referenceDataRegistry.d.ts +44 -0
  501. package/dist/types/registry/referenceDataRegistry.d.ts.map +1 -0
  502. package/dist/types/services/createAction.d.ts +26 -0
  503. package/dist/types/services/createAction.d.ts.map +1 -0
  504. package/dist/types/services/executeAction.d.ts +26 -0
  505. package/dist/types/services/executeAction.d.ts.map +1 -0
  506. package/dist/types/services/getAccount.d.ts +21 -18
  507. package/dist/types/services/getAccount.d.ts.map +1 -1
  508. package/dist/types/services/getActivity.d.ts +39 -0
  509. package/dist/types/services/getActivity.d.ts.map +1 -0
  510. package/dist/types/services/getAssets.d.ts +27 -0
  511. package/dist/types/services/getAssets.d.ts.map +1 -0
  512. package/dist/types/services/getFills.d.ts +38 -0
  513. package/dist/types/services/getFills.d.ts.map +1 -0
  514. package/dist/types/services/getMarket.d.ts +22 -15
  515. package/dist/types/services/getMarket.d.ts.map +1 -1
  516. package/dist/types/services/getMarkets.d.ts +16 -13
  517. package/dist/types/services/getMarkets.d.ts.map +1 -1
  518. package/dist/types/services/getMeta.d.ts +19 -0
  519. package/dist/types/services/getMeta.d.ts.map +1 -0
  520. package/dist/types/services/getOhlcv.d.ts +17 -21
  521. package/dist/types/services/getOhlcv.d.ts.map +1 -1
  522. package/dist/types/services/getOrder.d.ts +18 -18
  523. package/dist/types/services/getOrder.d.ts.map +1 -1
  524. package/dist/types/services/getOrderbook.d.ts +14 -24
  525. package/dist/types/services/getOrderbook.d.ts.map +1 -1
  526. package/dist/types/services/getOrders.d.ts +35 -0
  527. package/dist/types/services/getOrders.d.ts.map +1 -0
  528. package/dist/types/services/getPositions.d.ts +35 -0
  529. package/dist/types/services/getPositions.d.ts.map +1 -0
  530. package/dist/types/services/getPrices.d.ts +13 -25
  531. package/dist/types/services/getPrices.d.ts.map +1 -1
  532. package/dist/types/services/getProviders.d.ts +20 -0
  533. package/dist/types/services/getProviders.d.ts.map +1 -0
  534. package/dist/types/services/getQuote.d.ts +42 -0
  535. package/dist/types/services/getQuote.d.ts.map +1 -0
  536. package/dist/types/services/getTermsAcceptance.d.ts +24 -0
  537. package/dist/types/services/getTermsAcceptance.d.ts.map +1 -0
  538. package/dist/types/services/resolveQuote.d.ts +36 -0
  539. package/dist/types/services/resolveQuote.d.ts.map +1 -0
  540. package/dist/types/services/resolveSubscribeQuote.d.ts +31 -0
  541. package/dist/types/services/resolveSubscribeQuote.d.ts.map +1 -0
  542. package/dist/types/storage/parseStoredRecord.d.ts +29 -0
  543. package/dist/types/storage/parseStoredRecord.d.ts.map +1 -0
  544. package/dist/{esm/agent → types/storage}/storage.d.ts +6 -3
  545. package/dist/types/storage/storage.d.ts.map +1 -0
  546. package/dist/types/storage/types.d.ts +14 -0
  547. package/dist/types/storage/types.d.ts.map +1 -0
  548. package/dist/types/transport/fetchWithRetry.d.ts +22 -0
  549. package/dist/types/transport/fetchWithRetry.d.ts.map +1 -0
  550. package/dist/types/transport/request.d.ts +25 -0
  551. package/dist/types/transport/request.d.ts.map +1 -0
  552. package/dist/types/transport/retryPolicy.d.ts +106 -0
  553. package/dist/types/transport/retryPolicy.d.ts.map +1 -0
  554. package/dist/types/types/api.d.ts +214 -0
  555. package/dist/types/types/api.d.ts.map +1 -0
  556. package/dist/types/types/config.d.ts +70 -0
  557. package/dist/types/types/config.d.ts.map +1 -0
  558. package/dist/types/types/provider.d.ts +330 -0
  559. package/dist/types/types/provider.d.ts.map +1 -0
  560. package/dist/types/utils/accountSummary.d.ts +13 -0
  561. package/dist/types/utils/accountSummary.d.ts.map +1 -0
  562. package/dist/types/utils/assertNever.d.ts +20 -0
  563. package/dist/types/utils/assertNever.d.ts.map +1 -0
  564. package/dist/types/utils/calculations.d.ts +225 -0
  565. package/dist/types/utils/calculations.d.ts.map +1 -0
  566. package/dist/types/utils/depositChain.d.ts +25 -0
  567. package/dist/types/utils/depositChain.d.ts.map +1 -0
  568. package/dist/types/utils/explorer.d.ts +33 -0
  569. package/dist/types/utils/explorer.d.ts.map +1 -0
  570. package/dist/types/utils/fillClassification.d.ts +13 -0
  571. package/dist/types/utils/fillClassification.d.ts.map +1 -0
  572. package/dist/types/utils/format.d.ts +66 -0
  573. package/dist/types/utils/format.d.ts.map +1 -0
  574. package/dist/types/utils/orderClassification.d.ts +47 -0
  575. package/dist/types/utils/orderClassification.d.ts.map +1 -0
  576. package/dist/types/utils/orderMath.d.ts +44 -0
  577. package/dist/types/utils/orderMath.d.ts.map +1 -0
  578. package/dist/types/utils/parse.d.ts +21 -0
  579. package/dist/types/utils/parse.d.ts.map +1 -0
  580. package/dist/types/utils/positionMath.d.ts +107 -0
  581. package/dist/types/utils/positionMath.d.ts.map +1 -0
  582. package/dist/types/utils/signTypedData.d.ts +13 -10
  583. package/dist/types/utils/signTypedData.d.ts.map +1 -1
  584. package/dist/types/utils/sleep.d.ts +5 -0
  585. package/dist/types/utils/sleep.d.ts.map +1 -1
  586. package/dist/types/utils/units.d.ts +27 -0
  587. package/dist/types/utils/units.d.ts.map +1 -0
  588. package/dist/types/utils/validation.d.ts +18 -0
  589. package/dist/types/utils/validation.d.ts.map +1 -0
  590. package/dist/types/version.d.ts +1 -1
  591. package/dist/types/version.d.ts.map +1 -1
  592. package/dist/types/websocket/PerpsWsClient.d.ts +100 -0
  593. package/dist/types/websocket/PerpsWsClient.d.ts.map +1 -0
  594. package/dist/types/websocket/ReconnectingWebSocket.d.ts +130 -0
  595. package/dist/types/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  596. package/dist/types/websocket/WsProviderBase.d.ts +89 -0
  597. package/dist/types/websocket/WsProviderBase.d.ts.map +1 -0
  598. package/dist/types/websocket/cachePromise.d.ts +14 -0
  599. package/dist/types/websocket/cachePromise.d.ts.map +1 -0
  600. package/dist/types/websocket/types.d.ts +60 -0
  601. package/dist/types/websocket/types.d.ts.map +1 -0
  602. package/dist/types/websocket/wsLog.d.ts +50 -0
  603. package/dist/types/websocket/wsLog.d.ts.map +1 -0
  604. package/package.json +12 -50
  605. package/src/client/PerpsClient.ts +549 -435
  606. package/src/client/bindProvider.ts +24 -0
  607. package/src/client/createPerpsClient.ts +61 -80
  608. package/src/client/requireProvider.ts +29 -0
  609. package/src/errors/PerpsError.ts +11 -22
  610. package/src/errors/constants.ts +8 -13
  611. package/src/index.ts +189 -65
  612. package/src/registry/assetRegistry.ts +62 -0
  613. package/src/registry/marketRegistry.ts +100 -0
  614. package/src/registry/referenceDataRegistry.ts +95 -0
  615. package/src/services/createAction.ts +52 -0
  616. package/src/services/executeAction.ts +56 -0
  617. package/src/services/getAccount.ts +26 -27
  618. package/src/services/getActivity.ts +57 -0
  619. package/src/services/getAssets.ts +38 -0
  620. package/src/services/getFills.ts +55 -0
  621. package/src/services/getMarket.ts +34 -23
  622. package/src/services/getMarkets.ts +21 -18
  623. package/src/services/getMeta.ts +30 -0
  624. package/src/services/getOhlcv.ts +21 -27
  625. package/src/services/getOrder.ts +23 -27
  626. package/src/services/getOrderbook.ts +18 -30
  627. package/src/services/getOrders.ts +51 -0
  628. package/src/services/getPositions.ts +51 -0
  629. package/src/services/getPrices.ts +16 -31
  630. package/src/services/getProviders.ts +31 -0
  631. package/src/services/getQuote.ts +58 -0
  632. package/src/services/getTermsAcceptance.ts +32 -0
  633. package/src/services/resolveQuote.ts +122 -0
  634. package/src/services/resolveSubscribeQuote.ts +109 -0
  635. package/src/storage/parseStoredRecord.ts +55 -0
  636. package/src/{agent → storage}/storage.ts +6 -4
  637. package/src/storage/types.ts +13 -0
  638. package/src/transport/fetchWithRetry.ts +116 -0
  639. package/src/transport/request.ts +123 -0
  640. package/src/transport/retryPolicy.ts +202 -0
  641. package/src/types/api.ts +239 -0
  642. package/src/types/config.ts +79 -0
  643. package/src/types/provider.ts +429 -0
  644. package/src/utils/accountSummary.ts +46 -0
  645. package/src/utils/assertNever.ts +23 -0
  646. package/src/utils/calculations.ts +406 -0
  647. package/src/utils/depositChain.ts +37 -0
  648. package/src/utils/explorer.ts +51 -0
  649. package/src/utils/fillClassification.ts +51 -0
  650. package/src/utils/format.ts +212 -0
  651. package/src/utils/orderClassification.ts +96 -0
  652. package/src/utils/orderMath.ts +134 -0
  653. package/src/utils/parse.ts +29 -0
  654. package/src/utils/positionMath.ts +149 -0
  655. package/src/utils/signTypedData.ts +25 -15
  656. package/src/utils/sleep.ts +5 -0
  657. package/src/utils/units.ts +39 -0
  658. package/src/utils/validation.ts +38 -0
  659. package/src/version.ts +1 -1
  660. package/src/websocket/PerpsWsClient.ts +204 -0
  661. package/src/websocket/ReconnectingWebSocket.ts +353 -0
  662. package/src/websocket/WsProviderBase.ts +333 -0
  663. package/src/websocket/cachePromise.ts +30 -0
  664. package/src/websocket/types.ts +75 -0
  665. package/src/websocket/wsLog.ts +82 -0
  666. package/dist/cjs/agent/AgentManager.d.ts +0 -15
  667. package/dist/cjs/agent/AgentManager.d.ts.map +0 -1
  668. package/dist/cjs/agent/AgentManager.js +0 -80
  669. package/dist/cjs/agent/AgentManager.js.map +0 -1
  670. package/dist/cjs/agent/storage.d.ts.map +0 -1
  671. package/dist/cjs/agent/storage.js.map +0 -1
  672. package/dist/cjs/agent/types.d.ts.map +0 -1
  673. package/dist/cjs/client/types.d.ts +0 -62
  674. package/dist/cjs/client/types.d.ts.map +0 -1
  675. package/dist/cjs/dex/hyperliquid.d.ts +0 -3
  676. package/dist/cjs/dex/hyperliquid.d.ts.map +0 -1
  677. package/dist/cjs/dex/hyperliquid.js +0 -21
  678. package/dist/cjs/dex/hyperliquid.js.map +0 -1
  679. package/dist/cjs/dex/registry.d.ts +0 -3
  680. package/dist/cjs/dex/registry.d.ts.map +0 -1
  681. package/dist/cjs/dex/registry.js +0 -16
  682. package/dist/cjs/dex/registry.js.map +0 -1
  683. package/dist/cjs/dex/types.d.ts +0 -13
  684. package/dist/cjs/dex/types.d.ts.map +0 -1
  685. package/dist/cjs/errors/AgentError.d.ts +0 -10
  686. package/dist/cjs/errors/AgentError.d.ts.map +0 -1
  687. package/dist/cjs/errors/AgentError.js +0 -23
  688. package/dist/cjs/errors/AgentError.js.map +0 -1
  689. package/dist/cjs/errors/HTTPError.d.ts +0 -11
  690. package/dist/cjs/errors/HTTPError.d.ts.map +0 -1
  691. package/dist/cjs/errors/HTTPError.js +0 -62
  692. package/dist/cjs/errors/HTTPError.js.map +0 -1
  693. package/dist/cjs/errors/PerpsSDKError.d.ts +0 -9
  694. package/dist/cjs/errors/PerpsSDKError.d.ts.map +0 -1
  695. package/dist/cjs/errors/PerpsSDKError.js +0 -36
  696. package/dist/cjs/errors/PerpsSDKError.js.map +0 -1
  697. package/dist/cjs/errors/ServerError.d.ts +0 -10
  698. package/dist/cjs/errors/ServerError.d.ts.map +0 -1
  699. package/dist/cjs/errors/ServerError.js +0 -24
  700. package/dist/cjs/errors/ServerError.js.map +0 -1
  701. package/dist/cjs/errors/ValidationError.d.ts +0 -9
  702. package/dist/cjs/errors/ValidationError.d.ts.map +0 -1
  703. package/dist/cjs/errors/ValidationError.js +0 -23
  704. package/dist/cjs/errors/ValidationError.js.map +0 -1
  705. package/dist/cjs/errors/utils/rootCause.d.ts +0 -6
  706. package/dist/cjs/errors/utils/rootCause.d.ts.map +0 -1
  707. package/dist/cjs/errors/utils/rootCause.js +0 -41
  708. package/dist/cjs/errors/utils/rootCause.js.map +0 -1
  709. package/dist/cjs/realtime/PerpsWsClient.d.ts +0 -14
  710. package/dist/cjs/realtime/PerpsWsClient.d.ts.map +0 -1
  711. package/dist/cjs/realtime/PerpsWsClient.js +0 -56
  712. package/dist/cjs/realtime/PerpsWsClient.js.map +0 -1
  713. package/dist/cjs/realtime/ReconnectingWebSocket.d.ts +0 -36
  714. package/dist/cjs/realtime/ReconnectingWebSocket.d.ts.map +0 -1
  715. package/dist/cjs/realtime/ReconnectingWebSocket.js +0 -132
  716. package/dist/cjs/realtime/ReconnectingWebSocket.js.map +0 -1
  717. package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -26
  718. package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
  719. package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.js +0 -225
  720. package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.js.map +0 -1
  721. package/dist/cjs/realtime/hyperliquid/types.d.ts +0 -35
  722. package/dist/cjs/realtime/hyperliquid/types.d.ts.map +0 -1
  723. package/dist/cjs/realtime/hyperliquid/types.js.map +0 -1
  724. package/dist/cjs/realtime/types.d.ts +0 -10
  725. package/dist/cjs/realtime/types.d.ts.map +0 -1
  726. package/dist/cjs/realtime/types.js +0 -3
  727. package/dist/cjs/services/cancelOrder.d.ts +0 -10
  728. package/dist/cjs/services/cancelOrder.d.ts.map +0 -1
  729. package/dist/cjs/services/cancelOrder.js +0 -16
  730. package/dist/cjs/services/cancelOrder.js.map +0 -1
  731. package/dist/cjs/services/createAuthorization.d.ts +0 -10
  732. package/dist/cjs/services/createAuthorization.d.ts.map +0 -1
  733. package/dist/cjs/services/createAuthorization.js +0 -16
  734. package/dist/cjs/services/createAuthorization.js.map +0 -1
  735. package/dist/cjs/services/createOrder.d.ts +0 -21
  736. package/dist/cjs/services/createOrder.d.ts.map +0 -1
  737. package/dist/cjs/services/createOrder.js +0 -27
  738. package/dist/cjs/services/createOrder.js.map +0 -1
  739. package/dist/cjs/services/createWithdrawal.d.ts +0 -9
  740. package/dist/cjs/services/createWithdrawal.d.ts.map +0 -1
  741. package/dist/cjs/services/createWithdrawal.js +0 -15
  742. package/dist/cjs/services/createWithdrawal.js.map +0 -1
  743. package/dist/cjs/services/getDexes.d.ts +0 -4
  744. package/dist/cjs/services/getDexes.d.ts.map +0 -1
  745. package/dist/cjs/services/getDexes.js +0 -8
  746. package/dist/cjs/services/getDexes.js.map +0 -1
  747. package/dist/cjs/services/getHistory.d.ts +0 -10
  748. package/dist/cjs/services/getHistory.d.ts.map +0 -1
  749. package/dist/cjs/services/getHistory.js +0 -14
  750. package/dist/cjs/services/getHistory.js.map +0 -1
  751. package/dist/cjs/services/submitAuthorization.d.ts +0 -10
  752. package/dist/cjs/services/submitAuthorization.d.ts.map +0 -1
  753. package/dist/cjs/services/submitAuthorization.js.map +0 -1
  754. package/dist/cjs/services/submitOrder.d.ts +0 -10
  755. package/dist/cjs/services/submitOrder.d.ts.map +0 -1
  756. package/dist/cjs/services/submitOrder.js +0 -16
  757. package/dist/cjs/services/submitOrder.js.map +0 -1
  758. package/dist/cjs/services/submitWithdrawal.d.ts +0 -9
  759. package/dist/cjs/services/submitWithdrawal.d.ts.map +0 -1
  760. package/dist/cjs/services/submitWithdrawal.js +0 -15
  761. package/dist/cjs/services/submitWithdrawal.js.map +0 -1
  762. package/dist/cjs/utils/request.d.ts.map +0 -1
  763. package/dist/cjs/utils/request.js +0 -60
  764. package/dist/cjs/utils/request.js.map +0 -1
  765. package/dist/esm/agent/AgentManager.d.ts +0 -45
  766. package/dist/esm/agent/AgentManager.d.ts.map +0 -1
  767. package/dist/esm/agent/AgentManager.js +0 -110
  768. package/dist/esm/agent/AgentManager.js.map +0 -1
  769. package/dist/esm/agent/storage.d.ts.map +0 -1
  770. package/dist/esm/agent/storage.js.map +0 -1
  771. package/dist/esm/agent/types.d.ts +0 -23
  772. package/dist/esm/agent/types.d.ts.map +0 -1
  773. package/dist/esm/agent/types.js.map +0 -1
  774. package/dist/esm/client/types.d.ts +0 -134
  775. package/dist/esm/client/types.d.ts.map +0 -1
  776. package/dist/esm/client/types.js.map +0 -1
  777. package/dist/esm/dex/hyperliquid.d.ts +0 -3
  778. package/dist/esm/dex/hyperliquid.d.ts.map +0 -1
  779. package/dist/esm/dex/hyperliquid.js +0 -19
  780. package/dist/esm/dex/hyperliquid.js.map +0 -1
  781. package/dist/esm/dex/registry.d.ts +0 -3
  782. package/dist/esm/dex/registry.d.ts.map +0 -1
  783. package/dist/esm/dex/registry.js +0 -13
  784. package/dist/esm/dex/registry.js.map +0 -1
  785. package/dist/esm/dex/types.d.ts +0 -15
  786. package/dist/esm/dex/types.d.ts.map +0 -1
  787. package/dist/esm/dex/types.js +0 -2
  788. package/dist/esm/dex/types.js.map +0 -1
  789. package/dist/esm/errors/AgentError.d.ts +0 -25
  790. package/dist/esm/errors/AgentError.d.ts.map +0 -1
  791. package/dist/esm/errors/AgentError.js +0 -35
  792. package/dist/esm/errors/AgentError.js.map +0 -1
  793. package/dist/esm/errors/HTTPError.d.ts +0 -11
  794. package/dist/esm/errors/HTTPError.d.ts.map +0 -1
  795. package/dist/esm/errors/HTTPError.js +0 -61
  796. package/dist/esm/errors/HTTPError.js.map +0 -1
  797. package/dist/esm/errors/PerpsSDKError.d.ts +0 -40
  798. package/dist/esm/errors/PerpsSDKError.d.ts.map +0 -1
  799. package/dist/esm/errors/PerpsSDKError.js +0 -67
  800. package/dist/esm/errors/PerpsSDKError.js.map +0 -1
  801. package/dist/esm/errors/ServerError.d.ts +0 -23
  802. package/dist/esm/errors/ServerError.d.ts.map +0 -1
  803. package/dist/esm/errors/ServerError.js +0 -34
  804. package/dist/esm/errors/ServerError.js.map +0 -1
  805. package/dist/esm/errors/ValidationError.d.ts +0 -23
  806. package/dist/esm/errors/ValidationError.d.ts.map +0 -1
  807. package/dist/esm/errors/ValidationError.js +0 -34
  808. package/dist/esm/errors/ValidationError.js.map +0 -1
  809. package/dist/esm/errors/utils/rootCause.d.ts +0 -71
  810. package/dist/esm/errors/utils/rootCause.d.ts.map +0 -1
  811. package/dist/esm/errors/utils/rootCause.js +0 -99
  812. package/dist/esm/errors/utils/rootCause.js.map +0 -1
  813. package/dist/esm/realtime/PerpsWsClient.d.ts +0 -14
  814. package/dist/esm/realtime/PerpsWsClient.d.ts.map +0 -1
  815. package/dist/esm/realtime/PerpsWsClient.js +0 -52
  816. package/dist/esm/realtime/PerpsWsClient.js.map +0 -1
  817. package/dist/esm/realtime/ReconnectingWebSocket.d.ts.map +0 -1
  818. package/dist/esm/realtime/ReconnectingWebSocket.js +0 -128
  819. package/dist/esm/realtime/ReconnectingWebSocket.js.map +0 -1
  820. package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -26
  821. package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
  822. package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.js +0 -222
  823. package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.js.map +0 -1
  824. package/dist/esm/realtime/hyperliquid/types.d.ts +0 -35
  825. package/dist/esm/realtime/hyperliquid/types.d.ts.map +0 -1
  826. package/dist/esm/realtime/hyperliquid/types.js +0 -4
  827. package/dist/esm/realtime/hyperliquid/types.js.map +0 -1
  828. package/dist/esm/realtime/types.d.ts +0 -10
  829. package/dist/esm/realtime/types.d.ts.map +0 -1
  830. package/dist/esm/realtime/types.js +0 -2
  831. package/dist/esm/realtime/types.js.map +0 -1
  832. package/dist/esm/services/cancelOrder.d.ts +0 -51
  833. package/dist/esm/services/cancelOrder.d.ts.map +0 -1
  834. package/dist/esm/services/cancelOrder.js +0 -50
  835. package/dist/esm/services/cancelOrder.js.map +0 -1
  836. package/dist/esm/services/createAuthorization.d.ts +0 -51
  837. package/dist/esm/services/createAuthorization.d.ts.map +0 -1
  838. package/dist/esm/services/createAuthorization.js +0 -50
  839. package/dist/esm/services/createAuthorization.js.map +0 -1
  840. package/dist/esm/services/createOrder.d.ts +0 -74
  841. package/dist/esm/services/createOrder.d.ts.map +0 -1
  842. package/dist/esm/services/createOrder.js +0 -62
  843. package/dist/esm/services/createOrder.js.map +0 -1
  844. package/dist/esm/services/createWithdrawal.d.ts +0 -49
  845. package/dist/esm/services/createWithdrawal.d.ts.map +0 -1
  846. package/dist/esm/services/createWithdrawal.js +0 -49
  847. package/dist/esm/services/createWithdrawal.js.map +0 -1
  848. package/dist/esm/services/getDexes.d.ts +0 -20
  849. package/dist/esm/services/getDexes.d.ts.map +0 -1
  850. package/dist/esm/services/getDexes.js +0 -21
  851. package/dist/esm/services/getDexes.js.map +0 -1
  852. package/dist/esm/services/getHistory.d.ts +0 -45
  853. package/dist/esm/services/getHistory.d.ts.map +0 -1
  854. package/dist/esm/services/getHistory.js +0 -42
  855. package/dist/esm/services/getHistory.js.map +0 -1
  856. package/dist/esm/services/submitAuthorization.d.ts +0 -42
  857. package/dist/esm/services/submitAuthorization.d.ts.map +0 -1
  858. package/dist/esm/services/submitAuthorization.js +0 -41
  859. package/dist/esm/services/submitAuthorization.js.map +0 -1
  860. package/dist/esm/services/submitOrder.d.ts +0 -44
  861. package/dist/esm/services/submitOrder.d.ts.map +0 -1
  862. package/dist/esm/services/submitOrder.js +0 -43
  863. package/dist/esm/services/submitOrder.js.map +0 -1
  864. package/dist/esm/services/submitWithdrawal.d.ts +0 -40
  865. package/dist/esm/services/submitWithdrawal.d.ts.map +0 -1
  866. package/dist/esm/services/submitWithdrawal.js +0 -40
  867. package/dist/esm/services/submitWithdrawal.js.map +0 -1
  868. package/dist/esm/utils/request.d.ts +0 -26
  869. package/dist/esm/utils/request.d.ts.map +0 -1
  870. package/dist/esm/utils/request.js +0 -78
  871. package/dist/esm/utils/request.js.map +0 -1
  872. package/dist/types/agent/AgentManager.d.ts +0 -45
  873. package/dist/types/agent/AgentManager.d.ts.map +0 -1
  874. package/dist/types/agent/storage.d.ts.map +0 -1
  875. package/dist/types/agent/types.d.ts +0 -23
  876. package/dist/types/agent/types.d.ts.map +0 -1
  877. package/dist/types/client/types.d.ts +0 -134
  878. package/dist/types/client/types.d.ts.map +0 -1
  879. package/dist/types/dex/hyperliquid.d.ts +0 -3
  880. package/dist/types/dex/hyperliquid.d.ts.map +0 -1
  881. package/dist/types/dex/registry.d.ts +0 -3
  882. package/dist/types/dex/registry.d.ts.map +0 -1
  883. package/dist/types/dex/types.d.ts +0 -15
  884. package/dist/types/dex/types.d.ts.map +0 -1
  885. package/dist/types/errors/AgentError.d.ts +0 -25
  886. package/dist/types/errors/AgentError.d.ts.map +0 -1
  887. package/dist/types/errors/HTTPError.d.ts +0 -11
  888. package/dist/types/errors/HTTPError.d.ts.map +0 -1
  889. package/dist/types/errors/PerpsSDKError.d.ts +0 -40
  890. package/dist/types/errors/PerpsSDKError.d.ts.map +0 -1
  891. package/dist/types/errors/ServerError.d.ts +0 -23
  892. package/dist/types/errors/ServerError.d.ts.map +0 -1
  893. package/dist/types/errors/ValidationError.d.ts +0 -23
  894. package/dist/types/errors/ValidationError.d.ts.map +0 -1
  895. package/dist/types/errors/utils/rootCause.d.ts +0 -71
  896. package/dist/types/errors/utils/rootCause.d.ts.map +0 -1
  897. package/dist/types/realtime/PerpsWsClient.d.ts +0 -14
  898. package/dist/types/realtime/PerpsWsClient.d.ts.map +0 -1
  899. package/dist/types/realtime/ReconnectingWebSocket.d.ts +0 -36
  900. package/dist/types/realtime/ReconnectingWebSocket.d.ts.map +0 -1
  901. package/dist/types/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -26
  902. package/dist/types/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
  903. package/dist/types/realtime/hyperliquid/types.d.ts +0 -35
  904. package/dist/types/realtime/hyperliquid/types.d.ts.map +0 -1
  905. package/dist/types/realtime/types.d.ts +0 -10
  906. package/dist/types/realtime/types.d.ts.map +0 -1
  907. package/dist/types/services/cancelOrder.d.ts +0 -51
  908. package/dist/types/services/cancelOrder.d.ts.map +0 -1
  909. package/dist/types/services/createAuthorization.d.ts +0 -51
  910. package/dist/types/services/createAuthorization.d.ts.map +0 -1
  911. package/dist/types/services/createOrder.d.ts +0 -74
  912. package/dist/types/services/createOrder.d.ts.map +0 -1
  913. package/dist/types/services/createWithdrawal.d.ts +0 -49
  914. package/dist/types/services/createWithdrawal.d.ts.map +0 -1
  915. package/dist/types/services/getDexes.d.ts +0 -20
  916. package/dist/types/services/getDexes.d.ts.map +0 -1
  917. package/dist/types/services/getHistory.d.ts +0 -45
  918. package/dist/types/services/getHistory.d.ts.map +0 -1
  919. package/dist/types/services/submitAuthorization.d.ts +0 -42
  920. package/dist/types/services/submitAuthorization.d.ts.map +0 -1
  921. package/dist/types/services/submitOrder.d.ts +0 -44
  922. package/dist/types/services/submitOrder.d.ts.map +0 -1
  923. package/dist/types/services/submitWithdrawal.d.ts +0 -40
  924. package/dist/types/services/submitWithdrawal.d.ts.map +0 -1
  925. package/dist/types/utils/request.d.ts +0 -26
  926. package/dist/types/utils/request.d.ts.map +0 -1
  927. package/src/agent/AgentManager.ts +0 -135
  928. package/src/agent/types.ts +0 -24
  929. package/src/client/types.ts +0 -162
  930. package/src/dex/hyperliquid.ts +0 -20
  931. package/src/dex/registry.ts +0 -15
  932. package/src/dex/types.ts +0 -16
  933. package/src/errors/AgentError.ts +0 -43
  934. package/src/errors/HTTPError.ts +0 -72
  935. package/src/errors/PerpsSDKError.ts +0 -79
  936. package/src/errors/ServerError.ts +0 -41
  937. package/src/errors/ValidationError.ts +0 -38
  938. package/src/errors/utils/rootCause.ts +0 -112
  939. package/src/realtime/PerpsWsClient.ts +0 -73
  940. package/src/realtime/ReconnectingWebSocket.ts +0 -156
  941. package/src/realtime/hyperliquid/HyperliquidWsProvider.ts +0 -278
  942. package/src/realtime/hyperliquid/types.ts +0 -48
  943. package/src/realtime/types.ts +0 -16
  944. package/src/services/cancelOrder.ts +0 -75
  945. package/src/services/createAuthorization.ts +0 -79
  946. package/src/services/createOrder.ts +0 -116
  947. package/src/services/createWithdrawal.ts +0 -76
  948. package/src/services/getDexes.ts +0 -34
  949. package/src/services/getHistory.ts +0 -62
  950. package/src/services/submitAuthorization.ts +0 -70
  951. package/src/services/submitOrder.ts +0 -72
  952. package/src/services/submitWithdrawal.ts +0 -67
  953. package/src/utils/request.ts +0 -116
  954. /package/dist/cjs/{agent → storage}/storage.d.ts +0 -0
  955. /package/dist/cjs/{agent → storage}/storage.js +0 -0
  956. /package/dist/cjs/{agent → storage}/types.js +0 -0
  957. /package/dist/cjs/{client → websocket}/types.js +0 -0
  958. /package/dist/esm/{agent → storage}/types.js +0 -0
  959. /package/dist/esm/{client → websocket}/types.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculations.d.ts","sourceRoot":"","sources":["../../../src/utils/calculations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Universal perpetual futures calculation utilities.
3
+ *
4
+ * Pure functions for computing position-related values that any consumer
5
+ * of the perps SDK would need. All parameters are required — no default
6
+ * values for critical financial parameters.
7
+ */
8
+ /**
9
+ * Calculate position size in asset units from margin.
10
+ *
11
+ * @param marginUsd - Margin amount in USD
12
+ * @param leverage - Position leverage
13
+ * @param price - Current asset price
14
+ * @returns Position size in asset units
15
+ * @example
16
+ * ```ts
17
+ * calculatePositionSize(100, 10, 2000) // 0.5 (ETH at $2000)
18
+ * ```
19
+ * @public
20
+ */
21
+ export function calculatePositionSize(marginUsd, leverage, price) {
22
+ return (marginUsd * leverage) / price;
23
+ }
24
+ /**
25
+ * Calculate notional value of a position.
26
+ *
27
+ * @param size - Position size in asset units
28
+ * @param price - Current asset price
29
+ * @returns Notional value in USD
30
+ * @public
31
+ */
32
+ export function calculateNotionalValue(size, price) {
33
+ return Math.abs(size) * price;
34
+ }
35
+ /**
36
+ * Calculate unrealized PnL.
37
+ *
38
+ * @param entryPrice - Position entry price
39
+ * @param currentPrice - Current market price
40
+ * @param size - Position size (positive for long, negative for short)
41
+ * @returns Unrealized PnL in USD
42
+ * @public
43
+ */
44
+ export function calculateUnrealizedPnl(entryPrice, currentPrice, size) {
45
+ return (currentPrice - entryPrice) * size;
46
+ }
47
+ /**
48
+ * Calculate return on equity (ROE) percentage.
49
+ *
50
+ * @param pnl - Profit/loss in USD
51
+ * @param margin - Initial margin in USD
52
+ * @returns ROE as percentage (e.g., 10 for 10%)
53
+ * @public
54
+ */
55
+ export function calculateRoe(pnl, margin) {
56
+ if (margin === 0) {
57
+ return 0;
58
+ }
59
+ return (pnl / margin) * 100;
60
+ }
61
+ /**
62
+ * Calculate required margin for a position.
63
+ *
64
+ * @param notionalValue - Position notional value in USD
65
+ * @param leverage - Position leverage
66
+ * @returns Required margin in USD
67
+ * @public
68
+ */
69
+ export function calculateRequiredMargin(notionalValue, leverage) {
70
+ return notionalValue / leverage;
71
+ }
72
+ /**
73
+ * Estimate trading fees.
74
+ *
75
+ * @param sizeUsd - Position size in USD (notional value)
76
+ * @param feeRate - Fee rate as decimal (e.g., 0.00035 for 0.035%)
77
+ * @returns Estimated fee in USD
78
+ * @public
79
+ */
80
+ export function estimateFees(sizeUsd, feeRate) {
81
+ return sizeUsd * feeRate;
82
+ }
83
+ /**
84
+ * Apply slippage to a price for order execution.
85
+ *
86
+ * @param price - Base price
87
+ * @param slippagePercent - Slippage tolerance as percentage (e.g., 0.5 for 0.5%)
88
+ * @param isBuy - True if buying (price goes up), false if selling (price goes down)
89
+ * @returns Price adjusted for slippage
90
+ * @public
91
+ */
92
+ export function applySlippage(price, slippagePercent, isBuy) {
93
+ const multiplier = 1 + slippagePercent / 100;
94
+ return isBuy ? price * multiplier : price / multiplier;
95
+ }
96
+ /**
97
+ * Distance from the current price to the liquidation price, as a percentage of
98
+ * the current price.
99
+ *
100
+ * @param liquidationPrice - The position's liquidation price
101
+ * @param currentPrice - Current market price
102
+ * @returns Absolute distance as a percentage, or 0 when current price is zero
103
+ * @public
104
+ */
105
+ export function liquidationDistancePercent(params) {
106
+ const { liquidationPrice, currentPrice } = params;
107
+ if (currentPrice === 0) {
108
+ return 0;
109
+ }
110
+ return Math.abs((liquidationPrice - currentPrice) / currentPrice) * 100;
111
+ }
112
+ /**
113
+ * Effective leverage of an open position.
114
+ *
115
+ * leverage = positionValueUsd / marginUsd
116
+ *
117
+ * @param positionValueUsd - Position notional value in USD
118
+ * @param marginUsd - Margin backing the position in USD
119
+ * @returns Effective leverage, or 0 when margin is zero
120
+ * @public
121
+ */
122
+ export function effectiveLeverage(params) {
123
+ const { positionValueUsd, marginUsd } = params;
124
+ if (marginUsd === 0) {
125
+ return 0;
126
+ }
127
+ return positionValueUsd / marginUsd;
128
+ }
129
+ /**
130
+ * Margin that can be removed from a position while keeping its leverage at or
131
+ * below the asset's maximum.
132
+ *
133
+ * The minimum margin to stay within `maxLeverage` is the required margin for
134
+ * the position's notional (see {@link calculateRequiredMargin}); anything above
135
+ * that is removable.
136
+ *
137
+ * @param marginUsed - Margin currently backing the position in USD
138
+ * @param positionValueUsd - Position notional value in USD
139
+ * @param maxLeverage - Maximum leverage allowed for the asset
140
+ * @returns Removable margin in USD (never negative); falls back to the full
141
+ * `marginUsed` when `maxLeverage` is zero (no constraint available)
142
+ * @public
143
+ */
144
+ export function removableMargin(params) {
145
+ const { marginUsed, positionValueUsd, maxLeverage } = params;
146
+ if (maxLeverage === 0) {
147
+ return marginUsed;
148
+ }
149
+ const minMargin = calculateRequiredMargin(positionValueUsd, maxLeverage);
150
+ return Math.max(0, marginUsed - minMargin);
151
+ }
152
+ /**
153
+ * Calculate expected gain/loss for a TP or SL trigger price.
154
+ * Returns signed values — positive means profit, negative means loss.
155
+ *
156
+ * @param triggerPrice - The TP or SL target price
157
+ * @param entryPrice - Position entry / current market price
158
+ * @param leverage - Position leverage multiplier
159
+ * @param isLong - True for long positions, false for short
160
+ * @param margin - Margin amount in USD
161
+ * @public
162
+ */
163
+ export function calculateExpectedPnl(triggerPrice, entryPrice, leverage, isLong, margin) {
164
+ if (!triggerPrice || entryPrice === 0 || margin === 0) {
165
+ return null;
166
+ }
167
+ const priceDiff = isLong
168
+ ? triggerPrice - entryPrice
169
+ : entryPrice - triggerPrice;
170
+ const percent = (priceDiff / entryPrice) * leverage * 100;
171
+ const amount = margin * (percent / 100);
172
+ return { amount, percent };
173
+ }
174
+ /**
175
+ * Convert a percentage gain/loss to a target price.
176
+ *
177
+ * @param percent - Target gain/loss percentage (positive = profitable direction)
178
+ * @param entryPrice - Position entry price
179
+ * @param leverage - Position leverage multiplier
180
+ * @param isLong - True for long positions, false for short
181
+ * @public
182
+ */
183
+ export function priceFromPercent(percent, entryPrice, leverage, isLong) {
184
+ if (entryPrice === 0 || leverage === 0) {
185
+ return 0;
186
+ }
187
+ const priceDelta = (percent / 100 / leverage) * entryPrice;
188
+ return isLong ? entryPrice + priceDelta : entryPrice - priceDelta;
189
+ }
190
+ /**
191
+ * Convert a target price to a percentage gain/loss.
192
+ *
193
+ * @param price - Target price
194
+ * @param entryPrice - Position entry price
195
+ * @param leverage - Position leverage multiplier
196
+ * @param isLong - True for long positions, false for short
197
+ * @public
198
+ */
199
+ export function percentFromPrice(price, entryPrice, leverage, isLong) {
200
+ if (entryPrice === 0 || leverage === 0) {
201
+ return 0;
202
+ }
203
+ const priceDiff = isLong ? price - entryPrice : entryPrice - price;
204
+ return (priceDiff / entryPrice) * leverage * 100;
205
+ }
206
+ /**
207
+ * Calculate realized PnL as a percentage of position value at close.
208
+ *
209
+ * @param realizedPnl - The realized profit/loss in USD
210
+ * @param size - Position size in asset units at close
211
+ * @param price - Price at close
212
+ * @returns PnL as a percentage of position value
213
+ * @public
214
+ */
215
+ export function calculateRealizedPnlPercent(realizedPnl, size, price) {
216
+ const positionValue = Math.abs(size) * price;
217
+ if (positionValue === 0) {
218
+ return 0;
219
+ }
220
+ return (realizedPnl / positionValue) * 100;
221
+ }
222
+ /**
223
+ * Walk one side of an orderbook to fill `sizeUsd` notional, accumulating base
224
+ * size and notional level-by-level to derive the VWAP fill. Levels are consumed
225
+ * in array order — the caller passes asks for a buy and bids for a sell, each
226
+ * already ordered best-price-first. When the book cannot absorb the full
227
+ * notional, the walk stops at the last level and flags `insufficientLiquidity`,
228
+ * returning the best obtainable fill.
229
+ *
230
+ * @public
231
+ */
232
+ export function walkOrderbook(levels, sizeUsd) {
233
+ let remaining = sizeUsd;
234
+ let baseSize = 0;
235
+ let filledNotional = 0;
236
+ for (const level of levels) {
237
+ if (remaining <= 0) {
238
+ break;
239
+ }
240
+ const price = Number.parseFloat(level.price);
241
+ const levelNotional = Number.parseFloat(level.size) * price;
242
+ const take = Math.min(remaining, levelNotional);
243
+ filledNotional += take;
244
+ baseSize += take / price;
245
+ remaining -= take;
246
+ }
247
+ return {
248
+ baseSize,
249
+ filledNotional,
250
+ vwap: baseSize === 0 ? 0 : filledNotional / baseSize,
251
+ insufficientLiquidity: remaining > 0,
252
+ };
253
+ }
254
+ /**
255
+ * Build a {@link Quote} from a resolved market, its live {@link MarketPrice},
256
+ * and its orderbook snapshot. Pure: walks the relevant side (buy → asks,
257
+ * sell → bids) for the VWAP fill, derives the price impact in basis points
258
+ * versus mark, applies the base taker fee on the filled notional, and carries
259
+ * the market's `funding` (`null` for spot, which has none).
260
+ *
261
+ * @public
262
+ */
263
+ export function buildQuote(input) {
264
+ const { market, price, side, sizeUsd, feeTier } = input;
265
+ const markPrice = Number.parseFloat(price.markPrice);
266
+ const levels = side === 'buy' ? input.asks : input.bids;
267
+ const walk = walkOrderbook(levels, sizeUsd);
268
+ const priceImpactBps = markPrice === 0 || walk.vwap === 0
269
+ ? 0
270
+ : Math.abs((walk.vwap - markPrice) / markPrice) * 10_000;
271
+ const feeUsd = estimateFees(walk.filledNotional, Number.parseFloat(feeTier.taker));
272
+ return {
273
+ provider: input.provider,
274
+ symbol: input.symbol,
275
+ marketId: market.id,
276
+ type: input.type,
277
+ side,
278
+ sizeUsd: sizeUsd.toString(),
279
+ baseSize: walk.baseSize.toString(),
280
+ markPrice: price.markPrice,
281
+ expectedFillPrice: walk.vwap.toString(),
282
+ priceImpactBps: priceImpactBps.toString(),
283
+ feeTier,
284
+ isDefaultFeeTier: true,
285
+ feeUsd: feeUsd.toString(),
286
+ funding: price.funding ?? null,
287
+ insufficientLiquidity: walk.insufficientLiquidity,
288
+ timestamp: input.timestamp,
289
+ };
290
+ }
291
+ //# sourceMappingURL=calculations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculations.js","sourceRoot":"","sources":["../../../src/utils/calculations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { AccountConfig } from '@lifi/perps-types';
2
+ import { ChainId } from '@lifi/types';
3
+ /**
4
+ * Perps provider keys that have a declared LI.FI deposit-target chain.
5
+ *
6
+ * @public
7
+ */
8
+ export type DepositProviderKey = AccountConfig['provider'];
9
+ /**
10
+ * Declared single source of truth: perps provider key → the LI.FI chain a
11
+ * client opens the swap widget against to fund that provider. Values come from
12
+ * the `@lifi/types` `ChainId` enum; never hardcode the numeric ids.
13
+ *
14
+ * @public
15
+ */
16
+ export declare const LIFI_DEPOSIT_CHAIN_BY_PROVIDER: Record<DepositProviderKey, ChainId>;
17
+ /**
18
+ * Resolve the LI.FI deposit-target chain for a perps provider key.
19
+ *
20
+ * @returns The `@lifi/types` `ChainId`, or `undefined` for a provider key with
21
+ * no declared deposit chain (the `/providers` wire key is an open `string`).
22
+ * @public
23
+ */
24
+ export declare function lifiDepositChainForProvider(providerKey: string): ChainId | undefined;
25
+ //# sourceMappingURL=depositChain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depositChain.d.ts","sourceRoot":"","sources":["../../../src/utils/depositChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,EAAE,MAAM,CACjD,kBAAkB,EAClB,OAAO,CAIR,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,GAClB,OAAO,GAAG,SAAS,CAErB"}
@@ -0,0 +1,23 @@
1
+ import { ChainId } from '@lifi/types';
2
+ /**
3
+ * Declared single source of truth: perps provider key → the LI.FI chain a
4
+ * client opens the swap widget against to fund that provider. Values come from
5
+ * the `@lifi/types` `ChainId` enum; never hardcode the numeric ids.
6
+ *
7
+ * @public
8
+ */
9
+ export const LIFI_DEPOSIT_CHAIN_BY_PROVIDER = {
10
+ hyperliquid: ChainId.HPL,
11
+ lighter: ChainId.LTR,
12
+ };
13
+ /**
14
+ * Resolve the LI.FI deposit-target chain for a perps provider key.
15
+ *
16
+ * @returns The `@lifi/types` `ChainId`, or `undefined` for a provider key with
17
+ * no declared deposit chain (the `/providers` wire key is an open `string`).
18
+ * @public
19
+ */
20
+ export function lifiDepositChainForProvider(providerKey) {
21
+ return LIFI_DEPOSIT_CHAIN_BY_PROVIDER[providerKey];
22
+ }
23
+ //# sourceMappingURL=depositChain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depositChain.js","sourceRoot":"","sources":["../../../src/utils/depositChain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AASrC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAGvC;IACF,WAAW,EAAE,OAAO,CAAC,GAAG;IACxB,OAAO,EAAE,OAAO,CAAC,GAAG;CACrB,CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,WAAmB;IAEnB,OAAO,8BAA8B,CAAC,WAAiC,CAAC,CAAA;AAC1E,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Block-explorer URL resolution.
3
+ *
4
+ * Provider plugins resolve a tx hash to a fully-qualified explorer URL during
5
+ * wire→domain mapping. The explorer target is a function of the settling chain,
6
+ * so the map is keyed by chain id rather than by provider.
7
+ */
8
+ /**
9
+ * Settling chains a perps tx can be observed on.
10
+ *
11
+ * @public
12
+ */
13
+ export declare const ExplorerChainId: {
14
+ readonly ETHEREUM: 1;
15
+ readonly ARBITRUM_ONE: 42161;
16
+ readonly LIGHTER: 304;
17
+ readonly HYPERLIQUID: 999;
18
+ };
19
+ /**
20
+ * Union of {@link ExplorerChainId} values.
21
+ *
22
+ * @public
23
+ */
24
+ export type ExplorerChainId = (typeof ExplorerChainId)[keyof typeof ExplorerChainId];
25
+ /**
26
+ * Build a fully-resolved block-explorer URL for a tx on a known chain.
27
+ *
28
+ * @returns The explorer URL, or `undefined` when the hash is empty (no on-chain
29
+ * tx to link).
30
+ * @public
31
+ */
32
+ export declare function explorerTxUrl(chainId: ExplorerChainId, txHash: string | undefined): string | undefined;
33
+ //# sourceMappingURL=explorer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explorer.d.ts","sourceRoot":"","sources":["../../../src/utils/explorer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;CAKlB,CAAA;AAEV;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACzB,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAA;AASxD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,MAAM,GAAG,SAAS,CAKpB"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Block-explorer URL resolution.
3
+ *
4
+ * Provider plugins resolve a tx hash to a fully-qualified explorer URL during
5
+ * wire→domain mapping. The explorer target is a function of the settling chain,
6
+ * so the map is keyed by chain id rather than by provider.
7
+ */
8
+ /**
9
+ * Settling chains a perps tx can be observed on.
10
+ *
11
+ * @public
12
+ */
13
+ export const ExplorerChainId = {
14
+ ETHEREUM: 1,
15
+ ARBITRUM_ONE: 42161,
16
+ LIGHTER: 304,
17
+ HYPERLIQUID: 999,
18
+ };
19
+ const TX_BASE_URL_BY_CHAIN = {
20
+ [ExplorerChainId.ETHEREUM]: 'https://etherscan.io/tx/',
21
+ [ExplorerChainId.ARBITRUM_ONE]: 'https://arbiscan.io/tx/',
22
+ [ExplorerChainId.LIGHTER]: 'https://app.lighter.xyz/explorer/logs/',
23
+ [ExplorerChainId.HYPERLIQUID]: 'https://app.hyperliquid.xyz/explorer/tx/',
24
+ };
25
+ /**
26
+ * Build a fully-resolved block-explorer URL for a tx on a known chain.
27
+ *
28
+ * @returns The explorer URL, or `undefined` when the hash is empty (no on-chain
29
+ * tx to link).
30
+ * @public
31
+ */
32
+ export function explorerTxUrl(chainId, txHash) {
33
+ if (!txHash) {
34
+ return undefined;
35
+ }
36
+ return `${TX_BASE_URL_BY_CHAIN[chainId]}${txHash}`;
37
+ }
38
+ //# sourceMappingURL=explorer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explorer.js","sourceRoot":"","sources":["../../../src/utils/explorer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,GAAG;IACZ,WAAW,EAAE,GAAG;CACR,CAAA;AAUV,MAAM,oBAAoB,GAAoC;IAC5D,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,0BAA0B;IACtD,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,yBAAyB;IACzD,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,wCAAwC;IACnE,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,0CAA0C;CAC1E,CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAwB,EACxB,MAA0B;IAE1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE,CAAA;AACpD,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { FillClassification } from '@lifi/perps-types';
2
+ /**
3
+ * Classify a perpetual fill into the Open/Close/Increase/Reduce/Switch
4
+ * taxonomy from `FillClassification`.
5
+ *
6
+ * @param startPosition Signed position held BEFORE this fill (`> 0` long,
7
+ * `< 0` short, `0` flat).
8
+ * @param side Hyperliquid-style: `'B'` for buy, anything else for sell.
9
+ * @param sz Unsigned fill size, parsed with `parseFloat`.
10
+ * @public
11
+ */
12
+ export declare function classifyFillFromPosition(startPosition: string, side: string, sz: string): FillClassification;
13
+ //# sourceMappingURL=fillClassification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fillClassification.d.ts","sourceRoot":"","sources":["../../../src/utils/fillClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,kBAAkB,CAkCpB"}
@@ -0,0 +1,44 @@
1
+ import { FillClassification } from '@lifi/perps-types';
2
+ /**
3
+ * Classify a perpetual fill into the Open/Close/Increase/Reduce/Switch
4
+ * taxonomy from `FillClassification`.
5
+ *
6
+ * @param startPosition Signed position held BEFORE this fill (`> 0` long,
7
+ * `< 0` short, `0` flat).
8
+ * @param side Hyperliquid-style: `'B'` for buy, anything else for sell.
9
+ * @param sz Unsigned fill size, parsed with `parseFloat`.
10
+ * @public
11
+ */
12
+ export function classifyFillFromPosition(startPosition, side, sz) {
13
+ const start = parseFloat(startPosition);
14
+ const delta = side === 'B' ? parseFloat(sz) : -parseFloat(sz);
15
+ const end = start + delta;
16
+ if (start === 0) {
17
+ return end > 0
18
+ ? FillClassification.OPENED_LONG
19
+ : FillClassification.OPENED_SHORT;
20
+ }
21
+ if (start > 0) {
22
+ if (end === 0) {
23
+ return FillClassification.CLOSED_LONG;
24
+ }
25
+ if (end < 0) {
26
+ return FillClassification.SWITCHED_SHORT;
27
+ }
28
+ if (end > start) {
29
+ return FillClassification.INCREASED_LONG;
30
+ }
31
+ return FillClassification.REDUCED_LONG;
32
+ }
33
+ if (end === 0) {
34
+ return FillClassification.CLOSED_SHORT;
35
+ }
36
+ if (end > 0) {
37
+ return FillClassification.SWITCHED_LONG;
38
+ }
39
+ if (end < start) {
40
+ return FillClassification.INCREASED_SHORT;
41
+ }
42
+ return FillClassification.REDUCED_SHORT;
43
+ }
44
+ //# sourceMappingURL=fillClassification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fillClassification.js","sourceRoot":"","sources":["../../../src/utils/fillClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACtC,aAAqB,EACrB,IAAY,EACZ,EAAU;IAEV,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAC7D,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAA;IAEzB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,GAAG,CAAC;YACZ,CAAC,CAAC,kBAAkB,CAAC,WAAW;YAChC,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAA;IACrC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,OAAO,kBAAkB,CAAC,WAAW,CAAA;QACvC,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACZ,OAAO,kBAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;YAChB,OAAO,kBAAkB,CAAC,cAAc,CAAA;QAC1C,CAAC;QACD,OAAO,kBAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IAED,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,OAAO,kBAAkB,CAAC,YAAY,CAAA;IACxC,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,kBAAkB,CAAC,aAAa,CAAA;IACzC,CAAC;IACD,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAChB,OAAO,kBAAkB,CAAC,eAAe,CAAA;IAC3C,CAAC;IACD,OAAO,kBAAkB,CAAC,aAAa,CAAA;AACzC,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Options shared by the human-facing display formatters.
3
+ *
4
+ * @public
5
+ */
6
+ export interface FormatOptions {
7
+ /** Fixed number of decimal places. Defaults are per-formatter. */
8
+ decimals?: number;
9
+ /** Rendered when the value is null/undefined/NaN/non-finite. Defaults to `'—'`. */
10
+ placeholder?: string;
11
+ /** BCP 47 locale controlling digit grouping and separators (e.g. `'en-US'`). */
12
+ locale?: string;
13
+ }
14
+ type FormatInput = number | string | null | undefined;
15
+ /**
16
+ * Format a USD value, unsigned: `$1,234.50`, `-$1,500.00`, `$0.00`.
17
+ *
18
+ * Two decimal places with locale digit grouping. Negatives place the `-`
19
+ * before the `$`. Null/undefined/non-finite input renders the placeholder.
20
+ *
21
+ * @public
22
+ */
23
+ export declare function formatUsd(value: FormatInput, options?: FormatOptions): string;
24
+ /**
25
+ * Format a USD value with an explicit sign: `+$1.43`, `-$1.43`, `$0.00`.
26
+ *
27
+ * The sign is derived after rounding, so sub-cent magnitudes render `$0.00`
28
+ * (no spurious `+`/`-`). Null/undefined/non-finite input renders the
29
+ * placeholder.
30
+ *
31
+ * @public
32
+ */
33
+ export declare function formatSignedUsd(value: FormatInput, options?: FormatOptions): string;
34
+ /**
35
+ * Format a percentage with an explicit sign and no grouping: `+1.43%`,
36
+ * `-1.43%`, `0.00%`.
37
+ *
38
+ * The sign is derived after rounding, so sub-threshold magnitudes render
39
+ * `0.00%`. Null/undefined/non-finite input renders the placeholder.
40
+ *
41
+ * @public
42
+ */
43
+ export declare function formatSignedPercent(value: FormatInput, options?: FormatOptions): string;
44
+ /**
45
+ * Format a price, unsigned, with decimals auto-detected from magnitude:
46
+ * `$1,234.50`, `$0.1234`, `-$1,500.00`.
47
+ *
48
+ * Decimals follow {@link autoDecimals} unless `options.decimals` is given.
49
+ * Grouping applies once the absolute value reaches 1000. Negatives place the
50
+ * `-` before the `$`. Null/undefined/non-finite input renders the placeholder.
51
+ *
52
+ * @public
53
+ */
54
+ export declare function formatPrice(value: FormatInput, options?: FormatOptions): string;
55
+ /**
56
+ * Format a USD value compactly with a `B`/`M`/`K` suffix: `$1.23B`, `$45.6M`,
57
+ * `$789.0K`, `$12.34`.
58
+ *
59
+ * Negatives place the `-` before the `$`. Null/undefined/non-finite input
60
+ * renders the placeholder.
61
+ *
62
+ * @public
63
+ */
64
+ export declare function formatCompactUsd(value: FormatInput, options?: FormatOptions): string;
65
+ export {};
66
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/utils/format.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAID,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;AA+DrD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAQR;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAcR;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAcR;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAUR;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAkBR"}