@katanaperps/katana-perps-sdk 0.0.0-placeholder

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 (428) hide show
  1. package/.nvmrc +1 -0
  2. package/LICENSE +21 -0
  3. package/README.md +90 -0
  4. package/dist/abis/ERC20.json +288 -0
  5. package/dist/abis/EarningsEscrow.json +468 -0
  6. package/dist/abis/Exchange_v1.json +3644 -0
  7. package/dist/abis/IOFT.json +447 -0
  8. package/dist/bridge/config.d.ts +262 -0
  9. package/dist/bridge/config.d.ts.map +1 -0
  10. package/dist/bridge/config.js +221 -0
  11. package/dist/bridge/deposit.d.ts +107 -0
  12. package/dist/bridge/deposit.d.ts.map +1 -0
  13. package/dist/bridge/deposit.js +284 -0
  14. package/dist/bridge/index.d.ts +5 -0
  15. package/dist/bridge/index.d.ts.map +1 -0
  16. package/dist/bridge/index.js +7 -0
  17. package/dist/bridge/utils.d.ts +140 -0
  18. package/dist/bridge/utils.d.ts.map +1 -0
  19. package/dist/bridge/utils.js +66 -0
  20. package/dist/bridge/withdraw.d.ts +42 -0
  21. package/dist/bridge/withdraw.d.ts.map +1 -0
  22. package/dist/bridge/withdraw.js +86 -0
  23. package/dist/client/index.d.ts +4 -0
  24. package/dist/client/index.d.ts.map +1 -0
  25. package/dist/client/index.js +6 -0
  26. package/dist/client/orderBook/index.d.ts +2 -0
  27. package/dist/client/orderBook/index.d.ts.map +1 -0
  28. package/dist/client/orderBook/index.js +4 -0
  29. package/dist/client/orderBook/realTime.d.ts +180 -0
  30. package/dist/client/orderBook/realTime.d.ts.map +1 -0
  31. package/dist/client/orderBook/realTime.js +344 -0
  32. package/dist/client/orderBook/utils.d.ts +15 -0
  33. package/dist/client/orderBook/utils.d.ts.map +1 -0
  34. package/dist/client/orderBook/utils.js +77 -0
  35. package/dist/client/rest/authenticated.d.ts +1199 -0
  36. package/dist/client/rest/authenticated.d.ts.map +1 -0
  37. package/dist/client/rest/authenticated.js +1311 -0
  38. package/dist/client/rest/index.d.ts +3 -0
  39. package/dist/client/rest/index.d.ts.map +1 -0
  40. package/dist/client/rest/index.js +5 -0
  41. package/dist/client/rest/public.d.ts +436 -0
  42. package/dist/client/rest/public.d.ts.map +1 -0
  43. package/dist/client/rest/public.js +502 -0
  44. package/dist/client/webSocket/guards.d.ts +15 -0
  45. package/dist/client/webSocket/guards.d.ts.map +1 -0
  46. package/dist/client/webSocket/guards.js +37 -0
  47. package/dist/client/webSocket/index.d.ts +632 -0
  48. package/dist/client/webSocket/index.d.ts.map +1 -0
  49. package/dist/client/webSocket/index.js +1048 -0
  50. package/dist/client/webSocket/transform.d.ts +3 -0
  51. package/dist/client/webSocket/transform.d.ts.map +1 -0
  52. package/dist/client/webSocket/transform.js +244 -0
  53. package/dist/constants.d.ts +34 -0
  54. package/dist/constants.d.ts.map +1 -0
  55. package/dist/constants.js +38 -0
  56. package/dist/index.d.ts +9 -0
  57. package/dist/index.d.ts.map +1 -0
  58. package/dist/index.js +14 -0
  59. package/dist/orderbook/apiConversions.d.ts +8 -0
  60. package/dist/orderbook/apiConversions.d.ts.map +1 -0
  61. package/dist/orderbook/apiConversions.js +100 -0
  62. package/dist/orderbook/demo.d.ts +2 -0
  63. package/dist/orderbook/demo.d.ts.map +1 -0
  64. package/dist/orderbook/demo.js +68 -0
  65. package/dist/orderbook/index.d.ts +3 -0
  66. package/dist/orderbook/index.d.ts.map +1 -0
  67. package/dist/orderbook/index.js +5 -0
  68. package/dist/orderbook/quantities.d.ts +112 -0
  69. package/dist/orderbook/quantities.d.ts.map +1 -0
  70. package/dist/orderbook/quantities.js +257 -0
  71. package/dist/orderbook/utils.d.ts +8 -0
  72. package/dist/orderbook/utils.d.ts.map +1 -0
  73. package/dist/orderbook/utils.js +28 -0
  74. package/dist/pipmath.d.ts +21 -0
  75. package/dist/pipmath.d.ts.map +1 -0
  76. package/dist/pipmath.js +110 -0
  77. package/dist/signatures.d.ts +37 -0
  78. package/dist/signatures.d.ts.map +1 -0
  79. package/dist/signatures.js +450 -0
  80. package/dist/tests/orderbook/quantities/calculateInitialMarginFractionWithOverride.test.d.ts +2 -0
  81. package/dist/tests/orderbook/quantities/calculateInitialMarginFractionWithOverride.test.d.ts.map +1 -0
  82. package/dist/tests/orderbook/quantities/calculateInitialMarginFractionWithOverride.test.js +49 -0
  83. package/dist/tests/orderbook/quantities/calculateMaximumInitialMarginFractionOverride.test.d.ts +2 -0
  84. package/dist/tests/orderbook/quantities/calculateMaximumInitialMarginFractionOverride.test.d.ts.map +1 -0
  85. package/dist/tests/orderbook/quantities/calculateMaximumInitialMarginFractionOverride.test.js +122 -0
  86. package/dist/tests/orderbook/quantities/determineMaximumReduceOnlyQuantityAvailableAtPriceLevel.test.d.ts +2 -0
  87. package/dist/tests/orderbook/quantities/determineMaximumReduceOnlyQuantityAvailableAtPriceLevel.test.d.ts.map +1 -0
  88. package/dist/tests/orderbook/quantities/determineMaximumReduceOnlyQuantityAvailableAtPriceLevel.test.js +138 -0
  89. package/dist/tests/orderbook/quantities.test.d.ts +2 -0
  90. package/dist/tests/orderbook/quantities.test.d.ts.map +1 -0
  91. package/dist/tests/orderbook/quantities.test.js +310 -0
  92. package/dist/tests/testHelpers.d.ts +2 -0
  93. package/dist/tests/testHelpers.d.ts.map +1 -0
  94. package/dist/tests/testHelpers.js +16 -0
  95. package/dist/tests/utils/deriveBaseURL.test.d.ts +2 -0
  96. package/dist/tests/utils/deriveBaseURL.test.d.ts.map +1 -0
  97. package/dist/tests/utils/deriveBaseURL.test.js +46 -0
  98. package/dist/typechain-types/ERC20.d.ts +170 -0
  99. package/dist/typechain-types/ERC20.d.ts.map +1 -0
  100. package/dist/typechain-types/ERC20.js +2 -0
  101. package/dist/typechain-types/EarningsEscrow.d.ts +210 -0
  102. package/dist/typechain-types/EarningsEscrow.d.ts.map +1 -0
  103. package/dist/typechain-types/EarningsEscrow.js +2 -0
  104. package/dist/typechain-types/ExchangeLayerZeroAdapter.d.ts +253 -0
  105. package/dist/typechain-types/ExchangeLayerZeroAdapter.d.ts.map +1 -0
  106. package/dist/typechain-types/ExchangeLayerZeroAdapter.js +2 -0
  107. package/dist/typechain-types/ExchangeLayerZeroAdapter_v2.d.ts +338 -0
  108. package/dist/typechain-types/ExchangeLayerZeroAdapter_v2.d.ts.map +1 -0
  109. package/dist/typechain-types/ExchangeLayerZeroAdapter_v2.js +2 -0
  110. package/dist/typechain-types/ExchangeLayerZeroAdapter_v3.d.ts +413 -0
  111. package/dist/typechain-types/ExchangeLayerZeroAdapter_v3.d.ts.map +1 -0
  112. package/dist/typechain-types/ExchangeLayerZeroAdapter_v3.js +2 -0
  113. package/dist/typechain-types/Exchange_v1.d.ts +2172 -0
  114. package/dist/typechain-types/Exchange_v1.d.ts.map +1 -0
  115. package/dist/typechain-types/Exchange_v1.js +2 -0
  116. package/dist/typechain-types/Exchange_v2.d.ts +2148 -0
  117. package/dist/typechain-types/Exchange_v2.d.ts.map +1 -0
  118. package/dist/typechain-types/Exchange_v2.js +2 -0
  119. package/dist/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.d.ts +148 -0
  120. package/dist/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.d.ts.map +1 -0
  121. package/dist/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.js +2 -0
  122. package/dist/typechain-types/FixedIncomeVaultProvider_v1.d.ts +1204 -0
  123. package/dist/typechain-types/FixedIncomeVaultProvider_v1.d.ts.map +1 -0
  124. package/dist/typechain-types/FixedIncomeVaultProvider_v1.js +2 -0
  125. package/dist/typechain-types/IOFT.d.ts +247 -0
  126. package/dist/typechain-types/IOFT.d.ts.map +1 -0
  127. package/dist/typechain-types/IOFT.js +2 -0
  128. package/dist/typechain-types/IRewardVault.d.ts +649 -0
  129. package/dist/typechain-types/IRewardVault.d.ts.map +1 -0
  130. package/dist/typechain-types/IRewardVault.js +2 -0
  131. package/dist/typechain-types/KumaOFTAdapterUSDC.d.ts +638 -0
  132. package/dist/typechain-types/KumaOFTAdapterUSDC.d.ts.map +1 -0
  133. package/dist/typechain-types/KumaOFTAdapterUSDC.js +2 -0
  134. package/dist/typechain-types/KumaOFTUSDC.d.ts +756 -0
  135. package/dist/typechain-types/KumaOFTUSDC.d.ts.map +1 -0
  136. package/dist/typechain-types/KumaOFTUSDC.js +2 -0
  137. package/dist/typechain-types/KumaStargateForwarder_v1.d.ts +252 -0
  138. package/dist/typechain-types/KumaStargateForwarder_v1.d.ts.map +1 -0
  139. package/dist/typechain-types/KumaStargateForwarder_v1.js +2 -0
  140. package/dist/typechain-types/KumaStargateForwarder_v2.d.ts +252 -0
  141. package/dist/typechain-types/KumaStargateForwarder_v2.d.ts.map +1 -0
  142. package/dist/typechain-types/KumaStargateForwarder_v2.js +2 -0
  143. package/dist/typechain-types/ProfitShareVaultProvider_v1.d.ts +1095 -0
  144. package/dist/typechain-types/ProfitShareVaultProvider_v1.d.ts.map +1 -0
  145. package/dist/typechain-types/ProfitShareVaultProvider_v1.js +2 -0
  146. package/dist/typechain-types/StargatePoolUSDC.d.ts +956 -0
  147. package/dist/typechain-types/StargatePoolUSDC.d.ts.map +1 -0
  148. package/dist/typechain-types/StargatePoolUSDC.js +2 -0
  149. package/dist/typechain-types/common.d.ts +51 -0
  150. package/dist/typechain-types/common.d.ts.map +1 -0
  151. package/dist/typechain-types/common.js +2 -0
  152. package/dist/typechain-types/factories/ERC20__factory.d.ts +226 -0
  153. package/dist/typechain-types/factories/ERC20__factory.d.ts.map +1 -0
  154. package/dist/typechain-types/factories/ERC20__factory.js +305 -0
  155. package/dist/typechain-types/factories/EarningsEscrow__factory.d.ts +370 -0
  156. package/dist/typechain-types/factories/EarningsEscrow__factory.d.ts.map +1 -0
  157. package/dist/typechain-types/factories/EarningsEscrow__factory.js +485 -0
  158. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter__factory.d.ts +359 -0
  159. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter__factory.d.ts.map +1 -0
  160. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter__factory.js +471 -0
  161. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v2__factory.d.ts +419 -0
  162. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v2__factory.d.ts.map +1 -0
  163. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v2__factory.js +545 -0
  164. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v3__factory.d.ts +546 -0
  165. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v3__factory.d.ts.map +1 -0
  166. package/dist/typechain-types/factories/ExchangeLayerZeroAdapter_v3__factory.js +710 -0
  167. package/dist/typechain-types/factories/Exchange_v1__factory.d.ts +2852 -0
  168. package/dist/typechain-types/factories/Exchange_v1__factory.d.ts.map +1 -0
  169. package/dist/typechain-types/factories/Exchange_v1__factory.js +3661 -0
  170. package/dist/typechain-types/factories/Exchange_v2__factory.d.ts +2832 -0
  171. package/dist/typechain-types/factories/Exchange_v2__factory.d.ts.map +1 -0
  172. package/dist/typechain-types/factories/Exchange_v2__factory.js +3636 -0
  173. package/dist/typechain-types/factories/FixedIncomeVaultProviderStateAggregator_v1__factory.d.ts +180 -0
  174. package/dist/typechain-types/factories/FixedIncomeVaultProviderStateAggregator_v1__factory.d.ts.map +1 -0
  175. package/dist/typechain-types/factories/FixedIncomeVaultProviderStateAggregator_v1__factory.js +246 -0
  176. package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.d.ts +2092 -0
  177. package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.d.ts.map +1 -0
  178. package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.js +2702 -0
  179. package/dist/typechain-types/factories/IOFT__factory.d.ts +352 -0
  180. package/dist/typechain-types/factories/IOFT__factory.d.ts.map +1 -0
  181. package/dist/typechain-types/factories/IOFT__factory.js +464 -0
  182. package/dist/typechain-types/factories/IRewardVault__factory.d.ts +1019 -0
  183. package/dist/typechain-types/factories/IRewardVault__factory.d.ts.map +1 -0
  184. package/dist/typechain-types/factories/IRewardVault__factory.js +1311 -0
  185. package/dist/typechain-types/factories/KumaOFTAdapterUSDC__factory.d.ts +996 -0
  186. package/dist/typechain-types/factories/KumaOFTAdapterUSDC__factory.d.ts.map +1 -0
  187. package/dist/typechain-types/factories/KumaOFTAdapterUSDC__factory.js +1306 -0
  188. package/dist/typechain-types/factories/KumaOFTUSDC__factory.d.ts +1234 -0
  189. package/dist/typechain-types/factories/KumaOFTUSDC__factory.d.ts.map +1 -0
  190. package/dist/typechain-types/factories/KumaOFTUSDC__factory.js +1619 -0
  191. package/dist/typechain-types/factories/KumaStargateForwarder_v1__factory.d.ts +354 -0
  192. package/dist/typechain-types/factories/KumaStargateForwarder_v1__factory.d.ts.map +1 -0
  193. package/dist/typechain-types/factories/KumaStargateForwarder_v1__factory.js +464 -0
  194. package/dist/typechain-types/factories/KumaStargateForwarder_v2__factory.d.ts +370 -0
  195. package/dist/typechain-types/factories/KumaStargateForwarder_v2__factory.d.ts.map +1 -0
  196. package/dist/typechain-types/factories/KumaStargateForwarder_v2__factory.js +486 -0
  197. package/dist/typechain-types/factories/ProfitShareVaultProvider_v1__factory.d.ts +1914 -0
  198. package/dist/typechain-types/factories/ProfitShareVaultProvider_v1__factory.d.ts.map +1 -0
  199. package/dist/typechain-types/factories/ProfitShareVaultProvider_v1__factory.js +2475 -0
  200. package/dist/typechain-types/factories/StargatePoolUSDC__factory.d.ts +1557 -0
  201. package/dist/typechain-types/factories/StargatePoolUSDC__factory.d.ts.map +1 -0
  202. package/dist/typechain-types/factories/StargatePoolUSDC__factory.js +2019 -0
  203. package/dist/typechain-types/factories/index.d.ts +5 -0
  204. package/dist/typechain-types/factories/index.d.ts.map +1 -0
  205. package/dist/typechain-types/factories/index.js +13 -0
  206. package/dist/typechain-types/index.d.ts +10 -0
  207. package/dist/typechain-types/index.d.ts.map +1 -0
  208. package/dist/typechain-types/index.js +15 -0
  209. package/dist/types/delegatedKeys.d.ts +44 -0
  210. package/dist/types/delegatedKeys.d.ts.map +1 -0
  211. package/dist/types/delegatedKeys.js +2 -0
  212. package/dist/types/enums/index.d.ts +4 -0
  213. package/dist/types/enums/index.d.ts.map +1 -0
  214. package/dist/types/enums/index.js +6 -0
  215. package/dist/types/enums/request.d.ts +980 -0
  216. package/dist/types/enums/request.d.ts.map +1 -0
  217. package/dist/types/enums/request.js +906 -0
  218. package/dist/types/enums/response.d.ts +329 -0
  219. package/dist/types/enums/response.d.ts.map +1 -0
  220. package/dist/types/enums/response.js +296 -0
  221. package/dist/types/enums/signature.d.ts +118 -0
  222. package/dist/types/enums/signature.d.ts.map +1 -0
  223. package/dist/types/enums/signature.js +131 -0
  224. package/dist/types/errors.d.ts +5 -0
  225. package/dist/types/errors.d.ts.map +1 -0
  226. package/dist/types/errors.js +2 -0
  227. package/dist/types/index.d.ts +9 -0
  228. package/dist/types/index.d.ts.map +1 -0
  229. package/dist/types/index.js +10 -0
  230. package/dist/types/orderBook.d.ts +72 -0
  231. package/dist/types/orderBook.d.ts.map +1 -0
  232. package/dist/types/orderBook.js +2 -0
  233. package/dist/types/rest/common/common.d.ts +118 -0
  234. package/dist/types/rest/common/common.d.ts.map +1 -0
  235. package/dist/types/rest/common/common.js +2 -0
  236. package/dist/types/rest/common/guards.d.ts +8 -0
  237. package/dist/types/rest/common/guards.d.ts.map +1 -0
  238. package/dist/types/rest/common/guards.js +14 -0
  239. package/dist/types/rest/endpoints/AssociateWallet.d.ts +40 -0
  240. package/dist/types/rest/endpoints/AssociateWallet.d.ts.map +1 -0
  241. package/dist/types/rest/endpoints/AssociateWallet.js +2 -0
  242. package/dist/types/rest/endpoints/CancelOrders.d.ts +134 -0
  243. package/dist/types/rest/endpoints/CancelOrders.d.ts.map +1 -0
  244. package/dist/types/rest/endpoints/CancelOrders.js +2 -0
  245. package/dist/types/rest/endpoints/CreateOrder.d.ts +401 -0
  246. package/dist/types/rest/endpoints/CreateOrder.d.ts.map +1 -0
  247. package/dist/types/rest/endpoints/CreateOrder.js +2 -0
  248. package/dist/types/rest/endpoints/GetAuthenticationToken.d.ts +39 -0
  249. package/dist/types/rest/endpoints/GetAuthenticationToken.d.ts.map +1 -0
  250. package/dist/types/rest/endpoints/GetAuthenticationToken.js +2 -0
  251. package/dist/types/rest/endpoints/GetCandles.d.ts +115 -0
  252. package/dist/types/rest/endpoints/GetCandles.d.ts.map +1 -0
  253. package/dist/types/rest/endpoints/GetCandles.js +2 -0
  254. package/dist/types/rest/endpoints/GetDeposits.d.ts +109 -0
  255. package/dist/types/rest/endpoints/GetDeposits.d.ts.map +1 -0
  256. package/dist/types/rest/endpoints/GetDeposits.js +2 -0
  257. package/dist/types/rest/endpoints/GetExchange.d.ts +78 -0
  258. package/dist/types/rest/endpoints/GetExchange.d.ts.map +1 -0
  259. package/dist/types/rest/endpoints/GetExchange.js +9 -0
  260. package/dist/types/rest/endpoints/GetFills.d.ts +178 -0
  261. package/dist/types/rest/endpoints/GetFills.d.ts.map +1 -0
  262. package/dist/types/rest/endpoints/GetFills.js +2 -0
  263. package/dist/types/rest/endpoints/GetFundingPayments.d.ts +52 -0
  264. package/dist/types/rest/endpoints/GetFundingPayments.d.ts.map +1 -0
  265. package/dist/types/rest/endpoints/GetFundingPayments.js +2 -0
  266. package/dist/types/rest/endpoints/GetFundingRates.d.ts +34 -0
  267. package/dist/types/rest/endpoints/GetFundingRates.d.ts.map +1 -0
  268. package/dist/types/rest/endpoints/GetFundingRates.js +2 -0
  269. package/dist/types/rest/endpoints/GetGasFees.d.ts +23 -0
  270. package/dist/types/rest/endpoints/GetGasFees.d.ts.map +1 -0
  271. package/dist/types/rest/endpoints/GetGasFees.js +2 -0
  272. package/dist/types/rest/endpoints/GetHistoricalPnL.d.ts +39 -0
  273. package/dist/types/rest/endpoints/GetHistoricalPnL.d.ts.map +1 -0
  274. package/dist/types/rest/endpoints/GetHistoricalPnL.js +2 -0
  275. package/dist/types/rest/endpoints/GetInitialMarginFractionOverride.d.ts +31 -0
  276. package/dist/types/rest/endpoints/GetInitialMarginFractionOverride.d.ts.map +1 -0
  277. package/dist/types/rest/endpoints/GetInitialMarginFractionOverride.js +2 -0
  278. package/dist/types/rest/endpoints/GetLiquidations.d.ts +52 -0
  279. package/dist/types/rest/endpoints/GetLiquidations.d.ts.map +1 -0
  280. package/dist/types/rest/endpoints/GetLiquidations.js +2 -0
  281. package/dist/types/rest/endpoints/GetMarketMakerRewardsEpochs.d.ts +534 -0
  282. package/dist/types/rest/endpoints/GetMarketMakerRewardsEpochs.d.ts.map +1 -0
  283. package/dist/types/rest/endpoints/GetMarketMakerRewardsEpochs.js +2 -0
  284. package/dist/types/rest/endpoints/GetMarkets.d.ts +161 -0
  285. package/dist/types/rest/endpoints/GetMarkets.d.ts.map +1 -0
  286. package/dist/types/rest/endpoints/GetMarkets.js +2 -0
  287. package/dist/types/rest/endpoints/GetOrderBook.d.ts +176 -0
  288. package/dist/types/rest/endpoints/GetOrderBook.d.ts.map +1 -0
  289. package/dist/types/rest/endpoints/GetOrderBook.js +2 -0
  290. package/dist/types/rest/endpoints/GetOrders.d.ts +188 -0
  291. package/dist/types/rest/endpoints/GetOrders.d.ts.map +1 -0
  292. package/dist/types/rest/endpoints/GetOrders.js +2 -0
  293. package/dist/types/rest/endpoints/GetPing.d.ts +8 -0
  294. package/dist/types/rest/endpoints/GetPing.d.ts.map +1 -0
  295. package/dist/types/rest/endpoints/GetPing.js +2 -0
  296. package/dist/types/rest/endpoints/GetPositions.d.ts +104 -0
  297. package/dist/types/rest/endpoints/GetPositions.d.ts.map +1 -0
  298. package/dist/types/rest/endpoints/GetPositions.js +2 -0
  299. package/dist/types/rest/endpoints/GetTickers.d.ts +129 -0
  300. package/dist/types/rest/endpoints/GetTickers.d.ts.map +1 -0
  301. package/dist/types/rest/endpoints/GetTickers.js +2 -0
  302. package/dist/types/rest/endpoints/GetTime.d.ts +14 -0
  303. package/dist/types/rest/endpoints/GetTime.d.ts.map +1 -0
  304. package/dist/types/rest/endpoints/GetTime.js +2 -0
  305. package/dist/types/rest/endpoints/GetTrades.d.ts +62 -0
  306. package/dist/types/rest/endpoints/GetTrades.d.ts.map +1 -0
  307. package/dist/types/rest/endpoints/GetTrades.js +2 -0
  308. package/dist/types/rest/endpoints/GetWallets.d.ts +121 -0
  309. package/dist/types/rest/endpoints/GetWallets.d.ts.map +1 -0
  310. package/dist/types/rest/endpoints/GetWallets.js +2 -0
  311. package/dist/types/rest/endpoints/GetWithdrawals.d.ts +98 -0
  312. package/dist/types/rest/endpoints/GetWithdrawals.d.ts.map +1 -0
  313. package/dist/types/rest/endpoints/GetWithdrawals.js +2 -0
  314. package/dist/types/rest/endpoints/GetWithdrawalsFromManagedAccount.d.ts +98 -0
  315. package/dist/types/rest/endpoints/GetWithdrawalsFromManagedAccount.d.ts.map +1 -0
  316. package/dist/types/rest/endpoints/GetWithdrawalsFromManagedAccount.js +2 -0
  317. package/dist/types/rest/endpoints/Payouts.d.ts +199 -0
  318. package/dist/types/rest/endpoints/Payouts.d.ts.map +1 -0
  319. package/dist/types/rest/endpoints/Payouts.js +2 -0
  320. package/dist/types/rest/endpoints/SetInitialMarginFractionOverride.d.ts +83 -0
  321. package/dist/types/rest/endpoints/SetInitialMarginFractionOverride.d.ts.map +1 -0
  322. package/dist/types/rest/endpoints/SetInitialMarginFractionOverride.js +2 -0
  323. package/dist/types/rest/endpoints/WithdrawFunds.d.ts +144 -0
  324. package/dist/types/rest/endpoints/WithdrawFunds.d.ts.map +1 -0
  325. package/dist/types/rest/endpoints/WithdrawFunds.js +2 -0
  326. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByQuantity.d.ts +161 -0
  327. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByQuantity.d.ts.map +1 -0
  328. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByQuantity.js +2 -0
  329. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByShares.d.ts +160 -0
  330. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByShares.d.ts.map +1 -0
  331. package/dist/types/rest/endpoints/WithdrawFundsFromManagedAccountByShares.js +2 -0
  332. package/dist/types/rest/endpoints/index.d.ts +33 -0
  333. package/dist/types/rest/endpoints/index.d.ts.map +1 -0
  334. package/dist/types/rest/endpoints/index.js +35 -0
  335. package/dist/types/rest/endpoints/internal.d.ts +329 -0
  336. package/dist/types/rest/endpoints/internal.d.ts.map +1 -0
  337. package/dist/types/rest/endpoints/internal.js +14 -0
  338. package/dist/types/rest/index.d.ts +4 -0
  339. package/dist/types/rest/index.d.ts.map +1 -0
  340. package/dist/types/rest/index.js +6 -0
  341. package/dist/types/swaps.d.ts +11 -0
  342. package/dist/types/swaps.d.ts.map +1 -0
  343. package/dist/types/swaps.js +2 -0
  344. package/dist/types/utils.d.ts +67 -0
  345. package/dist/types/utils.d.ts.map +1 -0
  346. package/dist/types/utils.js +3 -0
  347. package/dist/types/webSocket/base.d.ts +83 -0
  348. package/dist/types/webSocket/base.d.ts.map +1 -0
  349. package/dist/types/webSocket/base.js +2 -0
  350. package/dist/types/webSocket/constants.d.ts +41 -0
  351. package/dist/types/webSocket/constants.d.ts.map +1 -0
  352. package/dist/types/webSocket/constants.js +54 -0
  353. package/dist/types/webSocket/index.d.ts +6 -0
  354. package/dist/types/webSocket/index.d.ts.map +1 -0
  355. package/dist/types/webSocket/index.js +8 -0
  356. package/dist/types/webSocket/options.d.ts +276 -0
  357. package/dist/types/webSocket/options.d.ts.map +1 -0
  358. package/dist/types/webSocket/options.js +2 -0
  359. package/dist/types/webSocket/request/index.d.ts +3 -0
  360. package/dist/types/webSocket/request/index.d.ts.map +1 -0
  361. package/dist/types/webSocket/request/index.js +5 -0
  362. package/dist/types/webSocket/request/request.d.ts +137 -0
  363. package/dist/types/webSocket/request/request.d.ts.map +1 -0
  364. package/dist/types/webSocket/request/request.js +2 -0
  365. package/dist/types/webSocket/request/subscriptions.d.ts +498 -0
  366. package/dist/types/webSocket/request/subscriptions.d.ts.map +1 -0
  367. package/dist/types/webSocket/request/subscriptions.js +2 -0
  368. package/dist/types/webSocket/response/candles.d.ts +138 -0
  369. package/dist/types/webSocket/response/candles.d.ts.map +1 -0
  370. package/dist/types/webSocket/response/candles.js +2 -0
  371. package/dist/types/webSocket/response/deposits.d.ts +80 -0
  372. package/dist/types/webSocket/response/deposits.d.ts.map +1 -0
  373. package/dist/types/webSocket/response/deposits.js +2 -0
  374. package/dist/types/webSocket/response/fundingPayments.d.ts +78 -0
  375. package/dist/types/webSocket/response/fundingPayments.d.ts.map +1 -0
  376. package/dist/types/webSocket/response/fundingPayments.js +2 -0
  377. package/dist/types/webSocket/response/index.d.ts +13 -0
  378. package/dist/types/webSocket/response/index.d.ts.map +1 -0
  379. package/dist/types/webSocket/response/index.js +15 -0
  380. package/dist/types/webSocket/response/liquidations.d.ts +78 -0
  381. package/dist/types/webSocket/response/liquidations.d.ts.map +1 -0
  382. package/dist/types/webSocket/response/liquidations.js +2 -0
  383. package/dist/types/webSocket/response/orderbook.d.ts +214 -0
  384. package/dist/types/webSocket/response/orderbook.d.ts.map +1 -0
  385. package/dist/types/webSocket/response/orderbook.js +2 -0
  386. package/dist/types/webSocket/response/orders.d.ts +355 -0
  387. package/dist/types/webSocket/response/orders.d.ts.map +1 -0
  388. package/dist/types/webSocket/response/orders.js +2 -0
  389. package/dist/types/webSocket/response/ordersFill.d.ts +138 -0
  390. package/dist/types/webSocket/response/ordersFill.d.ts.map +1 -0
  391. package/dist/types/webSocket/response/ordersFill.js +2 -0
  392. package/dist/types/webSocket/response/positions.d.ts +120 -0
  393. package/dist/types/webSocket/response/positions.d.ts.map +1 -0
  394. package/dist/types/webSocket/response/positions.js +2 -0
  395. package/dist/types/webSocket/response/tickers.d.ts +131 -0
  396. package/dist/types/webSocket/response/tickers.d.ts.map +1 -0
  397. package/dist/types/webSocket/response/tickers.js +2 -0
  398. package/dist/types/webSocket/response/trades.d.ts +90 -0
  399. package/dist/types/webSocket/response/trades.d.ts.map +1 -0
  400. package/dist/types/webSocket/response/trades.js +2 -0
  401. package/dist/types/webSocket/response/webclient/base.d.ts +24 -0
  402. package/dist/types/webSocket/response/webclient/base.d.ts.map +1 -0
  403. package/dist/types/webSocket/response/webclient/base.js +2 -0
  404. package/dist/types/webSocket/response/webclient/events/exchangeStatus.d.ts +31 -0
  405. package/dist/types/webSocket/response/webclient/events/exchangeStatus.d.ts.map +1 -0
  406. package/dist/types/webSocket/response/webclient/events/exchangeStatus.js +2 -0
  407. package/dist/types/webSocket/response/webclient/events/index.d.ts +4 -0
  408. package/dist/types/webSocket/response/webclient/events/index.d.ts.map +1 -0
  409. package/dist/types/webSocket/response/webclient/events/index.js +6 -0
  410. package/dist/types/webSocket/response/webclient/events/reloadBanners.d.ts +17 -0
  411. package/dist/types/webSocket/response/webclient/events/reloadBanners.d.ts.map +1 -0
  412. package/dist/types/webSocket/response/webclient/events/reloadBanners.js +2 -0
  413. package/dist/types/webSocket/response/webclient/events/transactionSettled.d.ts +76 -0
  414. package/dist/types/webSocket/response/webclient/events/transactionSettled.d.ts.map +1 -0
  415. package/dist/types/webSocket/response/webclient/events/transactionSettled.js +2 -0
  416. package/dist/types/webSocket/response/webclient/index.d.ts +3 -0
  417. package/dist/types/webSocket/response/webclient/index.d.ts.map +1 -0
  418. package/dist/types/webSocket/response/webclient/index.js +5 -0
  419. package/dist/types/webSocket/response/webclient/webclient.d.ts +13 -0
  420. package/dist/types/webSocket/response/webclient/webclient.d.ts.map +1 -0
  421. package/dist/types/webSocket/response/webclient/webclient.js +2 -0
  422. package/dist/types/webSocket/response/withdrawals.d.ts +83 -0
  423. package/dist/types/webSocket/response/withdrawals.d.ts.map +1 -0
  424. package/dist/types/webSocket/response/withdrawals.js +2 -0
  425. package/dist/utils.d.ts +63 -0
  426. package/dist/utils.d.ts.map +1 -0
  427. package/dist/utils.js +136 -0
  428. package/package.json +200 -0
