@lifi/perps-sdk 0.0.0-preview-64fca0d

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 (675) hide show
  1. package/LICENSE +201 -0
  2. package/dist/cjs/client/PerpsClient.d.ts +63 -0
  3. package/dist/cjs/client/PerpsClient.d.ts.map +1 -0
  4. package/dist/cjs/client/PerpsClient.js +269 -0
  5. package/dist/cjs/client/PerpsClient.js.map +1 -0
  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 +10 -0
  11. package/dist/cjs/client/createPerpsClient.d.ts.map +1 -0
  12. package/dist/cjs/client/createPerpsClient.js +54 -0
  13. package/dist/cjs/client/createPerpsClient.js.map +1 -0
  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 +8 -0
  19. package/dist/cjs/errors/PerpsError.d.ts.map +1 -0
  20. package/dist/cjs/errors/PerpsError.js +15 -0
  21. package/dist/cjs/errors/PerpsError.js.map +1 -0
  22. package/dist/cjs/errors/constants.d.ts +5 -0
  23. package/dist/cjs/errors/constants.d.ts.map +1 -0
  24. package/dist/cjs/errors/constants.js +9 -0
  25. package/dist/cjs/errors/constants.js.map +1 -0
  26. package/dist/cjs/index.d.ts +78 -0
  27. package/dist/cjs/index.d.ts.map +1 -0
  28. package/dist/cjs/index.js +168 -0
  29. package/dist/cjs/index.js.map +1 -0
  30. package/dist/cjs/package.json +1 -0
  31. package/dist/cjs/registry/assetRegistry.d.ts +11 -0
  32. package/dist/cjs/registry/assetRegistry.d.ts.map +1 -0
  33. package/dist/cjs/registry/assetRegistry.js +39 -0
  34. package/dist/cjs/registry/assetRegistry.js.map +1 -0
  35. package/dist/cjs/registry/marketRegistry.d.ts +13 -0
  36. package/dist/cjs/registry/marketRegistry.d.ts.map +1 -0
  37. package/dist/cjs/registry/marketRegistry.js +58 -0
  38. package/dist/cjs/registry/marketRegistry.js.map +1 -0
  39. package/dist/cjs/registry/referenceDataRegistry.d.ts +20 -0
  40. package/dist/cjs/registry/referenceDataRegistry.d.ts.map +1 -0
  41. package/dist/cjs/registry/referenceDataRegistry.js +59 -0
  42. package/dist/cjs/registry/referenceDataRegistry.js.map +1 -0
  43. package/dist/cjs/services/createAction.d.ts +13 -0
  44. package/dist/cjs/services/createAction.d.ts.map +1 -0
  45. package/dist/cjs/services/createAction.js +17 -0
  46. package/dist/cjs/services/createAction.js.map +1 -0
  47. package/dist/cjs/services/executeAction.d.ts +13 -0
  48. package/dist/cjs/services/executeAction.d.ts.map +1 -0
  49. package/dist/cjs/services/executeAction.js +18 -0
  50. package/dist/cjs/services/executeAction.js.map +1 -0
  51. package/dist/cjs/services/getAccount.d.ts +10 -0
  52. package/dist/cjs/services/getAccount.d.ts.map +1 -0
  53. package/dist/cjs/services/getAccount.js +8 -0
  54. package/dist/cjs/services/getAccount.js.map +1 -0
  55. package/dist/cjs/services/getActivity.d.ts +15 -0
  56. package/dist/cjs/services/getActivity.d.ts.map +1 -0
  57. package/dist/cjs/services/getActivity.js +15 -0
  58. package/dist/cjs/services/getActivity.js.map +1 -0
  59. package/dist/cjs/services/getAssets.d.ts +8 -0
  60. package/dist/cjs/services/getAssets.d.ts.map +1 -0
  61. package/dist/cjs/services/getAssets.js +11 -0
  62. package/dist/cjs/services/getAssets.js.map +1 -0
  63. package/dist/cjs/services/getFills.d.ts +14 -0
  64. package/dist/cjs/services/getFills.d.ts.map +1 -0
  65. package/dist/cjs/services/getFills.js +14 -0
  66. package/dist/cjs/services/getFills.js.map +1 -0
  67. package/dist/cjs/services/getMarket.d.ts +9 -0
  68. package/dist/cjs/services/getMarket.d.ts.map +1 -0
  69. package/dist/cjs/services/getMarket.js +13 -0
  70. package/dist/cjs/services/getMarket.js.map +1 -0
  71. package/dist/cjs/services/getMarkets.d.ts +9 -0
  72. package/dist/cjs/services/getMarkets.d.ts.map +1 -0
  73. package/dist/cjs/services/getMarkets.js +12 -0
  74. package/dist/cjs/services/getMarkets.js.map +1 -0
  75. package/dist/cjs/services/getMeta.d.ts +5 -0
  76. package/dist/cjs/services/getMeta.d.ts.map +1 -0
  77. package/dist/cjs/services/getMeta.js +8 -0
  78. package/dist/cjs/services/getMeta.js.map +1 -0
  79. package/dist/cjs/services/getOhlcv.d.ts +13 -0
  80. package/dist/cjs/services/getOhlcv.d.ts.map +1 -0
  81. package/dist/cjs/services/getOhlcv.js +16 -0
  82. package/dist/cjs/services/getOhlcv.js.map +1 -0
  83. package/dist/cjs/services/getOrder.d.ts +11 -0
  84. package/dist/cjs/services/getOrder.d.ts.map +1 -0
  85. package/dist/cjs/services/getOrder.js +8 -0
  86. package/dist/cjs/services/getOrder.js.map +1 -0
  87. package/dist/cjs/services/getOrderbook.d.ts +10 -0
  88. package/dist/cjs/services/getOrderbook.d.ts.map +1 -0
  89. package/dist/cjs/services/getOrderbook.js +13 -0
  90. package/dist/cjs/services/getOrderbook.js.map +1 -0
  91. package/dist/cjs/services/getOrders.d.ts +13 -0
  92. package/dist/cjs/services/getOrders.d.ts.map +1 -0
  93. package/dist/cjs/services/getOrders.js +13 -0
  94. package/dist/cjs/services/getOrders.js.map +1 -0
  95. package/dist/cjs/services/getPositions.d.ts +13 -0
  96. package/dist/cjs/services/getPositions.d.ts.map +1 -0
  97. package/dist/cjs/services/getPositions.js +13 -0
  98. package/dist/cjs/services/getPositions.js.map +1 -0
  99. package/dist/cjs/services/getPrices.d.ts +9 -0
  100. package/dist/cjs/services/getPrices.d.ts.map +1 -0
  101. package/dist/cjs/services/getPrices.js +12 -0
  102. package/dist/cjs/services/getPrices.js.map +1 -0
  103. package/dist/cjs/services/getProviders.d.ts +5 -0
  104. package/dist/cjs/services/getProviders.d.ts.map +1 -0
  105. package/dist/cjs/services/getProviders.js +8 -0
  106. package/dist/cjs/services/getProviders.js.map +1 -0
  107. package/dist/cjs/services/getQuote.d.ts +12 -0
  108. package/dist/cjs/services/getQuote.d.ts.map +1 -0
  109. package/dist/cjs/services/getQuote.js +13 -0
  110. package/dist/cjs/services/getQuote.js.map +1 -0
  111. package/dist/cjs/services/getTermsAcceptance.d.ts +6 -0
  112. package/dist/cjs/services/getTermsAcceptance.d.ts.map +1 -0
  113. package/dist/cjs/services/getTermsAcceptance.js +9 -0
  114. package/dist/cjs/services/getTermsAcceptance.js.map +1 -0
  115. package/dist/cjs/services/resolveQuote.d.ts +6 -0
  116. package/dist/cjs/services/resolveQuote.d.ts.map +1 -0
  117. package/dist/cjs/services/resolveQuote.js +36 -0
  118. package/dist/cjs/services/resolveQuote.js.map +1 -0
  119. package/dist/cjs/services/resolveSubscribeQuote.d.ts +6 -0
  120. package/dist/cjs/services/resolveSubscribeQuote.d.ts.map +1 -0
  121. package/dist/cjs/services/resolveSubscribeQuote.js +63 -0
  122. package/dist/cjs/services/resolveSubscribeQuote.js.map +1 -0
  123. package/dist/cjs/storage/parseStoredRecord.d.ts +4 -0
  124. package/dist/cjs/storage/parseStoredRecord.d.ts.map +1 -0
  125. package/dist/cjs/storage/parseStoredRecord.js +26 -0
  126. package/dist/cjs/storage/parseStoredRecord.js.map +1 -0
  127. package/dist/cjs/storage/storage.d.ts +4 -0
  128. package/dist/cjs/storage/storage.d.ts.map +1 -0
  129. package/dist/cjs/storage/storage.js +47 -0
  130. package/dist/cjs/storage/storage.js.map +1 -0
  131. package/dist/cjs/storage/types.d.ts +6 -0
  132. package/dist/cjs/storage/types.d.ts.map +1 -0
  133. package/dist/cjs/storage/types.js +3 -0
  134. package/dist/cjs/storage/types.js.map +1 -0
  135. package/dist/cjs/transport/fetchWithRetry.d.ts +8 -0
  136. package/dist/cjs/transport/fetchWithRetry.d.ts.map +1 -0
  137. package/dist/cjs/transport/fetchWithRetry.js +81 -0
  138. package/dist/cjs/transport/fetchWithRetry.js.map +1 -0
  139. package/dist/cjs/transport/request.d.ts +8 -0
  140. package/dist/cjs/transport/request.d.ts.map +1 -0
  141. package/dist/cjs/transport/request.js +75 -0
  142. package/dist/cjs/transport/request.js.map +1 -0
  143. package/dist/cjs/transport/retryPolicy.d.ts +37 -0
  144. package/dist/cjs/transport/retryPolicy.d.ts.map +1 -0
  145. package/dist/cjs/transport/retryPolicy.js +79 -0
  146. package/dist/cjs/transport/retryPolicy.js.map +1 -0
  147. package/dist/cjs/types/api.d.ts +85 -0
  148. package/dist/cjs/types/api.d.ts.map +1 -0
  149. package/dist/cjs/types/api.js +3 -0
  150. package/dist/cjs/types/api.js.map +1 -0
  151. package/dist/cjs/types/config.d.ts +26 -0
  152. package/dist/cjs/types/config.d.ts.map +1 -0
  153. package/dist/cjs/types/config.js +3 -0
  154. package/dist/cjs/types/config.js.map +1 -0
  155. package/dist/cjs/types/provider.d.ts +84 -0
  156. package/dist/cjs/types/provider.d.ts.map +1 -0
  157. package/dist/cjs/types/provider.js +3 -0
  158. package/dist/cjs/types/provider.js.map +1 -0
  159. package/dist/cjs/utils/accountSummary.d.ts +3 -0
  160. package/dist/cjs/utils/accountSummary.d.ts.map +1 -0
  161. package/dist/cjs/utils/accountSummary.js +25 -0
  162. package/dist/cjs/utils/accountSummary.js.map +1 -0
  163. package/dist/cjs/utils/assertNever.d.ts +2 -0
  164. package/dist/cjs/utils/assertNever.d.ts.map +1 -0
  165. package/dist/cjs/utils/assertNever.js +7 -0
  166. package/dist/cjs/utils/assertNever.js.map +1 -0
  167. package/dist/cjs/utils/calculations.d.ts +51 -0
  168. package/dist/cjs/utils/calculations.d.ts.map +1 -0
  169. package/dist/cjs/utils/calculations.js +149 -0
  170. package/dist/cjs/utils/calculations.js.map +1 -0
  171. package/dist/cjs/utils/depositChain.d.ts +6 -0
  172. package/dist/cjs/utils/depositChain.d.ts.map +1 -0
  173. package/dist/cjs/utils/depositChain.js +13 -0
  174. package/dist/cjs/utils/depositChain.js.map +1 -0
  175. package/dist/cjs/utils/explorer.d.ts +9 -0
  176. package/dist/cjs/utils/explorer.d.ts.map +1 -0
  177. package/dist/cjs/utils/explorer.js +23 -0
  178. package/dist/cjs/utils/explorer.js.map +1 -0
  179. package/dist/cjs/utils/fillClassification.d.ts +3 -0
  180. package/dist/cjs/utils/fillClassification.d.ts.map +1 -0
  181. package/dist/cjs/utils/fillClassification.js +37 -0
  182. package/dist/cjs/utils/fillClassification.js.map +1 -0
  183. package/dist/cjs/utils/format.d.ts +13 -0
  184. package/dist/cjs/utils/format.d.ts.map +1 -0
  185. package/dist/cjs/utils/format.js +117 -0
  186. package/dist/cjs/utils/format.js.map +1 -0
  187. package/dist/cjs/utils/orderClassification.d.ts +10 -0
  188. package/dist/cjs/utils/orderClassification.d.ts.map +1 -0
  189. package/dist/cjs/utils/orderClassification.js +49 -0
  190. package/dist/cjs/utils/orderClassification.js.map +1 -0
  191. package/dist/cjs/utils/orderMath.d.ts +6 -0
  192. package/dist/cjs/utils/orderMath.d.ts.map +1 -0
  193. package/dist/cjs/utils/orderMath.js +71 -0
  194. package/dist/cjs/utils/orderMath.js.map +1 -0
  195. package/dist/cjs/utils/parse.d.ts +2 -0
  196. package/dist/cjs/utils/parse.d.ts.map +1 -0
  197. package/dist/cjs/utils/parse.js +14 -0
  198. package/dist/cjs/utils/parse.js.map +1 -0
  199. package/dist/cjs/utils/positionMath.d.ts +32 -0
  200. package/dist/cjs/utils/positionMath.d.ts.map +1 -0
  201. package/dist/cjs/utils/positionMath.js +52 -0
  202. package/dist/cjs/utils/positionMath.js.map +1 -0
  203. package/dist/cjs/utils/signTypedData.d.ts +5 -0
  204. package/dist/cjs/utils/signTypedData.d.ts.map +1 -0
  205. package/dist/cjs/utils/signTypedData.js +23 -0
  206. package/dist/cjs/utils/signTypedData.js.map +1 -0
  207. package/dist/cjs/utils/sleep.d.ts +2 -0
  208. package/dist/cjs/utils/sleep.d.ts.map +1 -0
  209. package/dist/cjs/utils/sleep.js +6 -0
  210. package/dist/cjs/utils/sleep.js.map +1 -0
  211. package/dist/cjs/utils/units.d.ts +3 -0
  212. package/dist/cjs/utils/units.d.ts.map +1 -0
  213. package/dist/cjs/utils/units.js +18 -0
  214. package/dist/cjs/utils/units.js.map +1 -0
  215. package/dist/cjs/utils/validation.d.ts +2 -0
  216. package/dist/cjs/utils/validation.d.ts.map +1 -0
  217. package/dist/cjs/utils/validation.js +16 -0
  218. package/dist/cjs/utils/validation.js.map +1 -0
  219. package/dist/cjs/version.d.ts +3 -0
  220. package/dist/cjs/version.d.ts.map +1 -0
  221. package/dist/cjs/version.js +6 -0
  222. package/dist/cjs/version.js.map +1 -0
  223. package/dist/cjs/websocket/PerpsWsClient.d.ts +27 -0
  224. package/dist/cjs/websocket/PerpsWsClient.d.ts.map +1 -0
  225. package/dist/cjs/websocket/PerpsWsClient.js +84 -0
  226. package/dist/cjs/websocket/PerpsWsClient.js.map +1 -0
  227. package/dist/cjs/websocket/ReconnectingWebSocket.d.ts +52 -0
  228. package/dist/cjs/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  229. package/dist/cjs/websocket/ReconnectingWebSocket.js +213 -0
  230. package/dist/cjs/websocket/ReconnectingWebSocket.js.map +1 -0
  231. package/dist/cjs/websocket/WsProviderBase.d.ts +31 -0
  232. package/dist/cjs/websocket/WsProviderBase.d.ts.map +1 -0
  233. package/dist/cjs/websocket/WsProviderBase.js +197 -0
  234. package/dist/cjs/websocket/WsProviderBase.js.map +1 -0
  235. package/dist/cjs/websocket/cachePromise.d.ts +2 -0
  236. package/dist/cjs/websocket/cachePromise.d.ts.map +1 -0
  237. package/dist/cjs/websocket/cachePromise.js +18 -0
  238. package/dist/cjs/websocket/cachePromise.js.map +1 -0
  239. package/dist/cjs/websocket/types.d.ts +15 -0
  240. package/dist/cjs/websocket/types.d.ts.map +1 -0
  241. package/dist/cjs/websocket/types.js +3 -0
  242. package/dist/cjs/websocket/types.js.map +1 -0
  243. package/dist/cjs/websocket/wsLog.d.ts +10 -0
  244. package/dist/cjs/websocket/wsLog.d.ts.map +1 -0
  245. package/dist/cjs/websocket/wsLog.js +31 -0
  246. package/dist/cjs/websocket/wsLog.js.map +1 -0
  247. package/dist/esm/client/PerpsClient.d.ts +285 -0
  248. package/dist/esm/client/PerpsClient.d.ts.map +1 -0
  249. package/dist/esm/client/PerpsClient.js +498 -0
  250. package/dist/esm/client/PerpsClient.js.map +1 -0
  251. package/dist/esm/client/bindProvider.d.ts +13 -0
  252. package/dist/esm/client/bindProvider.d.ts.map +1 -0
  253. package/dist/esm/client/bindProvider.js +16 -0
  254. package/dist/esm/client/bindProvider.js.map +1 -0
  255. package/dist/esm/client/createPerpsClient.d.ts +37 -0
  256. package/dist/esm/client/createPerpsClient.d.ts.map +1 -0
  257. package/dist/esm/client/createPerpsClient.js +76 -0
  258. package/dist/esm/client/createPerpsClient.js.map +1 -0
  259. package/dist/esm/client/requireProvider.d.ts +12 -0
  260. package/dist/esm/client/requireProvider.d.ts.map +1 -0
  261. package/dist/esm/client/requireProvider.js +22 -0
  262. package/dist/esm/client/requireProvider.js.map +1 -0
  263. package/dist/esm/errors/PerpsError.d.ts +16 -0
  264. package/dist/esm/errors/PerpsError.d.ts.map +1 -0
  265. package/dist/esm/errors/PerpsError.js +19 -0
  266. package/dist/esm/errors/PerpsError.js.map +1 -0
  267. package/dist/esm/errors/constants.d.ts +11 -0
  268. package/dist/esm/errors/constants.d.ts.map +1 -0
  269. package/dist/esm/errors/constants.js +12 -0
  270. package/dist/esm/errors/constants.js.map +1 -0
  271. package/dist/esm/index.d.ts +86 -0
  272. package/dist/esm/index.d.ts.map +1 -0
  273. package/dist/esm/index.js +63 -0
  274. package/dist/esm/index.js.map +1 -0
  275. package/dist/esm/package.json +1 -0
  276. package/dist/esm/registry/assetRegistry.d.ts +25 -0
  277. package/dist/esm/registry/assetRegistry.d.ts.map +1 -0
  278. package/dist/esm/registry/assetRegistry.js +48 -0
  279. package/dist/esm/registry/assetRegistry.js.map +1 -0
  280. package/dist/esm/registry/marketRegistry.d.ts +42 -0
  281. package/dist/esm/registry/marketRegistry.d.ts.map +1 -0
  282. package/dist/esm/registry/marketRegistry.js +81 -0
  283. package/dist/esm/registry/marketRegistry.js.map +1 -0
  284. package/dist/esm/registry/referenceDataRegistry.d.ts +44 -0
  285. package/dist/esm/registry/referenceDataRegistry.d.ts.map +1 -0
  286. package/dist/esm/registry/referenceDataRegistry.js +79 -0
  287. package/dist/esm/registry/referenceDataRegistry.js.map +1 -0
  288. package/dist/esm/services/createAction.d.ts +26 -0
  289. package/dist/esm/services/createAction.d.ts.map +1 -0
  290. package/dist/esm/services/createAction.js +22 -0
  291. package/dist/esm/services/createAction.js.map +1 -0
  292. package/dist/esm/services/executeAction.d.ts +26 -0
  293. package/dist/esm/services/executeAction.d.ts.map +1 -0
  294. package/dist/esm/services/executeAction.js +26 -0
  295. package/dist/esm/services/executeAction.js.map +1 -0
  296. package/dist/esm/services/getAccount.d.ts +35 -0
  297. package/dist/esm/services/getAccount.d.ts.map +1 -0
  298. package/dist/esm/services/getAccount.js +25 -0
  299. package/dist/esm/services/getAccount.js.map +1 -0
  300. package/dist/esm/services/getActivity.d.ts +39 -0
  301. package/dist/esm/services/getActivity.d.ts.map +1 -0
  302. package/dist/esm/services/getActivity.js +29 -0
  303. package/dist/esm/services/getActivity.js.map +1 -0
  304. package/dist/esm/services/getAssets.d.ts +27 -0
  305. package/dist/esm/services/getAssets.d.ts.map +1 -0
  306. package/dist/esm/services/getAssets.js +22 -0
  307. package/dist/esm/services/getAssets.js.map +1 -0
  308. package/dist/esm/services/getFills.d.ts +38 -0
  309. package/dist/esm/services/getFills.d.ts.map +1 -0
  310. package/dist/esm/services/getFills.js +28 -0
  311. package/dist/esm/services/getFills.js.map +1 -0
  312. package/dist/esm/services/getMarket.d.ts +34 -0
  313. package/dist/esm/services/getMarket.d.ts.map +1 -0
  314. package/dist/esm/services/getMarket.js +25 -0
  315. package/dist/esm/services/getMarket.js.map +1 -0
  316. package/dist/esm/services/getMarkets.d.ts +28 -0
  317. package/dist/esm/services/getMarkets.d.ts.map +1 -0
  318. package/dist/esm/services/getMarkets.js +22 -0
  319. package/dist/esm/services/getMarkets.js.map +1 -0
  320. package/dist/esm/services/getMeta.d.ts +21 -0
  321. package/dist/esm/services/getMeta.d.ts.map +1 -0
  322. package/dist/esm/services/getMeta.js +21 -0
  323. package/dist/esm/services/getMeta.js.map +1 -0
  324. package/dist/esm/services/getOhlcv.d.ts +36 -0
  325. package/dist/esm/services/getOhlcv.d.ts.map +1 -0
  326. package/dist/esm/services/getOhlcv.js +28 -0
  327. package/dist/esm/services/getOhlcv.js.map +1 -0
  328. package/dist/esm/services/getOrder.d.ts +33 -0
  329. package/dist/esm/services/getOrder.d.ts.map +1 -0
  330. package/dist/esm/services/getOrder.js +22 -0
  331. package/dist/esm/services/getOrder.js.map +1 -0
  332. package/dist/esm/services/getOrderbook.d.ts +24 -0
  333. package/dist/esm/services/getOrderbook.d.ts.map +1 -0
  334. package/dist/esm/services/getOrderbook.js +17 -0
  335. package/dist/esm/services/getOrderbook.js.map +1 -0
  336. package/dist/esm/services/getOrders.d.ts +35 -0
  337. package/dist/esm/services/getOrders.d.ts.map +1 -0
  338. package/dist/esm/services/getOrders.js +26 -0
  339. package/dist/esm/services/getOrders.js.map +1 -0
  340. package/dist/esm/services/getPositions.d.ts +35 -0
  341. package/dist/esm/services/getPositions.d.ts.map +1 -0
  342. package/dist/esm/services/getPositions.js +26 -0
  343. package/dist/esm/services/getPositions.js.map +1 -0
  344. package/dist/esm/services/getPrices.d.ts +21 -0
  345. package/dist/esm/services/getPrices.d.ts.map +1 -0
  346. package/dist/esm/services/getPrices.js +15 -0
  347. package/dist/esm/services/getPrices.js.map +1 -0
  348. package/dist/esm/services/getProviders.d.ts +22 -0
  349. package/dist/esm/services/getProviders.d.ts.map +1 -0
  350. package/dist/esm/services/getProviders.js +22 -0
  351. package/dist/esm/services/getProviders.js.map +1 -0
  352. package/dist/esm/services/getQuote.d.ts +42 -0
  353. package/dist/esm/services/getQuote.d.ts.map +1 -0
  354. package/dist/esm/services/getQuote.js +33 -0
  355. package/dist/esm/services/getQuote.js.map +1 -0
  356. package/dist/esm/services/getTermsAcceptance.d.ts +26 -0
  357. package/dist/esm/services/getTermsAcceptance.d.ts.map +1 -0
  358. package/dist/esm/services/getTermsAcceptance.js +26 -0
  359. package/dist/esm/services/getTermsAcceptance.js.map +1 -0
  360. package/dist/esm/services/resolveQuote.d.ts +26 -0
  361. package/dist/esm/services/resolveQuote.d.ts.map +1 -0
  362. package/dist/esm/services/resolveQuote.js +52 -0
  363. package/dist/esm/services/resolveQuote.js.map +1 -0
  364. package/dist/esm/services/resolveSubscribeQuote.d.ts +31 -0
  365. package/dist/esm/services/resolveSubscribeQuote.d.ts.map +1 -0
  366. package/dist/esm/services/resolveSubscribeQuote.js +84 -0
  367. package/dist/esm/services/resolveSubscribeQuote.js.map +1 -0
  368. package/dist/esm/storage/parseStoredRecord.d.ts +29 -0
  369. package/dist/esm/storage/parseStoredRecord.d.ts.map +1 -0
  370. package/dist/esm/storage/parseStoredRecord.js +47 -0
  371. package/dist/esm/storage/parseStoredRecord.js.map +1 -0
  372. package/dist/esm/storage/storage.d.ts +15 -0
  373. package/dist/esm/storage/storage.d.ts.map +1 -0
  374. package/dist/esm/storage/storage.js +56 -0
  375. package/dist/esm/storage/storage.js.map +1 -0
  376. package/dist/esm/storage/types.d.ts +14 -0
  377. package/dist/esm/storage/types.d.ts.map +1 -0
  378. package/dist/esm/storage/types.js +2 -0
  379. package/dist/esm/storage/types.js.map +1 -0
  380. package/dist/esm/transport/fetchWithRetry.d.ts +22 -0
  381. package/dist/esm/transport/fetchWithRetry.d.ts.map +1 -0
  382. package/dist/esm/transport/fetchWithRetry.js +87 -0
  383. package/dist/esm/transport/fetchWithRetry.js.map +1 -0
  384. package/dist/esm/transport/request.d.ts +25 -0
  385. package/dist/esm/transport/request.d.ts.map +1 -0
  386. package/dist/esm/transport/request.js +82 -0
  387. package/dist/esm/transport/request.js.map +1 -0
  388. package/dist/esm/transport/retryPolicy.d.ts +106 -0
  389. package/dist/esm/transport/retryPolicy.d.ts.map +1 -0
  390. package/dist/esm/transport/retryPolicy.js +99 -0
  391. package/dist/esm/transport/retryPolicy.js.map +1 -0
  392. package/dist/esm/types/api.d.ts +214 -0
  393. package/dist/esm/types/api.d.ts.map +1 -0
  394. package/dist/esm/types/api.js +2 -0
  395. package/dist/esm/types/api.js.map +1 -0
  396. package/dist/esm/types/config.d.ts +70 -0
  397. package/dist/esm/types/config.d.ts.map +1 -0
  398. package/dist/esm/types/config.js +2 -0
  399. package/dist/esm/types/config.js.map +1 -0
  400. package/dist/esm/types/provider.d.ts +330 -0
  401. package/dist/esm/types/provider.d.ts.map +1 -0
  402. package/dist/esm/types/provider.js +2 -0
  403. package/dist/esm/types/provider.js.map +1 -0
  404. package/dist/esm/utils/accountSummary.d.ts +13 -0
  405. package/dist/esm/utils/accountSummary.d.ts.map +1 -0
  406. package/dist/esm/utils/accountSummary.js +32 -0
  407. package/dist/esm/utils/accountSummary.js.map +1 -0
  408. package/dist/esm/utils/assertNever.d.ts +20 -0
  409. package/dist/esm/utils/assertNever.d.ts.map +1 -0
  410. package/dist/esm/utils/assertNever.js +22 -0
  411. package/dist/esm/utils/assertNever.js.map +1 -0
  412. package/dist/esm/utils/calculations.d.ts +223 -0
  413. package/dist/esm/utils/calculations.d.ts.map +1 -0
  414. package/dist/esm/utils/calculations.js +291 -0
  415. package/dist/esm/utils/calculations.js.map +1 -0
  416. package/dist/esm/utils/depositChain.d.ts +25 -0
  417. package/dist/esm/utils/depositChain.d.ts.map +1 -0
  418. package/dist/esm/utils/depositChain.js +23 -0
  419. package/dist/esm/utils/depositChain.js.map +1 -0
  420. package/dist/esm/utils/explorer.d.ts +33 -0
  421. package/dist/esm/utils/explorer.d.ts.map +1 -0
  422. package/dist/esm/utils/explorer.js +38 -0
  423. package/dist/esm/utils/explorer.js.map +1 -0
  424. package/dist/esm/utils/fillClassification.d.ts +13 -0
  425. package/dist/esm/utils/fillClassification.d.ts.map +1 -0
  426. package/dist/esm/utils/fillClassification.js +44 -0
  427. package/dist/esm/utils/fillClassification.js.map +1 -0
  428. package/dist/esm/utils/format.d.ts +66 -0
  429. package/dist/esm/utils/format.d.ts.map +1 -0
  430. package/dist/esm/utils/format.js +171 -0
  431. package/dist/esm/utils/format.js.map +1 -0
  432. package/dist/esm/utils/orderClassification.d.ts +47 -0
  433. package/dist/esm/utils/orderClassification.d.ts.map +1 -0
  434. package/dist/esm/utils/orderClassification.js +78 -0
  435. package/dist/esm/utils/orderClassification.js.map +1 -0
  436. package/dist/esm/utils/orderMath.d.ts +44 -0
  437. package/dist/esm/utils/orderMath.d.ts.map +1 -0
  438. package/dist/esm/utils/orderMath.js +103 -0
  439. package/dist/esm/utils/orderMath.js.map +1 -0
  440. package/dist/esm/utils/parse.d.ts +22 -0
  441. package/dist/esm/utils/parse.d.ts.map +1 -0
  442. package/dist/esm/utils/parse.js +31 -0
  443. package/dist/esm/utils/parse.js.map +1 -0
  444. package/dist/esm/utils/positionMath.d.ts +107 -0
  445. package/dist/esm/utils/positionMath.d.ts.map +1 -0
  446. package/dist/esm/utils/positionMath.js +119 -0
  447. package/dist/esm/utils/positionMath.js.map +1 -0
  448. package/dist/esm/utils/signTypedData.d.ts +18 -0
  449. package/dist/esm/utils/signTypedData.d.ts.map +1 -0
  450. package/dist/esm/utils/signTypedData.js +32 -0
  451. package/dist/esm/utils/signTypedData.js.map +1 -0
  452. package/dist/esm/utils/sleep.d.ts +7 -0
  453. package/dist/esm/utils/sleep.d.ts.map +1 -0
  454. package/dist/esm/utils/sleep.js +7 -0
  455. package/dist/esm/utils/sleep.js.map +1 -0
  456. package/dist/esm/utils/units.d.ts +27 -0
  457. package/dist/esm/utils/units.d.ts.map +1 -0
  458. package/dist/esm/utils/units.js +38 -0
  459. package/dist/esm/utils/units.js.map +1 -0
  460. package/dist/esm/utils/validation.d.ts +18 -0
  461. package/dist/esm/utils/validation.d.ts.map +1 -0
  462. package/dist/esm/utils/validation.js +29 -0
  463. package/dist/esm/utils/validation.js.map +1 -0
  464. package/dist/esm/version.d.ts +3 -0
  465. package/dist/esm/version.d.ts.map +1 -0
  466. package/dist/esm/version.js +3 -0
  467. package/dist/esm/version.js.map +1 -0
  468. package/dist/esm/websocket/PerpsWsClient.d.ts +100 -0
  469. package/dist/esm/websocket/PerpsWsClient.d.ts.map +1 -0
  470. package/dist/esm/websocket/PerpsWsClient.js +121 -0
  471. package/dist/esm/websocket/PerpsWsClient.js.map +1 -0
  472. package/dist/esm/websocket/ReconnectingWebSocket.d.ts +130 -0
  473. package/dist/esm/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  474. package/dist/esm/websocket/ReconnectingWebSocket.js +288 -0
  475. package/dist/esm/websocket/ReconnectingWebSocket.js.map +1 -0
  476. package/dist/esm/websocket/WsProviderBase.d.ts +89 -0
  477. package/dist/esm/websocket/WsProviderBase.d.ts.map +1 -0
  478. package/dist/esm/websocket/WsProviderBase.js +246 -0
  479. package/dist/esm/websocket/WsProviderBase.js.map +1 -0
  480. package/dist/esm/websocket/cachePromise.d.ts +14 -0
  481. package/dist/esm/websocket/cachePromise.d.ts.map +1 -0
  482. package/dist/esm/websocket/cachePromise.js +27 -0
  483. package/dist/esm/websocket/cachePromise.js.map +1 -0
  484. package/dist/esm/websocket/types.d.ts +60 -0
  485. package/dist/esm/websocket/types.d.ts.map +1 -0
  486. package/dist/esm/websocket/types.js +2 -0
  487. package/dist/esm/websocket/types.js.map +1 -0
  488. package/dist/esm/websocket/wsLog.d.ts +50 -0
  489. package/dist/esm/websocket/wsLog.d.ts.map +1 -0
  490. package/dist/esm/websocket/wsLog.js +68 -0
  491. package/dist/esm/websocket/wsLog.js.map +1 -0
  492. package/dist/types/client/PerpsClient.d.ts +285 -0
  493. package/dist/types/client/PerpsClient.d.ts.map +1 -0
  494. package/dist/types/client/bindProvider.d.ts +13 -0
  495. package/dist/types/client/bindProvider.d.ts.map +1 -0
  496. package/dist/types/client/createPerpsClient.d.ts +37 -0
  497. package/dist/types/client/createPerpsClient.d.ts.map +1 -0
  498. package/dist/types/client/requireProvider.d.ts +12 -0
  499. package/dist/types/client/requireProvider.d.ts.map +1 -0
  500. package/dist/types/errors/PerpsError.d.ts +16 -0
  501. package/dist/types/errors/PerpsError.d.ts.map +1 -0
  502. package/dist/types/errors/constants.d.ts +11 -0
  503. package/dist/types/errors/constants.d.ts.map +1 -0
  504. package/dist/types/index.d.ts +86 -0
  505. package/dist/types/index.d.ts.map +1 -0
  506. package/dist/types/registry/assetRegistry.d.ts +25 -0
  507. package/dist/types/registry/assetRegistry.d.ts.map +1 -0
  508. package/dist/types/registry/marketRegistry.d.ts +42 -0
  509. package/dist/types/registry/marketRegistry.d.ts.map +1 -0
  510. package/dist/types/registry/referenceDataRegistry.d.ts +44 -0
  511. package/dist/types/registry/referenceDataRegistry.d.ts.map +1 -0
  512. package/dist/types/services/createAction.d.ts +26 -0
  513. package/dist/types/services/createAction.d.ts.map +1 -0
  514. package/dist/types/services/executeAction.d.ts +26 -0
  515. package/dist/types/services/executeAction.d.ts.map +1 -0
  516. package/dist/types/services/getAccount.d.ts +35 -0
  517. package/dist/types/services/getAccount.d.ts.map +1 -0
  518. package/dist/types/services/getActivity.d.ts +39 -0
  519. package/dist/types/services/getActivity.d.ts.map +1 -0
  520. package/dist/types/services/getAssets.d.ts +27 -0
  521. package/dist/types/services/getAssets.d.ts.map +1 -0
  522. package/dist/types/services/getFills.d.ts +38 -0
  523. package/dist/types/services/getFills.d.ts.map +1 -0
  524. package/dist/types/services/getMarket.d.ts +34 -0
  525. package/dist/types/services/getMarket.d.ts.map +1 -0
  526. package/dist/types/services/getMarkets.d.ts +28 -0
  527. package/dist/types/services/getMarkets.d.ts.map +1 -0
  528. package/dist/types/services/getMeta.d.ts +21 -0
  529. package/dist/types/services/getMeta.d.ts.map +1 -0
  530. package/dist/types/services/getOhlcv.d.ts +36 -0
  531. package/dist/types/services/getOhlcv.d.ts.map +1 -0
  532. package/dist/types/services/getOrder.d.ts +33 -0
  533. package/dist/types/services/getOrder.d.ts.map +1 -0
  534. package/dist/types/services/getOrderbook.d.ts +24 -0
  535. package/dist/types/services/getOrderbook.d.ts.map +1 -0
  536. package/dist/types/services/getOrders.d.ts +35 -0
  537. package/dist/types/services/getOrders.d.ts.map +1 -0
  538. package/dist/types/services/getPositions.d.ts +35 -0
  539. package/dist/types/services/getPositions.d.ts.map +1 -0
  540. package/dist/types/services/getPrices.d.ts +21 -0
  541. package/dist/types/services/getPrices.d.ts.map +1 -0
  542. package/dist/types/services/getProviders.d.ts +22 -0
  543. package/dist/types/services/getProviders.d.ts.map +1 -0
  544. package/dist/types/services/getQuote.d.ts +42 -0
  545. package/dist/types/services/getQuote.d.ts.map +1 -0
  546. package/dist/types/services/getTermsAcceptance.d.ts +26 -0
  547. package/dist/types/services/getTermsAcceptance.d.ts.map +1 -0
  548. package/dist/types/services/resolveQuote.d.ts +26 -0
  549. package/dist/types/services/resolveQuote.d.ts.map +1 -0
  550. package/dist/types/services/resolveSubscribeQuote.d.ts +31 -0
  551. package/dist/types/services/resolveSubscribeQuote.d.ts.map +1 -0
  552. package/dist/types/storage/parseStoredRecord.d.ts +29 -0
  553. package/dist/types/storage/parseStoredRecord.d.ts.map +1 -0
  554. package/dist/types/storage/storage.d.ts +15 -0
  555. package/dist/types/storage/storage.d.ts.map +1 -0
  556. package/dist/types/storage/types.d.ts +14 -0
  557. package/dist/types/storage/types.d.ts.map +1 -0
  558. package/dist/types/transport/fetchWithRetry.d.ts +22 -0
  559. package/dist/types/transport/fetchWithRetry.d.ts.map +1 -0
  560. package/dist/types/transport/request.d.ts +25 -0
  561. package/dist/types/transport/request.d.ts.map +1 -0
  562. package/dist/types/transport/retryPolicy.d.ts +106 -0
  563. package/dist/types/transport/retryPolicy.d.ts.map +1 -0
  564. package/dist/types/types/api.d.ts +214 -0
  565. package/dist/types/types/api.d.ts.map +1 -0
  566. package/dist/types/types/config.d.ts +70 -0
  567. package/dist/types/types/config.d.ts.map +1 -0
  568. package/dist/types/types/provider.d.ts +330 -0
  569. package/dist/types/types/provider.d.ts.map +1 -0
  570. package/dist/types/utils/accountSummary.d.ts +13 -0
  571. package/dist/types/utils/accountSummary.d.ts.map +1 -0
  572. package/dist/types/utils/assertNever.d.ts +20 -0
  573. package/dist/types/utils/assertNever.d.ts.map +1 -0
  574. package/dist/types/utils/calculations.d.ts +223 -0
  575. package/dist/types/utils/calculations.d.ts.map +1 -0
  576. package/dist/types/utils/depositChain.d.ts +25 -0
  577. package/dist/types/utils/depositChain.d.ts.map +1 -0
  578. package/dist/types/utils/explorer.d.ts +33 -0
  579. package/dist/types/utils/explorer.d.ts.map +1 -0
  580. package/dist/types/utils/fillClassification.d.ts +13 -0
  581. package/dist/types/utils/fillClassification.d.ts.map +1 -0
  582. package/dist/types/utils/format.d.ts +66 -0
  583. package/dist/types/utils/format.d.ts.map +1 -0
  584. package/dist/types/utils/orderClassification.d.ts +47 -0
  585. package/dist/types/utils/orderClassification.d.ts.map +1 -0
  586. package/dist/types/utils/orderMath.d.ts +44 -0
  587. package/dist/types/utils/orderMath.d.ts.map +1 -0
  588. package/dist/types/utils/parse.d.ts +22 -0
  589. package/dist/types/utils/parse.d.ts.map +1 -0
  590. package/dist/types/utils/positionMath.d.ts +107 -0
  591. package/dist/types/utils/positionMath.d.ts.map +1 -0
  592. package/dist/types/utils/signTypedData.d.ts +18 -0
  593. package/dist/types/utils/signTypedData.d.ts.map +1 -0
  594. package/dist/types/utils/sleep.d.ts +7 -0
  595. package/dist/types/utils/sleep.d.ts.map +1 -0
  596. package/dist/types/utils/units.d.ts +27 -0
  597. package/dist/types/utils/units.d.ts.map +1 -0
  598. package/dist/types/utils/validation.d.ts +18 -0
  599. package/dist/types/utils/validation.d.ts.map +1 -0
  600. package/dist/types/version.d.ts +3 -0
  601. package/dist/types/version.d.ts.map +1 -0
  602. package/dist/types/websocket/PerpsWsClient.d.ts +100 -0
  603. package/dist/types/websocket/PerpsWsClient.d.ts.map +1 -0
  604. package/dist/types/websocket/ReconnectingWebSocket.d.ts +130 -0
  605. package/dist/types/websocket/ReconnectingWebSocket.d.ts.map +1 -0
  606. package/dist/types/websocket/WsProviderBase.d.ts +89 -0
  607. package/dist/types/websocket/WsProviderBase.d.ts.map +1 -0
  608. package/dist/types/websocket/cachePromise.d.ts +14 -0
  609. package/dist/types/websocket/cachePromise.d.ts.map +1 -0
  610. package/dist/types/websocket/types.d.ts +60 -0
  611. package/dist/types/websocket/types.d.ts.map +1 -0
  612. package/dist/types/websocket/wsLog.d.ts +50 -0
  613. package/dist/types/websocket/wsLog.d.ts.map +1 -0
  614. package/package.json +63 -0
  615. package/src/client/PerpsClient.ts +686 -0
  616. package/src/client/bindProvider.ts +24 -0
  617. package/src/client/createPerpsClient.ts +100 -0
  618. package/src/client/requireProvider.ts +29 -0
  619. package/src/errors/PerpsError.ts +23 -0
  620. package/src/errors/constants.ts +10 -0
  621. package/src/index.ts +215 -0
  622. package/src/registry/assetRegistry.ts +62 -0
  623. package/src/registry/marketRegistry.ts +100 -0
  624. package/src/registry/referenceDataRegistry.ts +95 -0
  625. package/src/services/createAction.ts +52 -0
  626. package/src/services/executeAction.ts +56 -0
  627. package/src/services/getAccount.ts +46 -0
  628. package/src/services/getActivity.ts +57 -0
  629. package/src/services/getAssets.ts +38 -0
  630. package/src/services/getFills.ts +55 -0
  631. package/src/services/getMarket.ts +52 -0
  632. package/src/services/getMarkets.ts +40 -0
  633. package/src/services/getMeta.ts +32 -0
  634. package/src/services/getOhlcv.ts +52 -0
  635. package/src/services/getOrder.ts +44 -0
  636. package/src/services/getOrderbook.ts +37 -0
  637. package/src/services/getOrders.ts +51 -0
  638. package/src/services/getPositions.ts +51 -0
  639. package/src/services/getPrices.ts +33 -0
  640. package/src/services/getProviders.ts +33 -0
  641. package/src/services/getQuote.ts +58 -0
  642. package/src/services/getTermsAcceptance.ts +34 -0
  643. package/src/services/resolveQuote.ts +90 -0
  644. package/src/services/resolveSubscribeQuote.ts +107 -0
  645. package/src/storage/parseStoredRecord.ts +55 -0
  646. package/src/storage/storage.ts +60 -0
  647. package/src/storage/types.ts +13 -0
  648. package/src/transport/fetchWithRetry.ts +116 -0
  649. package/src/transport/request.ts +123 -0
  650. package/src/transport/retryPolicy.ts +202 -0
  651. package/src/types/api.ts +239 -0
  652. package/src/types/config.ts +79 -0
  653. package/src/types/provider.ts +429 -0
  654. package/src/utils/accountSummary.ts +46 -0
  655. package/src/utils/assertNever.ts +23 -0
  656. package/src/utils/calculations.ts +407 -0
  657. package/src/utils/depositChain.ts +37 -0
  658. package/src/utils/explorer.ts +51 -0
  659. package/src/utils/fillClassification.ts +51 -0
  660. package/src/utils/format.ts +212 -0
  661. package/src/utils/orderClassification.ts +96 -0
  662. package/src/utils/orderMath.ts +134 -0
  663. package/src/utils/parse.ts +30 -0
  664. package/src/utils/positionMath.ts +149 -0
  665. package/src/utils/signTypedData.ts +41 -0
  666. package/src/utils/sleep.ts +7 -0
  667. package/src/utils/units.ts +39 -0
  668. package/src/utils/validation.ts +38 -0
  669. package/src/version.ts +2 -0
  670. package/src/websocket/PerpsWsClient.ts +204 -0
  671. package/src/websocket/ReconnectingWebSocket.ts +353 -0
  672. package/src/websocket/WsProviderBase.ts +333 -0
  673. package/src/websocket/cachePromise.ts +30 -0
  674. package/src/websocket/types.ts +75 -0
  675. package/src/websocket/wsLog.ts +82 -0
@@ -0,0 +1,130 @@
1
+ import type { WsConnectionStatus, WsStatusListener } from './types.js';
2
+ type WsEventMap = {
3
+ open: () => void;
4
+ close: (code: number, reason: string) => void;
5
+ error: (error: Event) => void;
6
+ message: (data: string) => void;
7
+ };
8
+ type WsEvent = keyof WsEventMap;
9
+ /**
10
+ * Options for {@link ReconnectingWebSocket}.
11
+ *
12
+ * @public
13
+ */
14
+ export interface ReconnectingWebSocketOptions {
15
+ maxRetries?: number;
16
+ pingIntervalMs?: number;
17
+ /**
18
+ * Keepalive frame sent every `pingIntervalMs` while the socket is open.
19
+ * Framing is venue-specific, so when omitted no keepalive is sent.
20
+ */
21
+ pingPayload?: string;
22
+ /**
23
+ * Stale-stream watchdog window. With `pingPayload` configured, the socket is
24
+ * force-reconnected when no inbound frame arrives within this window.
25
+ * Defaults to 3× `pingIntervalMs`.
26
+ */
27
+ staleWindowMs?: number;
28
+ }
29
+ /**
30
+ * A `WebSocket` transport that auto-reconnects with jittered exponential
31
+ * backoff (`partysocket` internals), buffers sends (bounded) while
32
+ * disconnected, keepalive-pings with the caller-supplied `pingPayload`, and
33
+ * force-reconnects a silently stale stream. Surfaces the
34
+ * {@link WsConnectionStatus} state machine: `reconnecting` on transient drops,
35
+ * terminal `disconnected` once the retry budget is exhausted.
36
+ *
37
+ * @public
38
+ */
39
+ export declare class ReconnectingWebSocket {
40
+ private readonly socket;
41
+ private readonly maxRetries;
42
+ private readonly pingIntervalMs;
43
+ private readonly pingPayload;
44
+ private readonly staleWindowMs;
45
+ private closed;
46
+ private reconnectRequested;
47
+ private lastCloseRetryCount;
48
+ private pingTimer;
49
+ private staleTimer;
50
+ private listeners;
51
+ private statusListeners;
52
+ private status;
53
+ private readyResolvers;
54
+ constructor(url: string, options?: ReconnectingWebSocketOptions);
55
+ private handleOpen;
56
+ private handleClose;
57
+ private handleError;
58
+ private handleMessage;
59
+ private setStatus;
60
+ private callListener;
61
+ private startPing;
62
+ private stopPing;
63
+ private armWatchdog;
64
+ private clearWatchdog;
65
+ /**
66
+ * Send `data`, buffering it (bounded) for replay when the socket is not yet
67
+ * open.
68
+ *
69
+ * @public
70
+ */
71
+ send(data: string): void;
72
+ /**
73
+ * Permanently close the socket and suppress further reconnection.
74
+ *
75
+ * @public
76
+ */
77
+ close(): void;
78
+ /**
79
+ * Drop the current connection (if any) and reconnect with a fresh retry
80
+ * budget. Recovers a socket that reached terminal `disconnected`: status
81
+ * returns to `reconnecting` and the normal backoff cycle restarts.
82
+ *
83
+ * @public
84
+ */
85
+ reconnect(): void;
86
+ /**
87
+ * Register a listener for a socket lifecycle event.
88
+ *
89
+ * @public
90
+ */
91
+ on<E extends WsEvent>(event: E, fn: WsEventMap[E]): void;
92
+ /**
93
+ * Remove a previously registered lifecycle-event listener.
94
+ *
95
+ * @public
96
+ */
97
+ off<E extends WsEvent>(event: E, fn: WsEventMap[E]): void;
98
+ /**
99
+ * Current connection health. `reconnecting` until the first open;
100
+ * `disconnected` once auto-reconnect is abandoned (terminal until
101
+ * {@link ReconnectingWebSocket.reconnect} is called).
102
+ *
103
+ * @public
104
+ */
105
+ getStatus(): WsConnectionStatus;
106
+ /**
107
+ * Register a connection-health listener. Fires on every status transition,
108
+ * including the terminal `disconnected` emitted on reconnect exhaustion.
109
+ *
110
+ * @public
111
+ */
112
+ onStatus(fn: WsStatusListener): void;
113
+ /**
114
+ * Remove a previously registered connection-health listener.
115
+ *
116
+ * @public
117
+ */
118
+ offStatus(fn: WsStatusListener): void;
119
+ /**
120
+ * Resolve once the socket is open; reject if it closes or exhausts retries
121
+ * before opening. When the socket is already terminally dead — `close()`d or
122
+ * reconnect-exhausted (`disconnected`) — rejects immediately rather than
123
+ * queuing a waiter nothing would ever settle.
124
+ *
125
+ * @public
126
+ */
127
+ ready(): Promise<void>;
128
+ }
129
+ export {};
130
+ //# sourceMappingURL=ReconnectingWebSocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReconnectingWebSocket.d.ts","sourceRoot":"","sources":["../../../src/websocket/ReconnectingWebSocket.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGtE,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC,CAAA;AAED,KAAK,OAAO,GAAG,MAAM,UAAU,CAAA;AAyB/B;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;;;;GASG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,mBAAmB,CAAQ;IACnC,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,SAAS,CAKhB;IACD,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,cAAc,CAGf;gBAEK,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,4BAA4B;IAyB/D,OAAO,CAAC,UAAU,CAWjB;IAED,OAAO,CAAC,WAAW,CA4BlB;IAED,OAAO,CAAC,WAAW,CAIlB;IAED,OAAO,CAAC,aAAa,CAOpB;IAED,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,aAAa;IAOrB;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM;IAIjB;;;;OAIG;IACH,KAAK;IAWL;;;;;;OAMG;IACH,SAAS;IAWT;;;;OAIG;IACH,EAAE,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAIjD;;;;OAIG;IACH,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAIlD;;;;;;OAMG;IACH,SAAS,IAAI,kBAAkB;IAI/B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,gBAAgB;IAI7B;;;;OAIG;IACH,SAAS,CAAC,EAAE,EAAE,gBAAgB;IAI9B;;;;;;;OAOG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAcvB"}
@@ -0,0 +1,89 @@
1
+ import type { Subscription, SubscriptionEvent } from '@lifi/perps-types';
2
+ import type { ProviderGetQuoteParams, QuoteListener } from '../types/provider.js';
3
+ import type { ReconnectingWebSocket } from './ReconnectingWebSocket.js';
4
+ import type { SubscriptionListener, WsProvider, WsStatusListener } from './types.js';
5
+ /**
6
+ * Linger before tearing a channel off the wire after its last listener
7
+ * releases. A re-subscribe to the same key within this window cancels the
8
+ * pending teardown, so React StrictMode's synchronous unmount→remount (ref
9
+ * count 1→0→1) and fast route flips collapse to one wire subscription rather
10
+ * than a subscribe→unsubscribe→subscribe churn the venue would reject.
11
+ *
12
+ * @public
13
+ */
14
+ export declare const WS_CHANNEL_TEARDOWN_LINGER_MS = 250;
15
+ /**
16
+ * Base for per-provider realtime transports. Owns the {@link
17
+ * ReconnectingWebSocket}, the fan-out lifecycle — ref-counted multi-listener
18
+ * subscription per channel key, deferred teardown, status fan-out — so any
19
+ * number of consumers (and StrictMode double-mounts) collapse to exactly one
20
+ * wire subscribe/unsubscribe per key, and the wire-subscription registry:
21
+ * subs recorded via {@link WsProviderBase.registerSub} are sent only while
22
+ * connected and replayed (failure-isolated) on every (re)open. Subclasses own
23
+ * everything wire-specific via {@link WsProviderBase.openChannel}, {@link
24
+ * WsProviderBase.sendSubscribe} and {@link WsProviderBase.handleMessage}:
25
+ * payload framing, frame validation and dispatch.
26
+ *
27
+ * `TSub` is the per-subscription state {@link WsProviderBase.sendSubscribe}
28
+ * needs to (re)build one subscribe frame.
29
+ *
30
+ * @public
31
+ */
32
+ export declare abstract class WsProviderBase<TSub = unknown> implements WsProvider {
33
+ protected readonly rws: ReconnectingWebSocket;
34
+ protected readonly providerKey: string;
35
+ private readonly channels;
36
+ private readonly statusListeners;
37
+ private readonly wireSubs;
38
+ constructor(rws: ReconnectingWebSocket, providerKey: string);
39
+ subscribe(sub: Subscription, listener: SubscriptionListener, onStatus?: WsStatusListener): Promise<() => void>;
40
+ reconnect(): void;
41
+ close(): void;
42
+ /** Deliver an event to every listener on `key`. */
43
+ protected emit(key: string, event: SubscriptionEvent): void;
44
+ /**
45
+ * Tear `key` off the wire immediately if no listener holds it — i.e. it is
46
+ * lingering in the deferred-teardown window (or its open is still
47
+ * unwinding). Returns `true` when the key is free (absent or just torn
48
+ * down), `false` — leaving the channel untouched — while live listeners
49
+ * hold it. Lets a subclass that enforces an exclusivity invariant across
50
+ * keys reclaim a released channel without waiting out the linger.
51
+ */
52
+ protected closeChannelIfIdle(key: string): boolean;
53
+ /**
54
+ * Record a wire subscription for replay-on-(re)open and, when the socket is
55
+ * already connected, send its subscribe frame via {@link sendSubscribe}.
56
+ * While the socket is down the replay loop on the next open is the sole
57
+ * sender — sending in both places would double-subscribe. A failed send
58
+ * removes the sub again so a rejected open leaves no registry entry behind.
59
+ */
60
+ protected registerSub(key: string, state: TSub): Promise<void>;
61
+ /** Forget a wire subscription so the next (re)open no longer replays it. */
62
+ protected unregisterSub(key: string): void;
63
+ private replaySubs;
64
+ /** Venue-specific {@link WsProvider.subscribeQuote}; see `resolveSubscribeQuote`. */
65
+ abstract subscribeQuote(params: ProviderGetQuoteParams, onQuote: QuoteListener): Promise<() => void>;
66
+ /** Canonical fan-out key for `sub`; must match the key the subclass emits to. */
67
+ protected abstract toKey(sub: Subscription): string;
68
+ /**
69
+ * Open the channel on the wire (0→1 transition only). Record the wire
70
+ * sub(s) via {@link registerSub} and return a closure that unregisters them
71
+ * and sends the unsubscribe frame(s).
72
+ */
73
+ protected abstract openChannel(sub: Subscription): Promise<() => void>;
74
+ /**
75
+ * Encode and send the subscribe frame for one registered sub. Called by the
76
+ * base while connected — once on register and again on every (re)open — so
77
+ * it must be safe to invoke repeatedly with the same state (e.g. re-fetch a
78
+ * fresh auth token per call rather than embedding one in `state`).
79
+ */
80
+ protected abstract sendSubscribe(state: TSub): void | Promise<void>;
81
+ /** Parse one inbound frame and route it via {@link emit}. */
82
+ protected abstract handleMessage(raw: string): void;
83
+ /** Release subclass-only resources on {@link close} (keep-alive, cached state). */
84
+ protected onClose(): void;
85
+ private callListener;
86
+ private acquireChannel;
87
+ private releaseChannel;
88
+ }
89
+ //# sourceMappingURL=WsProviderBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WsProviderBase.d.ts","sourceRoot":"","sources":["../../../src/websocket/WsProviderBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EACV,sBAAsB,EACtB,aAAa,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAGnB;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,MAAM,CAAA;AAiBhD;;;;;;;;;;;;;;;;GAgBG;AACH,8BAAsB,cAAc,CAAC,IAAI,GAAG,OAAO,CAAE,YAAW,UAAU;IACxE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,qBAAqB,CAAA;IAC7C,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAEtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsC;IACtE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0B;gBAEvC,GAAG,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM;IAcrD,SAAS,CACb,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,IAAI,CAAC;IA2BtB,SAAS,IAAI,IAAI;IAOjB,KAAK,IAAI,IAAI;IAab,mDAAmD;IACnD,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAU3D;;;;;;;OAOG;IACH,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAgBlD;;;;;;OAMG;cACa,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAapE,4EAA4E;IAC5E,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;YAI5B,UAAU;IAaxB,qFAAqF;IACrF,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC;IAEtB,iFAAiF;IACjF,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM;IAEnD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC;IAEtE;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEnE,6DAA6D;IAC7D,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAEnD,mFAAmF;IACnF,SAAS,CAAC,OAAO,IAAI,IAAI;IAEzB,OAAO,CAAC,YAAY;YAYN,cAAc;IAgD5B,OAAO,CAAC,cAAc;CAwCvB"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Single-flight a promise through a caller-owned cache slot, evicting the
3
+ * cached promise if it rejects so the next call retries cleanly.
4
+ *
5
+ * Concurrent callers share the one in-flight promise; the rejection still
6
+ * propagates to every awaiter that triggered it. Only a settled rejection is
7
+ * evicted — a resolved promise stays cached.
8
+ *
9
+ * @param read - Returns the currently cached promise, or `undefined` if none.
10
+ * @param write - Stores (or with `undefined`, clears) the cached promise.
11
+ * @param factory - Creates the promise when the slot is empty.
12
+ */
13
+ export declare function cachePromise<T>(read: () => Promise<T> | undefined, write: (promise: Promise<T> | undefined) => void, factory: () => Promise<T>): Promise<T>;
14
+ //# sourceMappingURL=cachePromise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cachePromise.d.ts","sourceRoot":"","sources":["../../../src/websocket/cachePromise.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,EAClC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,IAAI,EAChD,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,CAAC,CAAC,CAaZ"}
@@ -0,0 +1,60 @@
1
+ import type { Subscription, SubscriptionEvent } from '@lifi/perps-types';
2
+ import type { ProviderGetQuoteParams, QuoteListener } from '../types/provider.js';
3
+ /**
4
+ * The concrete {@link SubscriptionEvent} variant a given subscription `S`
5
+ * emits, narrowed by its `channel`.
6
+ *
7
+ * @public
8
+ */
9
+ export type EventForSubscription<S extends Subscription> = Extract<SubscriptionEvent, {
10
+ channel: S['channel'];
11
+ }>;
12
+ /**
13
+ * Listener invoked with each realtime {@link SubscriptionEvent}.
14
+ *
15
+ * @public
16
+ */
17
+ export type SubscriptionListener = (event: SubscriptionEvent) => void;
18
+ /**
19
+ * Health of a provider's underlying WS connection.
20
+ *
21
+ * - `connected` — socket open, live data flowing.
22
+ * - `reconnecting` — socket dropped; auto-reconnect with backoff in progress.
23
+ * Data may be stale until it returns to `connected`.
24
+ * - `disconnected` — reconnection abandoned after the retry cap. The
25
+ * connection is permanently dead and will not recover on its own; the
26
+ * subscription's data is stale. Terminal.
27
+ *
28
+ * @public
29
+ */
30
+ export type WsConnectionStatus = 'connected' | 'reconnecting' | 'disconnected';
31
+ /**
32
+ * Listener invoked when the underlying WS connection's health changes.
33
+ *
34
+ * @public
35
+ */
36
+ export type WsStatusListener = (status: WsConnectionStatus) => void;
37
+ /**
38
+ * Per-provider realtime transport contract used by {@link PerpsWsClient}.
39
+ * Implemented by the provider packages' WS plugins.
40
+ *
41
+ * @public
42
+ */
43
+ export interface WsProvider {
44
+ subscribe(sub: Subscription, listener: SubscriptionListener, onStatus?: WsStatusListener): Promise<() => void>;
45
+ /**
46
+ * Recover a terminally exhausted connection. Safe no-op unless status is
47
+ * `disconnected`.
48
+ */
49
+ reconnect(): void;
50
+ /**
51
+ * Stream live fill {@link Quote}s for `params.size` USD notional of
52
+ * `params.symbol` on this venue, layered on the orderbook channel: the
53
+ * provider resolves the symbol against its own markets and re-runs the
54
+ * one-shot quote transform on each (throttled) book update, applying its
55
+ * public base fee tier. Returns an idempotent unsubscribe.
56
+ */
57
+ subscribeQuote(params: ProviderGetQuoteParams, onQuote: QuoteListener): Promise<() => void>;
58
+ close(): void;
59
+ }
60
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/websocket/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EACV,sBAAsB,EACtB,aAAa,EACd,MAAM,sBAAsB,CAAA;AAE7B;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,YAAY,IAAI,OAAO,CAChE,iBAAiB,EACjB;IAAE,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAA;CAAE,CAC1B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAA;AAErE;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,cAAc,GAAG,cAAc,CAAA;AAE9E;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CACP,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IACtB;;;OAGG;IACH,SAAS,IAAI,IAAI,CAAA;IACjB;;;;;;OAMG;IACH,cAAc,CACZ,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IACtB,KAAK,IAAI,IAAI,CAAA;CACd"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Structured logger for WS message-handling and subscription failures, shared
3
+ * by the provider packages so a malformed frame, a throwing mapper, or a failed
4
+ * resubscribe never vanishes silently.
5
+ *
6
+ * @internal
7
+ */
8
+ export declare const wsLog: {
9
+ /**
10
+ * A single frame that could not be parsed as JSON. Expected to recur on a
11
+ * noisy stream, so logged at `warn` with a truncated payload — never fatal.
12
+ */
13
+ readonly parseFailure: (provider: string, raw: string) => void;
14
+ /**
15
+ * A frame parsed but its handler threw (mapper bug, `MarketNotFound`, …).
16
+ * This is unexpected and must surface; the frame is skipped so one bad
17
+ * frame does not stall the stream or starve other channels.
18
+ */
19
+ readonly handlerFailure: (provider: string, error: unknown) => void;
20
+ /**
21
+ * An `error`-channel frame the server pushed (e.g. a rejected or duplicate
22
+ * subscription). The frame parsed fine — this is the venue reporting a
23
+ * problem, not a malformed frame — so surface it at `error` with the
24
+ * server's own text rather than mislabelling it a parse failure.
25
+ */
26
+ readonly serverError: (provider: string, message: string) => void;
27
+ /**
28
+ * A channel's (re)subscribe threw while (re)opening the socket — e.g. an
29
+ * auth-token fetch rejected after a reconnect. Surfaced at `error`; the
30
+ * channel is skipped so one failure does not abort the others.
31
+ */
32
+ readonly subscribeFailure: (provider: string, channel: string, error: unknown) => void;
33
+ /**
34
+ * A frame item referenced a market id missing from the registry (e.g.
35
+ * listed after the snapshot). The item is skipped — never the whole frame —
36
+ * so logged at `warn`.
37
+ */
38
+ readonly unknownMarket: (provider: string, marketId: string) => void;
39
+ /**
40
+ * A background market-registry refetch rejected. Unknown-market items keep
41
+ * being skipped until the next cooldown-gated retry, so logged at `warn`.
42
+ */
43
+ readonly marketRefreshFailure: (provider: string, error: unknown) => void;
44
+ /**
45
+ * A consumer listener callback threw during fan-out. Logged and skipped so
46
+ * one bad listener cannot starve sibling listeners or break socket flow.
47
+ */
48
+ readonly listenerFailure: (provider: string, listenerType: string, error: unknown) => void;
49
+ };
50
+ //# sourceMappingURL=wsLog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wsLog.d.ts","sourceRoot":"","sources":["../../../src/websocket/wsLog.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK;IAChB;;;OAGG;sCACoB,MAAM,OAAO,MAAM,KAAG,IAAI;IAGjD;;;;OAIG;wCACsB,MAAM,SAAS,OAAO,KAAG,IAAI;IAGtD;;;;;OAKG;qCACmB,MAAM,WAAW,MAAM,KAAG,IAAI;IAGpD;;;;OAIG;0CACwB,MAAM,WAAW,MAAM,SAAS,OAAO,KAAG,IAAI;IAMzE;;;;OAIG;uCACqB,MAAM,YAAY,MAAM,KAAG,IAAI;IAKvD;;;OAGG;8CAC4B,MAAM,SAAS,OAAO,KAAG,IAAI;IAG5D;;;OAGG;yCAES,MAAM,gBACF,MAAM,SACb,OAAO,KACb,IAAI;CAMC,CAAA"}
package/package.json ADDED
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "@lifi/perps-sdk",
3
+ "version": "0.0.0-preview-64fca0d",
4
+ "description": "LI.FI Perps SDK for perpetuals trading",
5
+ "homepage": "https://github.com/lifinance/perps-sdk",
6
+ "bugs": {
7
+ "url": "https://github.com/lifinance/perps-sdk/issues"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/lifinance/perps-sdk.git"
12
+ },
13
+ "license": "Apache-2.0",
14
+ "author": "LI.FI <dev@li.fi>",
15
+ "type": "module",
16
+ "main": "./dist/cjs/index.js",
17
+ "module": "./dist/esm/index.js",
18
+ "types": "./dist/types/index.d.ts",
19
+ "typings": "./dist/types/index.d.ts",
20
+ "sideEffects": false,
21
+ "exports": {
22
+ ".": {
23
+ "types": "./dist/types/index.d.ts",
24
+ "import": "./dist/esm/index.js",
25
+ "default": "./dist/cjs/index.js"
26
+ },
27
+ "./package.json": "./package.json"
28
+ },
29
+ "files": [
30
+ "dist/**",
31
+ "!dist/**/*.tsbuildinfo",
32
+ "src/**/*.ts",
33
+ "!src/**/*.spec.ts",
34
+ "!src/**/*.test.ts",
35
+ "!src/**/*.mock.ts",
36
+ "!src/**/*.handlers.ts",
37
+ "!src/**/*.tsbuildinfo",
38
+ "!**/__mocks__/**",
39
+ "!*.tmp",
40
+ "!*.env",
41
+ "!tsconfig.json"
42
+ ],
43
+ "dependencies": {
44
+ "@lifi/types": "17.82.1",
45
+ "partysocket": "^1.1.19",
46
+ "viem": "^2.48.8",
47
+ "@lifi/perps-types": "0.0.0-preview-64fca0d"
48
+ },
49
+ "publishConfig": {
50
+ "access": "public"
51
+ },
52
+ "keywords": [
53
+ "perps",
54
+ "perpetuals",
55
+ "trading",
56
+ "defi",
57
+ "ethereum",
58
+ "lifi",
59
+ "sdk",
60
+ "viem",
61
+ "hyperliquid"
62
+ ]
63
+ }