@@ -0,0 +1,632 @@
1
+ /// <reference types="ws" />
2
+ import WebSocket from 'isomorphic-ws';
3
+ import { transformWebsocketShortResponseMessage } from '#client/webSocket/transform';
4
+ import type * as katanaPerps from '#index';
5
+ import type { WebSocketRequestUnsubscribeShortNames, KatanaPerpsMessageEvent, KatanaPerpsSubscribeTypeAuthenticated, KatanaPerpsSubscribeTypePublic, KatanaPerpsSubscribeType, WebSocketRequestUnsubscribeSubscription } from '#types/webSocket/index';
6
+ export * from '#client/webSocket/guards';
7
+ export { transformWebsocketShortResponseMessage };
8
+ /**
9
+ * This is the doc comment for file1.ts
10
+ *
11
+ * Specify this is a module comment and rename it to my-module:
12
+ * @module my-module
13
+ */
14
+ /**
15
+ * @internal
16
+ *
17
+ * How often to send `ping` messages to the server (in milliseconds).
18
+ */
19
+ export declare const WEBSOCKET_PING_TIMEOUT_MS = 30000;
20
+ /**
21
+ * WebSocket Client handler for the `onConnect` method
22
+ */
23
+ export type WebSocketHandlerConnect = () => unknown;
24
+ /**
25
+ * WebSocket Client handler for the `onDisconnect` method
26
+ */
27
+ export type WebSocketHandlerDisconnect = (code: number, reason: string) => unknown;
28
+ /**
29
+ * WebSocket Client handler for the `onError` method
30
+ */
31
+ export type WebSocketHandlerError = (error: WebSocket.ErrorEvent) => unknown;
32
+ /**
33
+ * WebSocket Client handler for the `onMessage` method
34
+ */
35
+ export type WebSocketHandlerMessage = (message: KatanaPerpsMessageEvent) => unknown;
36
+ /**
37
+ * ### WebSocket API client
38
+ *
39
+ * You must provide constructor options that match either:
40
+ *
41
+ * - If you only need {@link KatanaPerpsSubscribeTypePublic public subscriptions}, all options are optional.
42
+ * - If you want to make {@link KatanaPerpsSubscribeTypeAuthenticated authenticated subscriptions}:
43
+ * - You must provide a valid {@link WebSocketClientOptions.auth auth}
44
+ * property in the {@link WebSocketClientOptions constructor options} which includes:
45
+ * - {@link katanaperps.WebSocketClientAuthOptions.apiKey apiKey}
46
+ * - {@link katanaperps.WebSocketClientAuthOptions.apiSecret apiSecret}
47
+ * - {@link katanaperps.WebSocketClientAuthOptions.wallet wallet}
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * import {
52
+ * WebSocketClient,
53
+ * SubscriptionNameAuthenticated,
54
+ * SubscriptionNamePublic
55
+ * } from '@katanaperps/katana-perps-sdk';
56
+ *
57
+ * const webSocketClientPublicOnly = new WebSocketClient();
58
+ *
59
+ * // or ... to enable both public and authenticated subscriptions:
60
+ *
61
+ * const client = new WebSocketClient({
62
+ * // Edit the values before for your environment
63
+ * auth: {
64
+ * apiKey: '1f7c4f52-4af7-4e1b-aa94-94fac8d931aa',
65
+ * apiSecret: 'axuh3ywgg854aq7m73oy6gnnpj5ar9a67szuw5lclbz77zqu0j',
66
+ * wallet: '0x...',
67
+ * }
68
+ * // sandbox: true,
69
+ * // logger: console.log
70
+ * });
71
+ *
72
+ * client.onConnect(() => {
73
+ * // [see onConnect docs for full example and information]
74
+ * })
75
+ *
76
+ * client.onDisconnect((code, reason) => {
77
+ * // [see onDisconnect docs for full example and information]
78
+ * })
79
+ *
80
+ * client.onError(errorEvent => {
81
+ * // [see onError docs for full example and information]
82
+ * })
83
+ *
84
+ * client.onMessage(message => {
85
+ * console.log('Receiving Message: ', message)
86
+ * switch(message.type) {
87
+ * case MessageEventType.subscriptions:
88
+ * return handleSubscriptions(message.subscriptions);
89
+ * case MessageEventType.error:
90
+ * return handleAPIError(message.data);
91
+ * case MessageEventType.candles:
92
+ * return handleCandles(message.data);
93
+ * default:
94
+ * break;
95
+ * })
96
+ *
97
+ * await client.connect();
98
+ *
99
+ * // subscribe as needed!
100
+ *
101
+ * await client
102
+ * .subscribePublic([
103
+ * {
104
+ * name: SubscriptionNamePublic.tickers,
105
+ * markets: ['ETH-USD']
106
+ * },
107
+ * ])
108
+ * .subscribeAuthenticated([
109
+ * { name: SubscriptionNameAuthenticated.positions },
110
+ * { name: SubscriptionNameAuthenticated.orders },
111
+ * ]);
112
+ * ```
113
+ *
114
+ * <br />
115
+ *
116
+ * ---
117
+ *
118
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html)
119
+ *
120
+ * @category API Clients
121
+ * @category KatanaPerps - Get Candles
122
+ * @category KatanaPerps - Get Deposits
123
+ * @category KatanaPerps - Get Funding Payments
124
+ * @category KatanaPerps - Get Liquidations
125
+ * @category KatanaPerps - Get OrderBook
126
+ * @category KatanaPerps - Get Orders
127
+ * @category KatanaPerps - Get Positions
128
+ * @category KatanaPerps - Get Tickers
129
+ * @category KatanaPerps - Get Trades
130
+ * @category KatanaPerps - Get Withdrawals
131
+ */
132
+ export declare class WebSocketClient {
133
+ #private;
134
+ /**
135
+ * If `true`, this client will throw an error if it attempts to subscribe to
136
+ * an {@link KatanaPerpsSubscribeTypeAuthenticated authenticated subscription}.
137
+ *
138
+ * - This is determined by whether or not the {@link katanaperps.WebSocketClientOptions.auth auth}
139
+ * property was provided during construction.
140
+ *
141
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#isPublicOnly)
142
+ *
143
+ * @category Accessors
144
+ */
145
+ get isPublicOnly(): boolean;
146
+ /**
147
+ * When a client is terminated, it will cease to function and a new WebSocketClient must be created
148
+ * to start a new connection.
149
+ */
150
+ get terminated(): boolean;
151
+ /**
152
+ * You can access the current {@link WebSocket}
153
+ *
154
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#ws)
155
+ *
156
+ * @category Accessors
157
+ */
158
+ get ws(): null | WebSocket;
159
+ /**
160
+ * A boolean indicating whether the WebSocket client is currently connected to the Katana Perps WebSocket API.
161
+ *
162
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#isConnected)
163
+ *
164
+ * @category Accessors
165
+ */
166
+ get isConnected(): boolean;
167
+ /**
168
+ * ### WebSocket API client
169
+ *
170
+ * You must provide constructor options that match either:
171
+ *
172
+ * - If you only need {@link KatanaPerpsSubscribeTypePublic public subscriptions}, all options are optional.
173
+ * - If you want to make {@link KatanaPerpsSubscribeTypeAuthenticated authenticated subscriptions}:
174
+ * - You must provide a valid {@link WebSocketClientOptions.auth auth}
175
+ * property in the {@link WebSocketClientOptions constructor options} which includes:
176
+ * - {@link katanaperps.WebSocketClientAuthOptions.apiKey apiKey}
177
+ * - {@link katanaperps.WebSocketClientAuthOptions.apiSecret apiSecret}
178
+ * - {@link katanaperps.WebSocketClientAuthOptions.wallet wallet}
179
+ *
180
+ * @example
181
+ * ```typescript
182
+ * import {
183
+ * WebSocketClient,
184
+ * SubscriptionNameAuthenticated,
185
+ * SubscriptionNamePublic
186
+ * } from '@katanaperps/katana-perps-sdk';
187
+ *
188
+ * const webSocketClientPublicOnly = new WebSocketClient();
189
+ *
190
+ * // or ... to enable both public and authenticated subscriptions:
191
+ *
192
+ * const client = new WebSocketClient({
193
+ * // Edit the values before for your environment
194
+ * auth: {
195
+ * apiKey: '1f7c4f52-4af7-4e1b-aa94-94fac8d931aa',
196
+ * apiSecret: 'axuh3ywgg854aq7m73oy6gnnpj5ar9a67szuw5lclbz77zqu0j',
197
+ * wallet: '0x...',
198
+ * }
199
+ * // sandbox: true,
200
+ * // logger: console.log
201
+ * });
202
+ *
203
+ * client.onConnect(() => {
204
+ * // [see onConnect docs for full example and information]
205
+ * })
206
+ *
207
+ * client.onDisconnect((code, reason) => {
208
+ * // [see onDisconnect docs for full example and information]
209
+ * })
210
+ *
211
+ * client.onError(errorEvent => {
212
+ * // [see onError docs for full example and information]
213
+ * })
214
+ *
215
+ * client.onMessage(message => {
216
+ * console.log('Receiving Message: ', message)
217
+ * switch(message.type) {
218
+ * case MessageEventType.subscriptions:
219
+ * return handleSubscriptions(message.subscriptions);
220
+ * case MessageEventType.error:
221
+ * return handleAPIError(message.data);
222
+ * case MessageEventType.candles:
223
+ * return handleCandles(message.data);
224
+ * default:
225
+ * break;
226
+ * })
227
+ *
228
+ * await client.connect();
229
+ *
230
+ * // subscribe as needed!
231
+ *
232
+ * await client
233
+ * .subscribePublic([
234
+ * {
235
+ * name: SubscriptionNamePublic.tickers,
236
+ * markets: ['ETH-USD']
237
+ * },
238
+ * ])
239
+ * .subscribeAuthenticated([
240
+ * { name: SubscriptionNameAuthenticated.positions },
241
+ * { name: SubscriptionNameAuthenticated.orders },
242
+ * ]);
243
+ * ```
244
+ *
245
+ * <br />
246
+ *
247
+ * ---
248
+ *
249
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html)
250
+ */
251
+ constructor(options?: katanaPerps.WebSocketClientOptions);
252
+ private throwIfTerminated;
253
+ /**
254
+ * Connect to the [Katana Perps WebSocket API](https://api-docs-v1-perps.katana.network/#websocket-api-interaction)
255
+ *
256
+ * ---
257
+ * @param awaitConnected
258
+ * - If `true`, the promise will not resolve until the connection is established
259
+ * @returns
260
+ * - `this` to allow chaining with other methods or requests.
261
+ * ---
262
+ *
263
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#connect)
264
+ *
265
+ * @category Connection Management
266
+ */
267
+ connect(awaitConnected?: boolean): Promise<this>;
268
+ /**
269
+ * Disconnect from the WebSocket if connected.
270
+ *
271
+ * - If `terminate` is `true`, the WebSocket will be disconnected immediately and this client will
272
+ * cease to work or connect.
273
+ * - All listeners will be cleared and all methods will throw errors once terminated.
274
+ *
275
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#disconnect)
276
+ *
277
+ * @category Connection Management
278
+ */
279
+ disconnect(terminate?: boolean): this;
280
+ /**
281
+ * Subscribe a handler to all WebSocket disconnect events.
282
+ *
283
+ * - Calling multiple times will add multiple subscribers to the given event
284
+ *
285
+ * ---
286
+ * @param handler
287
+ * - A handler function matching {@link WebSocketHandlerConnect} that will receive events.
288
+ * @param replaceAll
289
+ * - Replaces all current handlers with the provided handler.
290
+ * @returns
291
+ * - `this` to allow chaining with other methods or requests.
292
+ * ---
293
+ *
294
+ * @example
295
+ * ```typescript
296
+ * websocketClient.onConnect(() => {
297
+ * console.warn('WebSocket Connection Connects')
298
+ * })
299
+ * ```
300
+ *
301
+ * <br />
302
+ *
303
+ * ---
304
+ *
305
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#onConnect)
306
+ *
307
+ * @category Event Handling
308
+ */
309
+ onConnect(handler: WebSocketHandlerConnect, replaceAll?: boolean): this;
310
+ /**
311
+ * Subscribe a handler to all WebSocket disconnect events.
312
+ *
313
+ * ---
314
+ * @param handler
315
+ * - A handler function matching {@link WebSocketHandlerDisconnect} that will receive events.
316
+ * @param replaceAll
317
+ * - Replaces all current handlers with the provided handler.
318
+ * @returns
319
+ * - `this` to allow chaining with other methods or requests.
320
+ * ---
321
+ *
322
+ * @example
323
+ * ```typescript
324
+ * websocketClient.onDisconnect((code, reason) => {
325
+ * console.warn('WebSocket Connection Disconnects: ', code, reason)
326
+ * })
327
+ * ```
328
+ *
329
+ * <br />
330
+ *
331
+ * ---
332
+ *
333
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#onDisconnect)
334
+ *
335
+ * @category Event Handling
336
+ */
337
+ onDisconnect(handler: WebSocketHandlerDisconnect, replaceAll?: boolean): this;
338
+ /**
339
+ * Subscribe a handler to all WebSocket connection errors that may occur during
340
+ * your requests.
341
+ *
342
+ * - **Note:** These errors will be coming from the `ws` library itself and provide
343
+ * its {@link ErrorEvent} errors.
344
+ * - Errors coming from the Katana Perps WebSocket client will be present as a {@link katanaperps.KatanaPerpsErrorEvent KatanaPerpsErrorEvent}
345
+ * message to the {@link onMessage} handler.
346
+ *
347
+ * ---
348
+ * @param handler
349
+ * - A handler function matching {@link WebSocketHandlerError} that will receive events.
350
+ * @param replaceAll
351
+ * - Replaces all current handlers with the provided handler.
352
+ * @returns
353
+ * - `this` to allow chaining with other methods or requests.
354
+ * ---
355
+ *
356
+ * @example
357
+ * ```typescript
358
+ * websocketClient.onError(errorEvent => {
359
+ * console.error('Connection Error on WebSocket: ', errorEvent.error)
360
+ * })
361
+ * ```
362
+ *
363
+ * <br />
364
+ *
365
+ * ---
366
+ *
367
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#onError)
368
+ *
369
+ * @category Event Handling
370
+ */
371
+ onError(handler: WebSocketHandlerError, replaceAll?: boolean): this;
372
+ /**
373
+ * Subscribe a handler to all subscription responses.
374
+ *
375
+ * - Your handler will receive updates when available matching the {@link KatanaPerpsMessageEvent}
376
+ * interface.
377
+ * - Use the {@link katanaperps.MessageEventType MessageEventType} enum to get an enum
378
+ * defining all possible `type` values that can be received on the WebSocket message (see example).
379
+ *
380
+ * ---
381
+ * @param handler
382
+ * - A handler function matching {@link WebSocketHandlerMessage} that will receive events.
383
+ * @param replaceAll
384
+ * - Replaces all current handlers with the provided handler.
385
+ * @returns
386
+ * - `this` to allow chaining with other methods or requests.
387
+ * ---
388
+ *
389
+ * @example
390
+ * ```typescript
391
+ * import { MessageEventType } from '@katanaperps/katana-perps-sdk';
392
+ *
393
+ * // ... client setup
394
+ *
395
+ * websocketClient.onMessage(message => {
396
+ * console.log('Receiving Message: ', message)
397
+ * switch(message.type) {
398
+ * case MessageEventType.subscriptions:
399
+ * return handleSubscriptions(message.subscriptions);
400
+ * case MessageEventType.error:
401
+ * return handleAPIError(message.data);
402
+ * case MessageEventType.candles:
403
+ * return handleCandles(message.data);
404
+ * default:
405
+ * break;
406
+ * }
407
+ * })
408
+ * ```
409
+ *
410
+ * <br />
411
+ *
412
+ * ---
413
+ *
414
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#onMessage)
415
+ * @see enum {@link katanaperps.MessageEventType MessageEventType}
416
+ * @see type {@link KatanaPerpsMessageEvent}
417
+ *
418
+ * @category Event Handling
419
+ */
420
+ onMessage(handler: WebSocketHandlerMessage, replaceAll?: boolean): this;
421
+ /**
422
+ * Creates new {@link KatanaPerpsSubscribeTypeAuthenticated authenticated subscriptions} based on the provided parameters.
423
+ *
424
+ * - Use the {@link katanaperps.SubscriptionNameAuthenticated SubscriptionNameAuthenticated} enum for IDE
425
+ * inline documentation and auto completion (see example)
426
+ *
427
+ * ---
428
+ *
429
+ * **Subscription Update Events:**
430
+ *
431
+ * - Receives a {@link katanaperps.KatanaPerpsSubscriptionsListEvent KatanaPerpsSubscriptionsListEvent} WebSocket response via
432
+ * the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler listing all active
433
+ * subscriptions.
434
+ * - Begins receiving {@link katanaperps.KatanaPerpsSubscriptionEvent KatanaPerpsSubscriptionEvent}'s for all subscribed
435
+ * subscriptions via the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler.
436
+ *
437
+ * ---
438
+ * @param subscriptions
439
+ * - An array of {@link KatanaPerpsSubscribeTypeAuthenticated} subscription objects.
440
+ * @param cid
441
+ * - Optionally provide a `cid` property which will be returned in the response
442
+ * so that you can correlate the response to the request.
443
+ * @returns
444
+ * - `this` to allow chaining with other methods or requests.
445
+ * ---
446
+ *
447
+ * @throws
448
+ * > This method will **throw an error** if you did not provide the {@link katanaperps.WebSocketClientOptionsWithAPIKey.auth auth} option
449
+ * to the constructor in order to handle authenticated subscriptions.
450
+ *
451
+ * ---
452
+ *
453
+ * @example
454
+ * ```typescript
455
+ * import {
456
+ * WebSocketClient,
457
+ * SubscriptionNameAuthenticated,
458
+ * } from '@katanaperps/katana-perps-sdk';
459
+ *
460
+ * const client = new WebSocketClient({
461
+ * auth: {
462
+ * apiKey: '...',
463
+ * apiSecret: '...',
464
+ * wallet: '0x...'
465
+ * }
466
+ * })
467
+ *
468
+ * client.onMessage(message => {
469
+ * console.log('Received WebSocket Message: ', message)
470
+ * })
471
+ *
472
+ * await client.subscribeAuthenticated([
473
+ * { name: SubscriptionNameAuthenticated.positions },
474
+ * { name: SubscriptionNameAuthenticated.orders },
475
+ * ])
476
+ * ```
477
+ *
478
+ * <br />
479
+ *
480
+ * ---
481
+ *
482
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#subscribeAuthenticated)
483
+ * @see related {@link subscribePublic client.subscribePublic}
484
+ *
485
+ * @category Subscription Management
486
+ */
487
+ subscribeAuthenticated(
488
+ /**
489
+ * An array of {@link KatanaPerpsSubscribeTypeAuthenticated} subscription
490
+ * objects.
491
+ */
492
+ subscriptions: KatanaPerpsSubscribeTypeAuthenticated[],
493
+ /**
494
+ * Optionally provide a `cid` property which will be returned in the response
495
+ * so that you can correlate the response to the request.
496
+ */
497
+ cid?: string): this;
498
+ /**
499
+ * This method allows subscribing to Katana Perps's {@link KatanaPerpsSubscribeTypePublic public subscriptions}.
500
+ *
501
+ * - Use the {@link katanaperps.SubscriptionNamePublic SubscriptionNamePublic} enum for IDE
502
+ * inline documentation and auto completion (see example)
503
+ *
504
+ * ---
505
+ *
506
+ * **Subscription Update Events:**
507
+ *
508
+ * - Receives a {@link katanaperps.KatanaPerpsSubscriptionsListEvent KatanaPerpsSubscriptionsListEvent} WebSocket response via
509
+ * the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler listing all active
510
+ * subscriptions.
511
+ * - Begins receiving {@link katanaperps.KatanaPerpsSubscriptionEvent KatanaPerpsSubscriptionEvent}'s for all subscribed
512
+ * subscriptions via the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler.
513
+ *
514
+ * ---
515
+ * @param subscriptions
516
+ * - An array of {@link KatanaPerpsSubscribeTypePublic} subscription objects.
517
+ * @param markets
518
+ * - Optionally provide top-level markets.
519
+ * - Any {@link subscriptions} that **require but do not define** their own `markets`
520
+ * array will inherit this set of markets.
521
+ * - If a subscription in your {@link subscriptions} array defines its own
522
+ * {@link KatanaPerpsSubscribeType.markets markets} array, the top-level markets
523
+ * **will not be inherited**
524
+ * @param cid
525
+ * - Optionally provide a `cid` property which will be returned in the response
526
+ * so that you can correlate the response to the request.
527
+ * @returns
528
+ * - `this` to allow chaining with other methods or requests.
529
+ * ---
530
+ *
531
+ * @example
532
+ * ```typescript
533
+ * import {
534
+ * WebSocketClient,
535
+ * SubscriptionNamePublic,
536
+ * CandleInterval
537
+ * } from '@katanaperps/katana-perps-sdk';
538
+ *
539
+ * const client = new WebSocketClient();
540
+ *
541
+ * await client.subscribePublic([
542
+ * // will inherit markets from the markets array
543
+ * { name: SubscriptionNamePublic.tickers },
544
+ * // overrides the top level markets array with its own
545
+ * {
546
+ * name: SubscriptionNamePublic.candles,
547
+ * interval: CandleInterval.ONE_MINUTE,
548
+ * // replaces the top-level markets when provided
549
+ * markets: ['ETH-USD', 'BTC-USD'],
550
+ * },
551
+ * ], ['ETH-USD'])
552
+ * ```
553
+ *
554
+ * <br />
555
+ *
556
+ * ---
557
+ *
558
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#subscribePublic)
559
+ * @see related {@link subscribeAuthenticated client.subscribeAuthenticated}
560
+ *
561
+ * @category Subscription Management
562
+ */
563
+ subscribePublic(subscriptions: KatanaPerpsSubscribeTypePublic[], markets?: string[], cid?: string): this;
564
+ /**
565
+ * Unsubscribes from a subscription or subscriptions
566
+ *
567
+ * ---
568
+ *
569
+ * **Subscription Update Events:**
570
+ *
571
+ * - Receives a {@link katanaperps.KatanaPerpsSubscriptionsListEvent KatanaPerpsSubscriptionsListEvent} WebSocket response via
572
+ * the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler listing all active
573
+ * subscriptions.
574
+ *
575
+ * ---
576
+ *
577
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#unsubscribe)
578
+ * @see related {@link WebSocketRequestUnsubscribeSubscription}
579
+ *
580
+ * @category Subscription Management
581
+ */
582
+ unsubscribe(subscriptions?: Array<WebSocketRequestUnsubscribeShortNames | WebSocketRequestUnsubscribeSubscription>, markets?: string[], cid?: string): this;
583
+ /**
584
+ * List all active subscriptions
585
+ *
586
+ * ---
587
+ *
588
+ * **Subscription Update Events:**
589
+ *
590
+ * - Receives a {@link katanaperps.KatanaPerpsSubscriptionsListEvent KatanaPerpsSubscriptionsListEvent} WebSocket response via
591
+ * the {@link katanaperps.WebSocketClient.onMessage WebSocketClient.onMessage} handler listing all active
592
+ * subscriptions.
593
+ *
594
+ * ---
595
+ * @param cid
596
+ * - Optionally provide a `cid` property which will be returned in the response
597
+ * so that you can correlate the response to the request.
598
+ * @returns
599
+ * - `this` to allow chaining with other methods or requests.
600
+ * ---
601
+ *
602
+ * @see typedoc [Reference Documentation](https://sdk-js-docs-v1-perps.katana.network/classes/WebSocketClient.html#listSubscriptions)
603
+ *
604
+ * @category Subscription Management
605
+ */
606
+ listSubscriptions(cid?: string): this;
607
+ /**
608
+ * @internal
609
+ */
610
+ protected subscribe(subscriptions: KatanaPerpsSubscribeType[], markets?: string[], cid?: string): this;
611
+ private subscribeRequest;
612
+ private createWebSocketIfNeeded;
613
+ /**
614
+ * Waits until the WebSocket is connected before returning
615
+ *
616
+ * @internal
617
+ */
618
+ private resolveWhenConnected;
619
+ private handleWebSocketConnect;
620
+ private startPinging;
621
+ private stopPinging;
622
+ private handleWebSocketClose;
623
+ private handleWebSocketError;
624
+ private handleWebSocketMessage;
625
+ private cancelReconnect;
626
+ private reconnect;
627
+ private log;
628
+ private resetReconnectionState;
629
+ private sendMessage;
630
+ private throwIfDisconnected;
631
+ }
632
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/webSocket/index.ts"],"names":[],"mappings":"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"}