ccxt-ir 4.10.0 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1047) hide show
  1. package/README.md +4 -4
  2. package/dist/ccxt.browser.min.js +2 -2
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/abstract/bidarz.js +11 -0
  5. package/dist/cjs/src/bidarz.js +337 -0
  6. package/dist/cjs/src/bit24.js +4 -3
  7. package/js/ccxt.d.ts +5 -2
  8. package/js/ccxt.js +4 -2
  9. package/js/src/abstract/bidarz.d.ts +9 -0
  10. package/js/src/abstract/bidarz.js +11 -0
  11. package/js/src/bidarz.d.ts +22 -0
  12. package/js/src/bidarz.js +336 -0
  13. package/js/src/bit24.js +4 -3
  14. package/js/src/src/abantether.d.ts +21 -0
  15. package/js/src/src/abantether.js +353 -0
  16. package/js/src/src/abstract/abantether.d.ts +8 -0
  17. package/js/src/src/abstract/abantether.js +11 -0
  18. package/js/src/src/abstract/afratether.d.ts +9 -0
  19. package/js/src/src/abstract/afratether.js +11 -0
  20. package/js/src/src/abstract/alpaca.d.ts +77 -0
  21. package/js/src/src/abstract/alpaca.js +11 -0
  22. package/js/src/src/abstract/apex.d.ts +34 -0
  23. package/js/src/src/abstract/apex.js +11 -0
  24. package/js/src/src/abstract/arzinja.d.ts +8 -0
  25. package/js/src/src/abstract/arzinja.js +11 -0
  26. package/js/src/src/abstract/arzplus.d.ts +11 -0
  27. package/js/src/src/abstract/arzplus.js +11 -0
  28. package/js/src/src/abstract/ascendex.d.ts +80 -0
  29. package/js/src/src/abstract/ascendex.js +11 -0
  30. package/js/src/src/abstract/asretether.d.ts +8 -0
  31. package/js/src/src/abstract/asretether.js +11 -0
  32. package/js/src/src/abstract/bidarz.d.ts +9 -0
  33. package/js/src/src/abstract/bidarz.js +11 -0
  34. package/js/src/src/abstract/bigone.d.ts +48 -0
  35. package/js/src/src/abstract/bigone.js +11 -0
  36. package/js/src/src/abstract/binance.d.ts +773 -0
  37. package/js/src/src/abstract/binance.js +11 -0
  38. package/js/src/src/abstract/bingx.d.ts +165 -0
  39. package/js/src/src/abstract/bingx.js +11 -0
  40. package/js/src/src/abstract/bit24.d.ts +9 -0
  41. package/js/src/src/abstract/bit24.js +11 -0
  42. package/js/src/src/abstract/bit2c.d.ts +30 -0
  43. package/js/src/src/abstract/bit2c.js +11 -0
  44. package/js/src/src/abstract/bitbank.d.ts +35 -0
  45. package/js/src/src/abstract/bitbank.js +11 -0
  46. package/js/src/src/abstract/bitbarg.d.ts +8 -0
  47. package/js/src/src/abstract/bitbarg.js +11 -0
  48. package/js/src/src/abstract/bitbns.d.ts +43 -0
  49. package/js/src/src/abstract/bitbns.js +11 -0
  50. package/js/src/src/abstract/bitfinex.d.ts +143 -0
  51. package/js/src/src/abstract/bitfinex.js +11 -0
  52. package/js/src/src/abstract/bitflyer.d.ts +42 -0
  53. package/js/src/src/abstract/bitflyer.js +11 -0
  54. package/js/src/src/abstract/bitget.d.ts +578 -0
  55. package/js/src/src/abstract/bitget.js +11 -0
  56. package/js/src/src/abstract/bithumb.d.ts +35 -0
  57. package/js/src/src/abstract/bithumb.js +11 -0
  58. package/js/src/src/abstract/bitimen.d.ts +10 -0
  59. package/js/src/src/abstract/bitimen.js +11 -0
  60. package/js/src/src/abstract/bitir.d.ts +10 -0
  61. package/js/src/src/abstract/bitir.js +11 -0
  62. package/js/src/src/abstract/bitmart.d.ts +120 -0
  63. package/js/src/src/abstract/bitmart.js +11 -0
  64. package/js/src/src/abstract/bitmex.d.ts +100 -0
  65. package/js/src/src/abstract/bitmex.js +11 -0
  66. package/js/src/src/abstract/bitopro.d.ts +33 -0
  67. package/js/src/src/abstract/bitopro.js +11 -0
  68. package/js/src/src/abstract/bitpin.d.ts +11 -0
  69. package/js/src/src/abstract/bitpin.js +11 -0
  70. package/js/src/src/abstract/bitrue.d.ts +75 -0
  71. package/js/src/src/abstract/bitrue.js +11 -0
  72. package/js/src/src/abstract/bitso.d.ts +46 -0
  73. package/js/src/src/abstract/bitso.js +11 -0
  74. package/js/src/src/abstract/bitstamp.d.ts +262 -0
  75. package/js/src/src/abstract/bitstamp.js +11 -0
  76. package/js/src/src/abstract/bitteam.d.ts +32 -0
  77. package/js/src/src/abstract/bitteam.js +11 -0
  78. package/js/src/src/abstract/bittrade.d.ts +117 -0
  79. package/js/src/src/abstract/bittrade.js +11 -0
  80. package/js/src/src/abstract/bitunix.d.ts +9 -0
  81. package/js/src/src/abstract/bitunix.js +11 -0
  82. package/js/src/src/abstract/bitvavo.d.ts +30 -0
  83. package/js/src/src/abstract/bitvavo.js +11 -0
  84. package/js/src/src/abstract/blockchaincom.d.ts +31 -0
  85. package/js/src/src/abstract/blockchaincom.js +11 -0
  86. package/js/src/src/abstract/blofin.d.ts +70 -0
  87. package/js/src/src/abstract/blofin.js +11 -0
  88. package/js/src/src/abstract/btcalpha.d.ts +21 -0
  89. package/js/src/src/abstract/btcalpha.js +11 -0
  90. package/js/src/src/abstract/btcbox.d.ts +18 -0
  91. package/js/src/src/abstract/btcbox.js +11 -0
  92. package/js/src/src/abstract/btcmarkets.d.ts +42 -0
  93. package/js/src/src/abstract/btcmarkets.js +11 -0
  94. package/js/src/src/abstract/btcturk.d.ts +23 -0
  95. package/js/src/src/abstract/btcturk.js +11 -0
  96. package/js/src/src/abstract/bybit.d.ts +316 -0
  97. package/js/src/src/abstract/bybit.js +11 -0
  98. package/js/src/src/abstract/bydfi.d.ts +11 -0
  99. package/js/src/src/abstract/bydfi.js +11 -0
  100. package/js/src/src/abstract/cafearz.d.ts +8 -0
  101. package/js/src/src/abstract/cafearz.js +11 -0
  102. package/js/src/src/abstract/cex.d.ts +35 -0
  103. package/js/src/src/abstract/cex.js +11 -0
  104. package/js/src/src/abstract/coinbase.d.ts +97 -0
  105. package/js/src/src/abstract/coinbase.js +11 -0
  106. package/js/src/src/abstract/coinbaseexchange.d.ts +71 -0
  107. package/js/src/src/abstract/coinbaseexchange.js +11 -0
  108. package/js/src/src/abstract/coinbaseinternational.d.ts +42 -0
  109. package/js/src/src/abstract/coinbaseinternational.js +11 -0
  110. package/js/src/src/abstract/coincatch.d.ts +97 -0
  111. package/js/src/src/abstract/coincatch.js +11 -0
  112. package/js/src/src/abstract/coincheck.d.ts +36 -0
  113. package/js/src/src/abstract/coincheck.js +11 -0
  114. package/js/src/src/abstract/coinex.d.ts +240 -0
  115. package/js/src/src/abstract/coinex.js +11 -0
  116. package/js/src/src/abstract/coinmate.d.ts +65 -0
  117. package/js/src/src/abstract/coinmate.js +11 -0
  118. package/js/src/src/abstract/coinmetro.d.ts +37 -0
  119. package/js/src/src/abstract/coinmetro.js +11 -0
  120. package/js/src/src/abstract/coinone.d.ts +70 -0
  121. package/js/src/src/abstract/coinone.js +11 -0
  122. package/js/src/src/abstract/coinsph.d.ts +57 -0
  123. package/js/src/src/abstract/coinsph.js +11 -0
  124. package/js/src/src/abstract/coinspot.d.ts +31 -0
  125. package/js/src/src/abstract/coinspot.js +11 -0
  126. package/js/src/src/abstract/cryptocom.d.ts +126 -0
  127. package/js/src/src/abstract/cryptocom.js +11 -0
  128. package/js/src/src/abstract/cryptomus.d.ts +23 -0
  129. package/js/src/src/abstract/cryptomus.js +11 -0
  130. package/js/src/src/abstract/defx.d.ts +72 -0
  131. package/js/src/src/abstract/defx.js +11 -0
  132. package/js/src/src/abstract/delta.d.ts +53 -0
  133. package/js/src/src/abstract/delta.js +11 -0
  134. package/js/src/src/abstract/deribit.d.ts +129 -0
  135. package/js/src/src/abstract/deribit.js +11 -0
  136. package/js/src/src/abstract/derive.d.ts +120 -0
  137. package/js/src/src/abstract/derive.js +11 -0
  138. package/js/src/src/abstract/digifinex.d.ts +95 -0
  139. package/js/src/src/abstract/digifinex.js +11 -0
  140. package/js/src/src/abstract/ellipx.d.ts +28 -0
  141. package/js/src/src/abstract/ellipx.js +11 -0
  142. package/js/src/src/abstract/eterex.d.ts +8 -0
  143. package/js/src/src/abstract/eterex.js +11 -0
  144. package/js/src/src/abstract/excoino.d.ts +10 -0
  145. package/js/src/src/abstract/excoino.js +11 -0
  146. package/js/src/src/abstract/exir.d.ts +11 -0
  147. package/js/src/src/abstract/exir.js +11 -0
  148. package/js/src/src/abstract/exmo.d.ts +58 -0
  149. package/js/src/src/abstract/exmo.js +11 -0
  150. package/js/src/src/abstract/exnovin.d.ts +9 -0
  151. package/js/src/src/abstract/exnovin.js +11 -0
  152. package/js/src/src/abstract/farhadexchange.d.ts +8 -0
  153. package/js/src/src/abstract/farhadexchange.js +11 -0
  154. package/js/src/src/abstract/foxbit.d.ts +29 -0
  155. package/js/src/src/abstract/foxbit.js +11 -0
  156. package/js/src/src/abstract/gate.d.ts +287 -0
  157. package/js/src/src/abstract/gate.js +11 -0
  158. package/js/src/src/abstract/gemini.d.ts +62 -0
  159. package/js/src/src/abstract/gemini.js +11 -0
  160. package/js/src/src/abstract/hamtapay.d.ts +9 -0
  161. package/js/src/src/abstract/hamtapay.js +11 -0
  162. package/js/src/src/abstract/hashkey.d.ts +70 -0
  163. package/js/src/src/abstract/hashkey.js +11 -0
  164. package/js/src/src/abstract/hibachi.d.ts +29 -0
  165. package/js/src/src/abstract/hibachi.js +11 -0
  166. package/js/src/src/abstract/hitbtc.d.ts +118 -0
  167. package/js/src/src/abstract/hitbtc.js +11 -0
  168. package/js/src/src/abstract/hitobit.d.ts +11 -0
  169. package/js/src/src/abstract/hitobit.js +11 -0
  170. package/js/src/src/abstract/hollaex.d.ts +36 -0
  171. package/js/src/src/abstract/hollaex.js +11 -0
  172. package/js/src/src/abstract/htx.d.ts +551 -0
  173. package/js/src/src/abstract/htx.js +11 -0
  174. package/js/src/src/abstract/hyperliquid.d.ts +9 -0
  175. package/js/src/src/abstract/hyperliquid.js +11 -0
  176. package/js/src/src/abstract/independentreserve.d.ts +46 -0
  177. package/js/src/src/abstract/independentreserve.js +11 -0
  178. package/js/src/src/abstract/indodax.d.ts +29 -0
  179. package/js/src/src/abstract/indodax.js +11 -0
  180. package/js/src/src/abstract/iranexchange.d.ts +9 -0
  181. package/js/src/src/abstract/iranexchange.js +11 -0
  182. package/js/src/src/abstract/jibitex.d.ts +10 -0
  183. package/js/src/src/abstract/jibitex.js +11 -0
  184. package/js/src/src/abstract/kcex.d.ts +10 -0
  185. package/js/src/src/abstract/kcex.js +11 -0
  186. package/js/src/src/abstract/kifpoolme.d.ts +9 -0
  187. package/js/src/src/abstract/kifpoolme.js +11 -0
  188. package/js/src/src/abstract/kraken.d.ts +61 -0
  189. package/js/src/src/abstract/kraken.js +11 -0
  190. package/js/src/src/abstract/krakenfutures.d.ts +45 -0
  191. package/js/src/src/abstract/krakenfutures.js +11 -0
  192. package/js/src/src/abstract/kucoin.d.ts +227 -0
  193. package/js/src/src/abstract/kucoin.js +11 -0
  194. package/js/src/src/abstract/kucoinfutures.d.ts +254 -0
  195. package/js/src/src/abstract/kucoinfutures.js +11 -0
  196. package/js/src/src/abstract/latoken.d.ts +59 -0
  197. package/js/src/src/abstract/latoken.js +11 -0
  198. package/js/src/src/abstract/lbank.d.ts +65 -0
  199. package/js/src/src/abstract/lbank.js +11 -0
  200. package/js/src/src/abstract/luno.d.ts +41 -0
  201. package/js/src/src/abstract/luno.js +11 -0
  202. package/js/src/src/abstract/mazdax.d.ts +11 -0
  203. package/js/src/src/abstract/mazdax.js +11 -0
  204. package/js/src/src/abstract/mercado.d.ts +28 -0
  205. package/js/src/src/abstract/mercado.js +11 -0
  206. package/js/src/src/abstract/mexc.d.ts +183 -0
  207. package/js/src/src/abstract/mexc.js +11 -0
  208. package/js/src/src/abstract/modetrade.d.ts +122 -0
  209. package/js/src/src/abstract/modetrade.js +11 -0
  210. package/js/src/src/abstract/ndax.d.ts +100 -0
  211. package/js/src/src/abstract/ndax.js +11 -0
  212. package/js/src/src/abstract/nobitex.d.ts +10 -0
  213. package/js/src/src/abstract/nobitex.js +11 -0
  214. package/js/src/src/abstract/novadax.d.ts +32 -0
  215. package/js/src/src/abstract/novadax.js +11 -0
  216. package/js/src/src/abstract/oceanex.d.ts +30 -0
  217. package/js/src/src/abstract/oceanex.js +11 -0
  218. package/js/src/src/abstract/okcoin.d.ts +77 -0
  219. package/js/src/src/abstract/okcoin.js +11 -0
  220. package/js/src/src/abstract/okexchange.d.ts +11 -0
  221. package/js/src/src/abstract/okexchange.js +11 -0
  222. package/js/src/src/abstract/okx.d.ts +352 -0
  223. package/js/src/src/abstract/okx.js +11 -0
  224. package/js/src/src/abstract/ompfinex.d.ts +10 -0
  225. package/js/src/src/abstract/ompfinex.js +11 -0
  226. package/js/src/src/abstract/onetrading.d.ts +26 -0
  227. package/js/src/src/abstract/onetrading.js +11 -0
  228. package/js/src/src/abstract/oxfun.d.ts +37 -0
  229. package/js/src/src/abstract/oxfun.js +11 -0
  230. package/js/src/src/abstract/p2b.d.ts +25 -0
  231. package/js/src/src/abstract/p2b.js +11 -0
  232. package/js/src/src/abstract/paradex.d.ts +66 -0
  233. package/js/src/src/abstract/paradex.js +11 -0
  234. package/js/src/src/abstract/paymium.d.ts +31 -0
  235. package/js/src/src/abstract/paymium.js +11 -0
  236. package/js/src/src/abstract/phemex.d.ts +120 -0
  237. package/js/src/src/abstract/phemex.js +11 -0
  238. package/js/src/src/abstract/pingi.d.ts +9 -0
  239. package/js/src/src/abstract/pingi.js +11 -0
  240. package/js/src/src/abstract/poloniex.d.ts +108 -0
  241. package/js/src/src/abstract/poloniex.js +11 -0
  242. package/js/src/src/abstract/pooleno.d.ts +8 -0
  243. package/js/src/src/abstract/pooleno.js +11 -0
  244. package/js/src/src/abstract/probit.d.ts +26 -0
  245. package/js/src/src/abstract/probit.js +11 -0
  246. package/js/src/src/abstract/raastin.d.ts +11 -0
  247. package/js/src/src/abstract/raastin.js +11 -0
  248. package/js/src/src/abstract/ramzinex.d.ts +10 -0
  249. package/js/src/src/abstract/ramzinex.js +11 -0
  250. package/js/src/src/abstract/sarmayex.d.ts +8 -0
  251. package/js/src/src/abstract/sarmayex.js +11 -0
  252. package/js/src/src/abstract/sarrafex.d.ts +10 -0
  253. package/js/src/src/abstract/sarrafex.js +11 -0
  254. package/js/src/src/abstract/tabdeal.d.ts +10 -0
  255. package/js/src/src/abstract/tabdeal.js +11 -0
  256. package/js/src/src/abstract/tehran_exchange.d.ts +9 -0
  257. package/js/src/src/abstract/tehran_exchange.js +11 -0
  258. package/js/src/src/abstract/tetherland.d.ts +8 -0
  259. package/js/src/src/abstract/tetherland.js +11 -0
  260. package/js/src/src/abstract/timex.d.ts +65 -0
  261. package/js/src/src/abstract/timex.js +11 -0
  262. package/js/src/src/abstract/tokocrypto.d.ts +40 -0
  263. package/js/src/src/abstract/tokocrypto.js +11 -0
  264. package/js/src/src/abstract/toobit.d.ts +10 -0
  265. package/js/src/src/abstract/toobit.js +11 -0
  266. package/js/src/src/abstract/tradeogre.d.ts +21 -0
  267. package/js/src/src/abstract/tradeogre.js +11 -0
  268. package/js/src/src/abstract/twox.d.ts +8 -0
  269. package/js/src/src/abstract/twox.js +11 -0
  270. package/js/src/src/abstract/ubitex.d.ts +10 -0
  271. package/js/src/src/abstract/ubitex.js +11 -0
  272. package/js/src/src/abstract/upbit.d.ts +58 -0
  273. package/js/src/src/abstract/upbit.js +11 -0
  274. package/js/src/src/abstract/vertex.d.ts +22 -0
  275. package/js/src/src/abstract/vertex.js +11 -0
  276. package/js/src/src/abstract/wallex.d.ts +11 -0
  277. package/js/src/src/abstract/wallex.js +11 -0
  278. package/js/src/src/abstract/wavesexchange.d.ts +157 -0
  279. package/js/src/src/abstract/wavesexchange.js +11 -0
  280. package/js/src/src/abstract/whitebit.d.ts +117 -0
  281. package/js/src/src/abstract/whitebit.js +11 -0
  282. package/js/src/src/abstract/woo.d.ts +144 -0
  283. package/js/src/src/abstract/woo.js +11 -0
  284. package/js/src/src/abstract/woofipro.d.ts +122 -0
  285. package/js/src/src/abstract/woofipro.js +11 -0
  286. package/js/src/src/abstract/xt.d.ts +160 -0
  287. package/js/src/src/abstract/xt.js +11 -0
  288. package/js/src/src/abstract/yobit.d.ts +19 -0
  289. package/js/src/src/abstract/yobit.js +11 -0
  290. package/js/src/src/abstract/zaif.d.ts +41 -0
  291. package/js/src/src/abstract/zaif.js +11 -0
  292. package/js/src/src/abstract/zonda.d.ts +56 -0
  293. package/js/src/src/abstract/zonda.js +11 -0
  294. package/js/src/src/afratether.d.ts +21 -0
  295. package/js/src/src/afratether.js +356 -0
  296. package/js/src/src/alpaca.d.ts +332 -0
  297. package/js/src/src/alpaca.js +1908 -0
  298. package/js/src/src/apex.d.ts +333 -0
  299. package/js/src/src/apex.js +1942 -0
  300. package/js/src/src/arzinja.d.ts +21 -0
  301. package/js/src/src/arzinja.js +298 -0
  302. package/js/src/src/arzplus.d.ts +26 -0
  303. package/js/src/src/arzplus.js +581 -0
  304. package/js/src/src/ascendex.d.ts +424 -0
  305. package/js/src/src/ascendex.js +3699 -0
  306. package/js/src/src/asretether.d.ts +21 -0
  307. package/js/src/src/asretether.js +324 -0
  308. package/js/src/src/base/Exchange.d.ts +926 -0
  309. package/js/src/src/base/Exchange.js +7399 -0
  310. package/js/src/src/base/Precise.d.ts +42 -0
  311. package/js/src/src/base/Precise.js +275 -0
  312. package/js/src/src/base/errors.d.ts +168 -0
  313. package/js/src/src/base/errors.js +255 -0
  314. package/js/src/src/base/functions/crypto.d.ts +16 -0
  315. package/js/src/src/base/functions/crypto.js +131 -0
  316. package/js/src/src/base/functions/encode.d.ts +4 -0
  317. package/js/src/src/base/functions/encode.js +32 -0
  318. package/js/src/src/base/functions/generic.d.ts +29 -0
  319. package/js/src/src/base/functions/generic.js +203 -0
  320. package/js/src/src/base/functions/misc.d.ts +9 -0
  321. package/js/src/src/base/functions/misc.js +101 -0
  322. package/js/src/src/base/functions/number.d.ts +27 -0
  323. package/js/src/src/base/functions/number.js +313 -0
  324. package/js/src/src/base/functions/platform.d.ts +7 -0
  325. package/js/src/src/base/functions/platform.js +27 -0
  326. package/js/src/src/base/functions/rsa.d.ts +5 -0
  327. package/js/src/src/base/functions/rsa.js +49 -0
  328. package/js/src/src/base/functions/string.d.ts +7 -0
  329. package/js/src/src/base/functions/string.js +44 -0
  330. package/js/src/src/base/functions/throttle.d.ts +6 -0
  331. package/js/src/src/base/functions/throttle.js +67 -0
  332. package/js/src/src/base/functions/time.d.ts +21 -0
  333. package/js/src/src/base/functions/time.js +171 -0
  334. package/js/src/src/base/functions/totp.d.ts +3 -0
  335. package/js/src/src/base/functions/totp.js +25 -0
  336. package/js/src/src/base/functions/type.d.ts +37 -0
  337. package/js/src/src/base/functions/type.js +179 -0
  338. package/js/src/src/base/functions.d.ts +10 -0
  339. package/js/src/src/base/functions.js +18 -0
  340. package/js/src/src/base/types.d.ts +586 -0
  341. package/js/src/src/base/types.js +7 -0
  342. package/js/src/src/base/ws/Cache.d.ts +27 -0
  343. package/js/src/src/base/ws/Cache.js +260 -0
  344. package/js/src/src/base/ws/Client.d.ts +53 -0
  345. package/js/src/src/base/ws/Client.js +307 -0
  346. package/js/src/src/base/ws/Future.d.ts +8 -0
  347. package/js/src/src/base/ws/Future.js +35 -0
  348. package/js/src/src/base/ws/OrderBook.d.ts +25 -0
  349. package/js/src/src/base/ws/OrderBook.js +130 -0
  350. package/js/src/src/base/ws/OrderBookSide.d.ts +40 -0
  351. package/js/src/src/base/ws/OrderBookSide.js +286 -0
  352. package/js/src/src/base/ws/WsClient.d.ts +11 -0
  353. package/js/src/src/base/ws/WsClient.js +69 -0
  354. package/js/src/src/bequant.d.ts +4 -0
  355. package/js/src/src/bequant.js +35 -0
  356. package/js/src/src/bidarz.d.ts +16 -0
  357. package/js/src/src/bidarz.js +327 -0
  358. package/js/src/src/bigone.d.ts +296 -0
  359. package/js/src/src/bigone.js +2340 -0
  360. package/js/src/src/binance.d.ts +1667 -0
  361. package/js/src/src/binance.js +14400 -0
  362. package/js/src/src/binancecoinm.d.ts +6 -0
  363. package/js/src/src/binancecoinm.js +51 -0
  364. package/js/src/src/binanceus.d.ts +4 -0
  365. package/js/src/src/binanceus.js +225 -0
  366. package/js/src/src/binanceusdm.d.ts +6 -0
  367. package/js/src/src/binanceusdm.js +63 -0
  368. package/js/src/src/bingx.d.ts +778 -0
  369. package/js/src/src/bingx.js +6705 -0
  370. package/js/src/src/bit24.d.ts +24 -0
  371. package/js/src/src/bit24.js +520 -0
  372. package/js/src/src/bit2c.d.ts +146 -0
  373. package/js/src/src/bit2c.js +1029 -0
  374. package/js/src/src/bitbank.d.ts +181 -0
  375. package/js/src/src/bitbank.js +1146 -0
  376. package/js/src/src/bitbarg.d.ts +21 -0
  377. package/js/src/src/bitbarg.js +312 -0
  378. package/js/src/src/bitbns.d.ts +184 -0
  379. package/js/src/src/bitbns.js +1288 -0
  380. package/js/src/src/bitfinex.d.ts +516 -0
  381. package/js/src/src/bitfinex.js +3951 -0
  382. package/js/src/src/bitflyer.d.ts +229 -0
  383. package/js/src/src/bitflyer.js +1209 -0
  384. package/js/src/src/bitget.d.ts +1109 -0
  385. package/js/src/src/bitget.js +11033 -0
  386. package/js/src/src/bithumb.d.ts +165 -0
  387. package/js/src/src/bithumb.js +1257 -0
  388. package/js/src/src/bitimen.d.ts +23 -0
  389. package/js/src/src/bitimen.js +424 -0
  390. package/js/src/src/bitir.d.ts +23 -0
  391. package/js/src/src/bitir.js +521 -0
  392. package/js/src/src/bitmart.d.ts +736 -0
  393. package/js/src/src/bitmart.js +5639 -0
  394. package/js/src/src/bitmex.d.ts +395 -0
  395. package/js/src/src/bitmex.js +3088 -0
  396. package/js/src/src/bitopro.d.ts +295 -0
  397. package/js/src/src/bitopro.js +1892 -0
  398. package/js/src/src/bitpin.d.ts +23 -0
  399. package/js/src/src/bitpin.js +487 -0
  400. package/js/src/src/bitrue.d.ts +384 -0
  401. package/js/src/src/bitrue.js +3382 -0
  402. package/js/src/src/bitso.d.ts +270 -0
  403. package/js/src/src/bitso.js +1881 -0
  404. package/js/src/src/bitstamp.d.ts +355 -0
  405. package/js/src/src/bitstamp.js +2445 -0
  406. package/js/src/src/bitteam.d.ts +229 -0
  407. package/js/src/src/bitteam.js +2420 -0
  408. package/js/src/src/bittrade.d.ts +298 -0
  409. package/js/src/src/bittrade.js +2050 -0
  410. package/js/src/src/bitunix.d.ts +21 -0
  411. package/js/src/src/bitunix.js +326 -0
  412. package/js/src/src/bitvavo.d.ts +311 -0
  413. package/js/src/src/bitvavo.js +2204 -0
  414. package/js/src/src/blockchaincom.d.ts +256 -0
  415. package/js/src/src/blockchaincom.js +1259 -0
  416. package/js/src/src/blofin.d.ts +439 -0
  417. package/js/src/src/blofin.js +2576 -0
  418. package/js/src/src/btcalpha.d.ts +209 -0
  419. package/js/src/src/btcalpha.js +1056 -0
  420. package/js/src/src/btcbox.d.ts +144 -0
  421. package/js/src/src/btcbox.js +834 -0
  422. package/js/src/src/btcmarkets.d.ts +253 -0
  423. package/js/src/src/btcmarkets.js +1418 -0
  424. package/js/src/src/btcturk.d.ts +161 -0
  425. package/js/src/src/btcturk.js +1058 -0
  426. package/js/src/src/bybit.d.ts +1097 -0
  427. package/js/src/src/bybit.js +9382 -0
  428. package/js/src/src/bydfi.d.ts +23 -0
  429. package/js/src/src/bydfi.js +434 -0
  430. package/js/src/src/cafearz.d.ts +21 -0
  431. package/js/src/src/cafearz.js +346 -0
  432. package/js/src/src/cex.d.ts +286 -0
  433. package/js/src/src/cex.js +1799 -0
  434. package/js/src/src/coinbase.d.ts +623 -0
  435. package/js/src/src/coinbase.js +5220 -0
  436. package/js/src/src/coinbaseadvanced.d.ts +4 -0
  437. package/js/src/src/coinbaseadvanced.js +18 -0
  438. package/js/src/src/coinbaseexchange.d.ts +334 -0
  439. package/js/src/src/coinbaseexchange.js +2127 -0
  440. package/js/src/src/coinbaseinternational.d.ts +443 -0
  441. package/js/src/src/coinbaseinternational.js +2336 -0
  442. package/js/src/src/coincatch.d.ts +786 -0
  443. package/js/src/src/coincatch.js +5492 -0
  444. package/js/src/src/coincheck.d.ts +147 -0
  445. package/js/src/src/coincheck.js +962 -0
  446. package/js/src/src/coinex.d.ts +719 -0
  447. package/js/src/src/coinex.js +6166 -0
  448. package/js/src/src/coinmate.d.ts +202 -0
  449. package/js/src/src/coinmate.js +1215 -0
  450. package/js/src/src/coinmetro.d.ts +244 -0
  451. package/js/src/src/coinmetro.js +2024 -0
  452. package/js/src/src/coinone.d.ts +158 -0
  453. package/js/src/src/coinone.js +1278 -0
  454. package/js/src/src/coinsph.d.ts +310 -0
  455. package/js/src/src/coinsph.js +2203 -0
  456. package/js/src/src/coinspot.d.ts +108 -0
  457. package/js/src/src/coinspot.js +653 -0
  458. package/js/src/src/cryptocom.d.ts +463 -0
  459. package/js/src/src/cryptocom.js +3549 -0
  460. package/js/src/src/cryptomus.d.ts +158 -0
  461. package/js/src/src/cryptomus.js +1169 -0
  462. package/js/src/src/defx.d.ts +348 -0
  463. package/js/src/src/defx.js +2139 -0
  464. package/js/src/src/delta.d.ts +407 -0
  465. package/js/src/src/delta.js +3654 -0
  466. package/js/src/src/deribit.d.ts +516 -0
  467. package/js/src/src/deribit.js +3790 -0
  468. package/js/src/src/derive.d.ts +324 -0
  469. package/js/src/src/derive.js +2655 -0
  470. package/js/src/src/digifinex.d.ts +544 -0
  471. package/js/src/src/digifinex.js +4453 -0
  472. package/js/src/src/ellipx.d.ts +237 -0
  473. package/js/src/src/ellipx.js +2071 -0
  474. package/js/src/src/eterex.d.ts +21 -0
  475. package/js/src/src/eterex.js +299 -0
  476. package/js/src/src/excoino.d.ts +23 -0
  477. package/js/src/src/excoino.js +426 -0
  478. package/js/src/src/exir.d.ts +23 -0
  479. package/js/src/src/exir.js +403 -0
  480. package/js/src/src/exmo.d.ts +426 -0
  481. package/js/src/src/exmo.js +2825 -0
  482. package/js/src/src/exnovin.d.ts +22 -0
  483. package/js/src/src/exnovin.js +378 -0
  484. package/js/src/src/farhadexchange.d.ts +21 -0
  485. package/js/src/src/farhadexchange.js +280 -0
  486. package/js/src/src/fmfwio.d.ts +4 -0
  487. package/js/src/src/fmfwio.js +35 -0
  488. package/js/src/src/foxbit.d.ts +352 -0
  489. package/js/src/src/foxbit.js +2016 -0
  490. package/js/src/src/gate.d.ts +1071 -0
  491. package/js/src/src/gate.js +8282 -0
  492. package/js/src/src/gateio.d.ts +4 -0
  493. package/js/src/src/gateio.js +17 -0
  494. package/js/src/src/gemini.d.ts +257 -0
  495. package/js/src/src/gemini.js +2006 -0
  496. package/js/src/src/hamtapay.d.ts +21 -0
  497. package/js/src/src/hamtapay.js +303 -0
  498. package/js/src/src/hashkey.d.ts +628 -0
  499. package/js/src/src/hashkey.js +4363 -0
  500. package/js/src/src/hibachi.d.ts +346 -0
  501. package/js/src/src/hibachi.js +2137 -0
  502. package/js/src/src/hitbtc.d.ts +558 -0
  503. package/js/src/src/hitbtc.js +3847 -0
  504. package/js/src/src/hitobit.d.ts +23 -0
  505. package/js/src/src/hitobit.js +412 -0
  506. package/js/src/src/hollaex.d.ts +305 -0
  507. package/js/src/src/hollaex.js +2046 -0
  508. package/js/src/src/htx.d.ts +961 -0
  509. package/js/src/src/htx.js +9668 -0
  510. package/js/src/src/huobi.d.ts +4 -0
  511. package/js/src/src/huobi.js +17 -0
  512. package/js/src/src/hyperliquid.d.ts +651 -0
  513. package/js/src/src/hyperliquid.js +3937 -0
  514. package/js/src/src/independentreserve.d.ts +169 -0
  515. package/js/src/src/independentreserve.js +1115 -0
  516. package/js/src/src/indodax.d.ts +217 -0
  517. package/js/src/src/indodax.js +1454 -0
  518. package/js/src/src/iranexchange.d.ts +21 -0
  519. package/js/src/src/iranexchange.js +399 -0
  520. package/js/src/src/jibitex.d.ts +23 -0
  521. package/js/src/src/jibitex.js +416 -0
  522. package/js/src/src/kcex.d.ts +21 -0
  523. package/js/src/src/kcex.js +335 -0
  524. package/js/src/src/kifpoolme.d.ts +23 -0
  525. package/js/src/src/kifpoolme.js +410 -0
  526. package/js/src/src/kraken.d.ts +484 -0
  527. package/js/src/src/kraken.js +3518 -0
  528. package/js/src/src/krakenfutures.d.ts +362 -0
  529. package/js/src/src/krakenfutures.js +2885 -0
  530. package/js/src/src/kucoin.d.ts +759 -0
  531. package/js/src/src/kucoin.js +5153 -0
  532. package/js/src/src/kucoinfutures.d.ts +521 -0
  533. package/js/src/src/kucoinfutures.js +3381 -0
  534. package/js/src/src/latoken.d.ts +274 -0
  535. package/js/src/src/latoken.js +1824 -0
  536. package/js/src/src/lbank.d.ts +350 -0
  537. package/js/src/src/lbank.js +3146 -0
  538. package/js/src/src/luno.d.ts +252 -0
  539. package/js/src/src/luno.js +1479 -0
  540. package/js/src/src/mazdax.d.ts +23 -0
  541. package/js/src/src/mazdax.js +534 -0
  542. package/js/src/src/mercado.d.ts +160 -0
  543. package/js/src/src/mercado.js +1011 -0
  544. package/js/src/src/mexc.d.ts +768 -0
  545. package/js/src/src/mexc.js +6102 -0
  546. package/js/src/src/modetrade.d.ts +496 -0
  547. package/js/src/src/modetrade.js +2936 -0
  548. package/js/src/src/myokx.d.ts +4 -0
  549. package/js/src/src/myokx.js +54 -0
  550. package/js/src/src/ndax.d.ts +285 -0
  551. package/js/src/src/ndax.js +2598 -0
  552. package/js/src/src/nobitex.d.ts +23 -0
  553. package/js/src/src/nobitex.js +454 -0
  554. package/js/src/src/novadax.d.ts +279 -0
  555. package/js/src/src/novadax.js +1676 -0
  556. package/js/src/src/oceanex.d.ts +231 -0
  557. package/js/src/src/oceanex.js +1123 -0
  558. package/js/src/src/okcoin.d.ts +346 -0
  559. package/js/src/src/okcoin.js +3211 -0
  560. package/js/src/src/okexchange.d.ts +23 -0
  561. package/js/src/src/okexchange.js +373 -0
  562. package/js/src/src/okx.d.ts +1125 -0
  563. package/js/src/src/okx.js +9009 -0
  564. package/js/src/src/okxus.d.ts +4 -0
  565. package/js/src/src/okxus.js +54 -0
  566. package/js/src/src/ompfinex.d.ts +23 -0
  567. package/js/src/src/ompfinex.js +510 -0
  568. package/js/src/src/onetrading.d.ts +228 -0
  569. package/js/src/src/onetrading.js +1769 -0
  570. package/js/src/src/oxfun.d.ts +442 -0
  571. package/js/src/src/oxfun.js +2920 -0
  572. package/js/src/src/p2b.d.ts +189 -0
  573. package/js/src/src/p2b.js +1344 -0
  574. package/js/src/src/paradex.d.ts +389 -0
  575. package/js/src/src/paradex.js +2607 -0
  576. package/js/src/src/paymium.d.ts +133 -0
  577. package/js/src/src/paymium.js +644 -0
  578. package/js/src/src/phemex.d.ts +497 -0
  579. package/js/src/src/phemex.js +5333 -0
  580. package/js/src/src/pingi.d.ts +22 -0
  581. package/js/src/src/pingi.js +446 -0
  582. package/js/src/src/poloniex.d.ts +441 -0
  583. package/js/src/src/poloniex.js +3681 -0
  584. package/js/src/src/pooleno.d.ts +21 -0
  585. package/js/src/src/pooleno.js +347 -0
  586. package/js/src/src/pro/alpaca.d.ts +95 -0
  587. package/js/src/src/pro/alpaca.js +724 -0
  588. package/js/src/src/pro/apex.d.ts +160 -0
  589. package/js/src/src/pro/apex.js +1044 -0
  590. package/js/src/src/pro/ascendex.d.ts +99 -0
  591. package/js/src/src/pro/ascendex.js +1012 -0
  592. package/js/src/src/pro/bequant.d.ts +4 -0
  593. package/js/src/src/pro/bequant.js +42 -0
  594. package/js/src/src/pro/binance.d.ts +796 -0
  595. package/js/src/src/pro/binance.js +4373 -0
  596. package/js/src/src/pro/binancecoinm.d.ts +4 -0
  597. package/js/src/src/pro/binancecoinm.js +32 -0
  598. package/js/src/src/pro/binanceus.d.ts +4 -0
  599. package/js/src/src/pro/binanceus.js +52 -0
  600. package/js/src/src/pro/binanceusdm.d.ts +4 -0
  601. package/js/src/src/pro/binanceusdm.js +37 -0
  602. package/js/src/src/pro/bingx.d.ts +151 -0
  603. package/js/src/src/pro/bingx.js +1568 -0
  604. package/js/src/src/pro/bitfinex.d.ts +99 -0
  605. package/js/src/src/pro/bitfinex.js +1165 -0
  606. package/js/src/src/pro/bitget.d.ts +257 -0
  607. package/js/src/src/pro/bitget.js +2327 -0
  608. package/js/src/src/pro/bithumb.d.ts +59 -0
  609. package/js/src/src/pro/bithumb.js +395 -0
  610. package/js/src/src/pro/bitmart.d.ts +168 -0
  611. package/js/src/src/pro/bitmart.js +1686 -0
  612. package/js/src/src/pro/bitmex.d.ts +170 -0
  613. package/js/src/src/pro/bitmex.js +1760 -0
  614. package/js/src/src/pro/bitopro.d.ts +69 -0
  615. package/js/src/src/pro/bitopro.js +477 -0
  616. package/js/src/src/pro/bitrue.d.ts +40 -0
  617. package/js/src/src/pro/bitrue.js +461 -0
  618. package/js/src/src/pro/bitstamp.d.ts +53 -0
  619. package/js/src/src/pro/bitstamp.js +587 -0
  620. package/js/src/src/pro/bittrade.d.ts +66 -0
  621. package/js/src/src/pro/bittrade.js +606 -0
  622. package/js/src/src/pro/bitvavo.d.ts +321 -0
  623. package/js/src/src/pro/bitvavo.js +1451 -0
  624. package/js/src/src/pro/blockchaincom.d.ts +89 -0
  625. package/js/src/src/pro/blockchaincom.js +777 -0
  626. package/js/src/src/pro/blofin.d.ts +174 -0
  627. package/js/src/src/pro/blofin.js +743 -0
  628. package/js/src/src/pro/bybit.d.ts +397 -0
  629. package/js/src/src/pro/bybit.js +2519 -0
  630. package/js/src/src/pro/cex.d.ts +220 -0
  631. package/js/src/src/pro/cex.js +1535 -0
  632. package/js/src/src/pro/coinbase.d.ts +119 -0
  633. package/js/src/src/pro/coinbase.js +736 -0
  634. package/js/src/src/pro/coinbaseadvanced.d.ts +4 -0
  635. package/js/src/src/pro/coinbaseadvanced.js +18 -0
  636. package/js/src/src/pro/coinbaseexchange.d.ts +133 -0
  637. package/js/src/src/pro/coinbaseexchange.js +969 -0
  638. package/js/src/src/pro/coinbaseinternational.d.ts +143 -0
  639. package/js/src/src/pro/coinbaseinternational.js +804 -0
  640. package/js/src/src/pro/coincatch.d.ts +207 -0
  641. package/js/src/src/pro/coincatch.js +1562 -0
  642. package/js/src/src/pro/coincheck.d.ts +33 -0
  643. package/js/src/src/pro/coincheck.js +210 -0
  644. package/js/src/src/pro/coinex.d.ts +147 -0
  645. package/js/src/src/pro/coinex.js +1426 -0
  646. package/js/src/src/pro/coinone.d.ts +51 -0
  647. package/js/src/src/pro/coinone.js +413 -0
  648. package/js/src/src/pro/cryptocom.d.ts +300 -0
  649. package/js/src/src/pro/cryptocom.js +1414 -0
  650. package/js/src/src/pro/defx.d.ts +236 -0
  651. package/js/src/src/pro/defx.js +865 -0
  652. package/js/src/src/pro/deribit.d.ts +163 -0
  653. package/js/src/src/pro/deribit.js +1066 -0
  654. package/js/src/src/pro/derive.d.ts +100 -0
  655. package/js/src/src/pro/derive.js +753 -0
  656. package/js/src/src/pro/exmo.d.ts +97 -0
  657. package/js/src/src/pro/exmo.js +903 -0
  658. package/js/src/src/pro/gate.d.ts +360 -0
  659. package/js/src/src/pro/gate.js +2119 -0
  660. package/js/src/src/pro/gateio.d.ts +4 -0
  661. package/js/src/src/pro/gateio.js +17 -0
  662. package/js/src/src/pro/gemini.d.ts +106 -0
  663. package/js/src/src/pro/gemini.js +932 -0
  664. package/js/src/src/pro/hashkey.d.ts +121 -0
  665. package/js/src/src/pro/hashkey.js +843 -0
  666. package/js/src/src/pro/hitbtc.d.ts +235 -0
  667. package/js/src/src/pro/hitbtc.js +1400 -0
  668. package/js/src/src/pro/hollaex.d.ts +77 -0
  669. package/js/src/src/pro/hollaex.js +604 -0
  670. package/js/src/src/pro/htx.d.ts +141 -0
  671. package/js/src/src/pro/htx.js +2415 -0
  672. package/js/src/src/pro/huobi.d.ts +4 -0
  673. package/js/src/src/pro/huobi.js +17 -0
  674. package/js/src/src/pro/hyperliquid.d.ts +218 -0
  675. package/js/src/src/pro/hyperliquid.js +1126 -0
  676. package/js/src/src/pro/independentreserve.d.ts +36 -0
  677. package/js/src/src/pro/independentreserve.js +287 -0
  678. package/js/src/src/pro/kraken.d.ts +233 -0
  679. package/js/src/src/pro/kraken.js +1785 -0
  680. package/js/src/src/pro/krakenfutures.d.ts +178 -0
  681. package/js/src/src/pro/krakenfutures.js +1592 -0
  682. package/js/src/src/pro/kucoin.d.ts +221 -0
  683. package/js/src/src/pro/kucoin.js +1430 -0
  684. package/js/src/src/pro/kucoinfutures.d.ts +205 -0
  685. package/js/src/src/pro/kucoinfutures.js +1295 -0
  686. package/js/src/src/pro/lbank.d.ts +134 -0
  687. package/js/src/src/pro/lbank.js +950 -0
  688. package/js/src/src/pro/luno.d.ts +44 -0
  689. package/js/src/src/pro/luno.js +322 -0
  690. package/js/src/src/pro/mexc.d.ts +210 -0
  691. package/js/src/src/pro/mexc.js +2009 -0
  692. package/js/src/src/pro/modetrade.d.ts +155 -0
  693. package/js/src/src/pro/modetrade.js +1335 -0
  694. package/js/src/src/pro/myokx.d.ts +4 -0
  695. package/js/src/src/pro/myokx.js +39 -0
  696. package/js/src/src/pro/ndax.d.ts +60 -0
  697. package/js/src/src/pro/ndax.js +545 -0
  698. package/js/src/src/pro/okcoin.d.ts +91 -0
  699. package/js/src/src/pro/okcoin.js +763 -0
  700. package/js/src/src/pro/okx.d.ts +408 -0
  701. package/js/src/src/pro/okx.js +2479 -0
  702. package/js/src/src/pro/okxus.d.ts +4 -0
  703. package/js/src/src/pro/okxus.js +39 -0
  704. package/js/src/src/pro/onetrading.d.ts +107 -0
  705. package/js/src/src/pro/onetrading.js +1343 -0
  706. package/js/src/src/pro/oxfun.d.ts +234 -0
  707. package/js/src/src/pro/oxfun.js +1112 -0
  708. package/js/src/src/pro/p2b.d.ts +104 -0
  709. package/js/src/src/pro/p2b.js +506 -0
  710. package/js/src/src/pro/paradex.d.ts +54 -0
  711. package/js/src/src/pro/paradex.js +370 -0
  712. package/js/src/src/pro/phemex.d.ts +129 -0
  713. package/js/src/src/pro/phemex.js +1569 -0
  714. package/js/src/src/pro/poloniex.d.ts +214 -0
  715. package/js/src/src/pro/poloniex.js +1318 -0
  716. package/js/src/src/pro/probit.d.ts +91 -0
  717. package/js/src/src/pro/probit.js +593 -0
  718. package/js/src/src/pro/tradeogre.d.ts +49 -0
  719. package/js/src/src/pro/tradeogre.js +284 -0
  720. package/js/src/src/pro/upbit.d.ts +124 -0
  721. package/js/src/src/pro/upbit.js +689 -0
  722. package/js/src/src/pro/vertex.d.ts +104 -0
  723. package/js/src/src/pro/vertex.js +999 -0
  724. package/js/src/src/pro/whitebit.d.ts +123 -0
  725. package/js/src/src/pro/whitebit.js +971 -0
  726. package/js/src/src/pro/woo.d.ts +161 -0
  727. package/js/src/src/pro/woo.js +1351 -0
  728. package/js/src/src/pro/woofipro.d.ts +155 -0
  729. package/js/src/src/pro/woofipro.js +1335 -0
  730. package/js/src/src/pro/xt.d.ts +165 -0
  731. package/js/src/src/pro/xt.js +1230 -0
  732. package/js/src/src/probit.d.ts +283 -0
  733. package/js/src/src/probit.js +1935 -0
  734. package/js/src/src/protobuf/mexc/compiled.cjs +7186 -0
  735. package/js/src/src/protobuf/mexc/compiled.d.cts +8 -0
  736. package/js/src/src/raastin.d.ts +24 -0
  737. package/js/src/src/raastin.js +494 -0
  738. package/js/src/src/ramzinex.d.ts +23 -0
  739. package/js/src/src/ramzinex.js +510 -0
  740. package/js/src/src/sarmayex.d.ts +21 -0
  741. package/js/src/src/sarmayex.js +376 -0
  742. package/js/src/src/sarrafex.d.ts +23 -0
  743. package/js/src/src/sarrafex.js +501 -0
  744. package/js/src/src/static_dependencies/ethers/abi-coder.d.ts +50 -0
  745. package/js/src/src/static_dependencies/ethers/abi-coder.js +148 -0
  746. package/js/src/src/static_dependencies/ethers/address/address.d.ts +55 -0
  747. package/js/src/src/static_dependencies/ethers/address/address.js +162 -0
  748. package/js/src/src/static_dependencies/ethers/address/checks.d.ts +80 -0
  749. package/js/src/src/static_dependencies/ethers/address/checks.js +119 -0
  750. package/js/src/src/static_dependencies/ethers/address/contract-address.d.ts +47 -0
  751. package/js/src/src/static_dependencies/ethers/address/contract-address.js +73 -0
  752. package/js/src/src/static_dependencies/ethers/address/index.d.ts +48 -0
  753. package/js/src/src/static_dependencies/ethers/address/index.js +24 -0
  754. package/js/src/src/static_dependencies/ethers/bytes32.d.ts +14 -0
  755. package/js/src/src/static_dependencies/ethers/bytes32.js +45 -0
  756. package/js/src/src/static_dependencies/ethers/coders/abstract-coder.d.ts +120 -0
  757. package/js/src/src/static_dependencies/ethers/coders/abstract-coder.js +424 -0
  758. package/js/src/src/static_dependencies/ethers/coders/address.d.ts +12 -0
  759. package/js/src/src/static_dependencies/ethers/coders/address.js +34 -0
  760. package/js/src/src/static_dependencies/ethers/coders/anonymous.d.ts +14 -0
  761. package/js/src/src/static_dependencies/ethers/coders/anonymous.js +27 -0
  762. package/js/src/src/static_dependencies/ethers/coders/array.d.ts +24 -0
  763. package/js/src/src/static_dependencies/ethers/coders/array.js +162 -0
  764. package/js/src/src/static_dependencies/ethers/coders/boolean.d.ts +12 -0
  765. package/js/src/src/static_dependencies/ethers/coders/boolean.js +26 -0
  766. package/js/src/src/static_dependencies/ethers/coders/bytes.d.ts +18 -0
  767. package/js/src/src/static_dependencies/ethers/coders/bytes.js +39 -0
  768. package/js/src/src/static_dependencies/ethers/coders/fixed-bytes.d.ts +14 -0
  769. package/js/src/src/static_dependencies/ethers/coders/fixed-bytes.js +32 -0
  770. package/js/src/src/static_dependencies/ethers/coders/null.d.ts +11 -0
  771. package/js/src/src/static_dependencies/ethers/coders/null.js +29 -0
  772. package/js/src/src/static_dependencies/ethers/coders/number.d.ts +15 -0
  773. package/js/src/src/static_dependencies/ethers/coders/number.js +48 -0
  774. package/js/src/src/static_dependencies/ethers/coders/string.d.ts +12 -0
  775. package/js/src/src/static_dependencies/ethers/coders/string.js +26 -0
  776. package/js/src/src/static_dependencies/ethers/coders/tuple.d.ts +15 -0
  777. package/js/src/src/static_dependencies/ethers/coders/tuple.js +67 -0
  778. package/js/src/src/static_dependencies/ethers/fragments.d.ts +458 -0
  779. package/js/src/src/static_dependencies/ethers/fragments.js +1252 -0
  780. package/js/src/src/static_dependencies/ethers/hash/index.d.ts +10 -0
  781. package/js/src/src/static_dependencies/ethers/hash/index.js +15 -0
  782. package/js/src/src/static_dependencies/ethers/hash/solidity.d.ts +30 -0
  783. package/js/src/src/static_dependencies/ethers/hash/solidity.js +107 -0
  784. package/js/src/src/static_dependencies/ethers/hash/typed-data.d.ts +144 -0
  785. package/js/src/src/static_dependencies/ethers/hash/typed-data.js +490 -0
  786. package/js/src/src/static_dependencies/ethers/index.d.ts +19 -0
  787. package/js/src/src/static_dependencies/ethers/index.js +22 -0
  788. package/js/src/src/static_dependencies/ethers/interface.d.ts +380 -0
  789. package/js/src/src/static_dependencies/ethers/interface.js +990 -0
  790. package/js/src/src/static_dependencies/ethers/typed.d.ts +569 -0
  791. package/js/src/src/static_dependencies/ethers/typed.js +608 -0
  792. package/js/src/src/static_dependencies/ethers/utils/base58.d.ts +22 -0
  793. package/js/src/src/static_dependencies/ethers/utils/base58.js +68 -0
  794. package/js/src/src/static_dependencies/ethers/utils/base64.d.ts +39 -0
  795. package/js/src/src/static_dependencies/ethers/utils/base64.js +58 -0
  796. package/js/src/src/static_dependencies/ethers/utils/data.d.ts +92 -0
  797. package/js/src/src/static_dependencies/ethers/utils/data.js +175 -0
  798. package/js/src/src/static_dependencies/ethers/utils/errors.d.ts +509 -0
  799. package/js/src/src/static_dependencies/ethers/utils/errors.js +227 -0
  800. package/js/src/src/static_dependencies/ethers/utils/events.d.ts +76 -0
  801. package/js/src/src/static_dependencies/ethers/utils/events.js +52 -0
  802. package/js/src/src/static_dependencies/ethers/utils/fixednumber.d.ts +251 -0
  803. package/js/src/src/static_dependencies/ethers/utils/fixednumber.js +529 -0
  804. package/js/src/src/static_dependencies/ethers/utils/index.d.ts +30 -0
  805. package/js/src/src/static_dependencies/ethers/utils/index.js +38 -0
  806. package/js/src/src/static_dependencies/ethers/utils/maths.d.ts +65 -0
  807. package/js/src/src/static_dependencies/ethers/utils/maths.js +220 -0
  808. package/js/src/src/static_dependencies/ethers/utils/properties.d.ts +22 -0
  809. package/js/src/src/static_dependencies/ethers/utils/properties.js +59 -0
  810. package/js/src/src/static_dependencies/ethers/utils/rlp-decode.d.ts +5 -0
  811. package/js/src/src/static_dependencies/ethers/utils/rlp-decode.js +84 -0
  812. package/js/src/src/static_dependencies/ethers/utils/rlp-encode.d.ts +5 -0
  813. package/js/src/src/static_dependencies/ethers/utils/rlp-encode.js +54 -0
  814. package/js/src/src/static_dependencies/ethers/utils/rlp.d.ts +16 -0
  815. package/js/src/src/static_dependencies/ethers/utils/rlp.js +14 -0
  816. package/js/src/src/static_dependencies/ethers/utils/units.d.ts +23 -0
  817. package/js/src/src/static_dependencies/ethers/utils/units.js +88 -0
  818. package/js/src/src/static_dependencies/ethers/utils/utf8.d.ts +95 -0
  819. package/js/src/src/static_dependencies/ethers/utils/utf8.js +225 -0
  820. package/js/src/src/static_dependencies/ethers/utils/uuid.d.ts +7 -0
  821. package/js/src/src/static_dependencies/ethers/utils/uuid.js +35 -0
  822. package/js/src/src/static_dependencies/fflake/browser.d.ts +222 -0
  823. package/js/src/src/static_dependencies/fflake/browser.js +2578 -0
  824. package/js/src/src/static_dependencies/jsencrypt/JSEncrypt.d.ts +116 -0
  825. package/js/src/src/static_dependencies/jsencrypt/JSEncrypt.js +194 -0
  826. package/js/src/src/static_dependencies/jsencrypt/JSEncryptRSAKey.d.ts +142 -0
  827. package/js/src/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +307 -0
  828. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/asn1.d.ts +51 -0
  829. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +565 -0
  830. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/base64.d.ts +5 -0
  831. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +94 -0
  832. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/hex.d.ts +3 -0
  833. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +70 -0
  834. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/int10.d.ts +9 -0
  835. package/js/src/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +91 -0
  836. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/base64.d.ts +3 -0
  837. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +25 -0
  838. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +101 -0
  839. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1757 -0
  840. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/prng4.d.ts +10 -0
  841. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +50 -0
  842. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rng.d.ts +3 -0
  843. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +80 -0
  844. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rsa.d.ts +23 -0
  845. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +377 -0
  846. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/util.d.ts +7 -0
  847. package/js/src/src/static_dependencies/jsencrypt/lib/jsbn/util.js +64 -0
  848. package/js/src/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.d.ts +24 -0
  849. package/js/src/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1627 -0
  850. package/js/src/src/static_dependencies/noble-curves/_shortw_utils.d.ts +60 -0
  851. package/js/src/src/static_dependencies/noble-curves/_shortw_utils.js +22 -0
  852. package/js/src/src/static_dependencies/noble-curves/abstract/curve.d.ts +67 -0
  853. package/js/src/src/static_dependencies/noble-curves/abstract/curve.js +157 -0
  854. package/js/src/src/static_dependencies/noble-curves/abstract/edwards.d.ts +79 -0
  855. package/js/src/src/static_dependencies/noble-curves/abstract/edwards.js +432 -0
  856. package/js/src/src/static_dependencies/noble-curves/abstract/hash-to-curve.d.ts +56 -0
  857. package/js/src/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +171 -0
  858. package/js/src/src/static_dependencies/noble-curves/abstract/modular.d.ts +68 -0
  859. package/js/src/src/static_dependencies/noble-curves/abstract/modular.js +351 -0
  860. package/js/src/src/static_dependencies/noble-curves/abstract/montgomery.d.ts +25 -0
  861. package/js/src/src/static_dependencies/noble-curves/abstract/montgomery.js +162 -0
  862. package/js/src/src/static_dependencies/noble-curves/abstract/poseidon.d.ts +29 -0
  863. package/js/src/src/static_dependencies/noble-curves/abstract/poseidon.js +115 -0
  864. package/js/src/src/static_dependencies/noble-curves/abstract/utils.d.ts +53 -0
  865. package/js/src/src/static_dependencies/noble-curves/abstract/utils.js +227 -0
  866. package/js/src/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +204 -0
  867. package/js/src/src/static_dependencies/noble-curves/abstract/weierstrass.js +1016 -0
  868. package/js/src/src/static_dependencies/noble-curves/ed25519.d.ts +53 -0
  869. package/js/src/src/static_dependencies/noble-curves/ed25519.js +402 -0
  870. package/js/src/src/static_dependencies/noble-curves/p256.d.ts +103 -0
  871. package/js/src/src/static_dependencies/noble-curves/p256.js +47 -0
  872. package/js/src/src/static_dependencies/noble-curves/secp256k1.d.ts +91 -0
  873. package/js/src/src/static_dependencies/noble-curves/secp256k1.js +257 -0
  874. package/js/src/src/static_dependencies/noble-hashes/_assert.d.ts +21 -0
  875. package/js/src/src/static_dependencies/noble-hashes/_assert.js +48 -0
  876. package/js/src/src/static_dependencies/noble-hashes/_sha2.d.ts +23 -0
  877. package/js/src/src/static_dependencies/noble-hashes/_sha2.js +119 -0
  878. package/js/src/src/static_dependencies/noble-hashes/_u64.d.ts +35 -0
  879. package/js/src/src/static_dependencies/noble-hashes/_u64.js +66 -0
  880. package/js/src/src/static_dependencies/noble-hashes/crypto.d.ts +1 -0
  881. package/js/src/src/static_dependencies/noble-hashes/crypto.js +7 -0
  882. package/js/src/src/static_dependencies/noble-hashes/hmac.d.ts +26 -0
  883. package/js/src/src/static_dependencies/noble-hashes/hmac.js +82 -0
  884. package/js/src/src/static_dependencies/noble-hashes/md5.d.ts +18 -0
  885. package/js/src/src/static_dependencies/noble-hashes/md5.js +242 -0
  886. package/js/src/src/static_dependencies/noble-hashes/sha1.d.ts +21 -0
  887. package/js/src/src/static_dependencies/noble-hashes/sha1.js +90 -0
  888. package/js/src/src/static_dependencies/noble-hashes/sha256.d.ts +34 -0
  889. package/js/src/src/static_dependencies/noble-hashes/sha256.js +129 -0
  890. package/js/src/src/static_dependencies/noble-hashes/sha3.d.ts +97 -0
  891. package/js/src/src/static_dependencies/noble-hashes/sha3.js +211 -0
  892. package/js/src/src/static_dependencies/noble-hashes/sha512.d.ts +66 -0
  893. package/js/src/src/static_dependencies/noble-hashes/sha512.js +236 -0
  894. package/js/src/src/static_dependencies/noble-hashes/utils.d.ts +77 -0
  895. package/js/src/src/static_dependencies/noble-hashes/utils.js +147 -0
  896. package/js/src/src/static_dependencies/proxies/agent-base/helpers.d.ts +14 -0
  897. package/js/src/src/static_dependencies/proxies/agent-base/helpers.js +42 -0
  898. package/js/src/src/static_dependencies/proxies/agent-base/index.d.ts +33 -0
  899. package/js/src/src/static_dependencies/proxies/agent-base/index.js +82 -0
  900. package/js/src/src/static_dependencies/proxies/http-proxy-agent/index.d.ts +40 -0
  901. package/js/src/src/static_dependencies/proxies/http-proxy-agent/index.js +119 -0
  902. package/js/src/src/static_dependencies/proxies/https-proxy-agent/index.d.ts +45 -0
  903. package/js/src/src/static_dependencies/proxies/https-proxy-agent/index.js +150 -0
  904. package/js/src/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.d.ts +15 -0
  905. package/js/src/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +95 -0
  906. package/js/src/src/static_dependencies/qs/formats.cjs +22 -0
  907. package/js/src/src/static_dependencies/qs/formats.d.cts +14 -0
  908. package/js/src/src/static_dependencies/qs/index.cjs +15 -0
  909. package/js/src/src/static_dependencies/qs/index.d.cts +10 -0
  910. package/js/src/src/static_dependencies/qs/parse.cjs +208 -0
  911. package/js/src/src/static_dependencies/qs/parse.d.cts +8 -0
  912. package/js/src/src/static_dependencies/qs/stringify.cjs +192 -0
  913. package/js/src/src/static_dependencies/qs/stringify.d.cts +8 -0
  914. package/js/src/src/static_dependencies/qs/utils.cjs +202 -0
  915. package/js/src/src/static_dependencies/qs/utils.d.cts +15 -0
  916. package/js/src/src/static_dependencies/scure-base/index.d.ts +92 -0
  917. package/js/src/src/static_dependencies/scure-base/index.js +420 -0
  918. package/js/src/src/static_dependencies/scure-starknet/index.d.ts +79 -0
  919. package/js/src/src/static_dependencies/scure-starknet/index.js +323 -0
  920. package/js/src/src/static_dependencies/starknet/constants.d.ts +61 -0
  921. package/js/src/src/static_dependencies/starknet/constants.js +67 -0
  922. package/js/src/src/static_dependencies/starknet/index.d.ts +3 -0
  923. package/js/src/src/static_dependencies/starknet/index.js +9 -0
  924. package/js/src/src/static_dependencies/starknet/types/cairoEnum.d.ts +2 -0
  925. package/js/src/src/static_dependencies/starknet/types/cairoEnum.js +7 -0
  926. package/js/src/src/static_dependencies/starknet/types/calldata.d.ts +19 -0
  927. package/js/src/src/static_dependencies/starknet/types/calldata.js +28 -0
  928. package/js/src/src/static_dependencies/starknet/types/index.d.ts +13 -0
  929. package/js/src/src/static_dependencies/starknet/types/index.js +16 -0
  930. package/js/src/src/static_dependencies/starknet/types/lib/contract/abi.d.ts +71 -0
  931. package/js/src/src/static_dependencies/starknet/types/lib/contract/abi.js +13 -0
  932. package/js/src/src/static_dependencies/starknet/types/lib/contract/index.d.ts +24 -0
  933. package/js/src/src/static_dependencies/starknet/types/lib/contract/index.js +16 -0
  934. package/js/src/src/static_dependencies/starknet/types/lib/contract/legacy.d.ts +33 -0
  935. package/js/src/src/static_dependencies/starknet/types/lib/contract/legacy.js +7 -0
  936. package/js/src/src/static_dependencies/starknet/types/lib/contract/sierra.d.ts +52 -0
  937. package/js/src/src/static_dependencies/starknet/types/lib/contract/sierra.js +7 -0
  938. package/js/src/src/static_dependencies/starknet/types/lib/index.d.ts +248 -0
  939. package/js/src/src/static_dependencies/starknet/types/lib/index.js +52 -0
  940. package/js/src/src/static_dependencies/starknet/types/typedData.d.ts +44 -0
  941. package/js/src/src/static_dependencies/starknet/types/typedData.js +19 -0
  942. package/js/src/src/static_dependencies/starknet/utils/assert.d.ts +7 -0
  943. package/js/src/src/static_dependencies/starknet/utils/assert.js +17 -0
  944. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/felt.d.ts +6 -0
  945. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +43 -0
  946. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.d.ts +72 -0
  947. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +117 -0
  948. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.d.ts +76 -0
  949. package/js/src/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +136 -0
  950. package/js/src/src/static_dependencies/starknet/utils/calldata/byteArray.d.ts +32 -0
  951. package/js/src/src/static_dependencies/starknet/utils/calldata/byteArray.js +59 -0
  952. package/js/src/src/static_dependencies/starknet/utils/calldata/cairo.d.ts +183 -0
  953. package/js/src/src/static_dependencies/starknet/utils/calldata/cairo.js +229 -0
  954. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.d.ts +38 -0
  955. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +57 -0
  956. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.d.ts +35 -0
  957. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +64 -0
  958. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.d.ts +34 -0
  959. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +63 -0
  960. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/index.d.ts +3 -0
  961. package/js/src/src/static_dependencies/starknet/utils/calldata/enum/index.js +9 -0
  962. package/js/src/src/static_dependencies/starknet/utils/calldata/formatter.d.ts +9 -0
  963. package/js/src/src/static_dependencies/starknet/utils/calldata/formatter.js +67 -0
  964. package/js/src/src/static_dependencies/starknet/utils/calldata/index.d.ts +89 -0
  965. package/js/src/src/static_dependencies/starknet/utils/calldata/index.js +280 -0
  966. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +5 -0
  967. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/index.js +30 -0
  968. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/interface.d.ts +20 -0
  969. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/interface.js +8 -0
  970. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.d.ts +24 -0
  971. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +36 -0
  972. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.d.ts +23 -0
  973. package/js/src/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +40 -0
  974. package/js/src/src/static_dependencies/starknet/utils/calldata/propertyOrder.d.ts +2 -0
  975. package/js/src/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +155 -0
  976. package/js/src/src/static_dependencies/starknet/utils/calldata/requestParser.d.ts +11 -0
  977. package/js/src/src/static_dependencies/starknet/utils/calldata/requestParser.js +248 -0
  978. package/js/src/src/static_dependencies/starknet/utils/calldata/responseParser.d.ts +11 -0
  979. package/js/src/src/static_dependencies/starknet/utils/calldata/responseParser.js +214 -0
  980. package/js/src/src/static_dependencies/starknet/utils/calldata/tuple.d.ts +6 -0
  981. package/js/src/src/static_dependencies/starknet/utils/calldata/tuple.js +113 -0
  982. package/js/src/src/static_dependencies/starknet/utils/calldata/validate.d.ts +6 -0
  983. package/js/src/src/static_dependencies/starknet/utils/calldata/validate.js +208 -0
  984. package/js/src/src/static_dependencies/starknet/utils/encode.d.ts +207 -0
  985. package/js/src/src/static_dependencies/starknet/utils/encode.js +282 -0
  986. package/js/src/src/static_dependencies/starknet/utils/hash/classHash.d.ts +57 -0
  987. package/js/src/src/static_dependencies/starknet/utils/hash/classHash.js +223 -0
  988. package/js/src/src/static_dependencies/starknet/utils/hash/index.d.ts +6 -0
  989. package/js/src/src/static_dependencies/starknet/utils/hash/index.js +13 -0
  990. package/js/src/src/static_dependencies/starknet/utils/merkle.d.ts +35 -0
  991. package/js/src/src/static_dependencies/starknet/utils/merkle.js +84 -0
  992. package/js/src/src/static_dependencies/starknet/utils/num.d.ts +182 -0
  993. package/js/src/src/static_dependencies/starknet/utils/num.js +244 -0
  994. package/js/src/src/static_dependencies/starknet/utils/selector.d.ts +48 -0
  995. package/js/src/src/static_dependencies/starknet/utils/selector.js +85 -0
  996. package/js/src/src/static_dependencies/starknet/utils/shortString.d.ts +57 -0
  997. package/js/src/src/static_dependencies/starknet/utils/shortString.js +96 -0
  998. package/js/src/src/static_dependencies/starknet/utils/typedData.d.ts +54 -0
  999. package/js/src/src/static_dependencies/starknet/utils/typedData.js +321 -0
  1000. package/js/src/src/static_dependencies/watchable/src/types.d.ts +28 -0
  1001. package/js/src/src/static_dependencies/watchable/src/types.js +8 -0
  1002. package/js/src/src/static_dependencies/watchable/src/unpromise.d.ts +120 -0
  1003. package/js/src/src/static_dependencies/watchable/src/unpromise.js +297 -0
  1004. package/js/src/src/static_dependencies/zklink/zklink-sdk-web.d.ts +1279 -0
  1005. package/js/src/src/static_dependencies/zklink/zklink-sdk-web.js +4282 -0
  1006. package/js/src/src/tabdeal.d.ts +23 -0
  1007. package/js/src/src/tabdeal.js +387 -0
  1008. package/js/src/src/tehran_exchange.d.ts +21 -0
  1009. package/js/src/src/tehran_exchange.js +333 -0
  1010. package/js/src/src/tetherland.d.ts +21 -0
  1011. package/js/src/src/tetherland.js +367 -0
  1012. package/js/src/src/timex.d.ts +247 -0
  1013. package/js/src/src/timex.js +1792 -0
  1014. package/js/src/src/tokocrypto.d.ts +261 -0
  1015. package/js/src/src/tokocrypto.js +2641 -0
  1016. package/js/src/src/toobit.d.ts +22 -0
  1017. package/js/src/src/toobit.js +445 -0
  1018. package/js/src/src/tradeogre.d.ts +149 -0
  1019. package/js/src/src/tradeogre.js +878 -0
  1020. package/js/src/src/twox.d.ts +21 -0
  1021. package/js/src/src/twox.js +371 -0
  1022. package/js/src/src/ubitex.d.ts +23 -0
  1023. package/js/src/src/ubitex.js +433 -0
  1024. package/js/src/src/upbit.d.ts +377 -0
  1025. package/js/src/src/upbit.js +2340 -0
  1026. package/js/src/src/vertex.d.ts +346 -0
  1027. package/js/src/src/vertex.js +3146 -0
  1028. package/js/src/src/wallex.d.ts +23 -0
  1029. package/js/src/src/wallex.js +467 -0
  1030. package/js/src/src/wavesexchange.d.ts +244 -0
  1031. package/js/src/src/wavesexchange.js +2747 -0
  1032. package/js/src/src/whitebit.d.ts +571 -0
  1033. package/js/src/src/whitebit.js +3437 -0
  1034. package/js/src/src/woo.d.ts +727 -0
  1035. package/js/src/src/woo.js +4183 -0
  1036. package/js/src/src/woofipro.d.ts +497 -0
  1037. package/js/src/src/woofipro.js +2941 -0
  1038. package/js/src/src/xt.d.ts +568 -0
  1039. package/js/src/src/xt.js +5184 -0
  1040. package/js/src/src/yobit.d.ts +197 -0
  1041. package/js/src/src/yobit.js +1453 -0
  1042. package/js/src/src/zaif.d.ts +136 -0
  1043. package/js/src/src/zaif.js +821 -0
  1044. package/js/src/src/zonda.d.ts +214 -0
  1045. package/js/src/src/zonda.js +1984 -0
  1046. package/js/test.js +3 -3
  1047. package/package.json +1 -1
@@ -0,0 +1,1126 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
7
+ // ---------------------------------------------------------------------------
8
+ import hyperliquidRest from '../hyperliquid.js';
9
+ import { ArrayCache, ArrayCacheByTimestamp, ArrayCacheBySymbolById } from '../base/ws/Cache.js';
10
+ // ---------------------------------------------------------------------------
11
+ export default class hyperliquid extends hyperliquidRest {
12
+ describe() {
13
+ return this.deepExtend(super.describe(), {
14
+ 'has': {
15
+ 'ws': true,
16
+ 'cancelOrderWs': true,
17
+ 'cancelOrdersWs': true,
18
+ 'createOrderWs': true,
19
+ 'createOrdersWs': true,
20
+ 'editOrderWs': true,
21
+ 'watchBalance': false,
22
+ 'watchMyTrades': true,
23
+ 'watchOHLCV': true,
24
+ 'watchOrderBook': true,
25
+ 'watchOrders': true,
26
+ 'watchTicker': true,
27
+ 'watchTickers': true,
28
+ 'watchTrades': true,
29
+ 'watchTradesForSymbols': false,
30
+ 'watchPosition': false,
31
+ },
32
+ 'urls': {
33
+ 'api': {
34
+ 'ws': {
35
+ 'public': 'wss://api.hyperliquid.xyz/ws',
36
+ },
37
+ },
38
+ 'test': {
39
+ 'ws': {
40
+ 'public': 'wss://api.hyperliquid-testnet.xyz/ws',
41
+ },
42
+ },
43
+ },
44
+ 'options': {},
45
+ 'streaming': {
46
+ 'ping': this.ping,
47
+ 'keepAlive': 20000,
48
+ },
49
+ 'exceptions': {
50
+ 'ws': {
51
+ 'exact': {},
52
+ },
53
+ },
54
+ });
55
+ }
56
+ /**
57
+ * @method
58
+ * @name hyperliquid#createOrdersWs
59
+ * @description create a list of trade orders using WebSocket post request
60
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order
61
+ * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
62
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
63
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
64
+ */
65
+ async createOrdersWs(orders, params = {}) {
66
+ await this.loadMarkets();
67
+ const url = this.urls['api']['ws']['public'];
68
+ const ordersRequest = this.createOrdersRequest(orders, params);
69
+ const wrapped = this.wrapAsPostAction(ordersRequest);
70
+ const request = this.safeDict(wrapped, 'request', {});
71
+ const requestId = this.safeString(wrapped, 'requestId');
72
+ const response = await this.watch(url, requestId, request, requestId);
73
+ const responseOjb = this.safeDict(response, 'response', {});
74
+ const data = this.safeDict(responseOjb, 'data', {});
75
+ const statuses = this.safeList(data, 'statuses', []);
76
+ return this.parseOrders(statuses, undefined);
77
+ }
78
+ /**
79
+ * @method
80
+ * @name hyperliquid#createOrderWs
81
+ * @description create a trade order using WebSocket post request
82
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order
83
+ * @param {string} symbol unified symbol of the market to create an order in
84
+ * @param {string} type 'market' or 'limit'
85
+ * @param {string} side 'buy' or 'sell'
86
+ * @param {float} amount how much of currency you want to trade in units of base currency
87
+ * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
88
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
89
+ * @param {string} [params.timeInForce] 'Gtc', 'Ioc', 'Alo'
90
+ * @param {bool} [params.postOnly] true or false whether the order is post-only
91
+ * @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
92
+ * @param {float} [params.triggerPrice] The price at which a trigger order is triggered at
93
+ * @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
94
+ * @param {string} [params.slippage] the slippage for market order
95
+ * @param {string} [params.vaultAddress] the vault address for order
96
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
97
+ */
98
+ async createOrderWs(symbol, type, side, amount, price = undefined, params = {}) {
99
+ await this.loadMarkets();
100
+ const [order, globalParams] = this.parseCreateEditOrderArgs(undefined, symbol, type, side, amount, price, params);
101
+ const orders = await this.createOrdersWs([order], globalParams);
102
+ const parsedOrder = orders[0];
103
+ return parsedOrder;
104
+ }
105
+ /**
106
+ * @method
107
+ * @name hyperliquid#editOrderWs
108
+ * @description edit a trade order
109
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#modify-multiple-orders
110
+ * @param {string} id cancel order id
111
+ * @param {string} symbol unified symbol of the market to create an order in
112
+ * @param {string} type 'market' or 'limit'
113
+ * @param {string} side 'buy' or 'sell'
114
+ * @param {float} amount how much of currency you want to trade in units of base currency
115
+ * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
116
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
117
+ * @param {string} [params.timeInForce] 'Gtc', 'Ioc', 'Alo'
118
+ * @param {bool} [params.postOnly] true or false whether the order is post-only
119
+ * @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
120
+ * @param {float} [params.triggerPrice] The price at which a trigger order is triggered at
121
+ * @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
122
+ * @param {string} [params.vaultAddress] the vault address for order
123
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
124
+ */
125
+ async editOrderWs(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
126
+ await this.loadMarkets();
127
+ const market = this.market(symbol);
128
+ const url = this.urls['api']['ws']['public'];
129
+ const [order, globalParams] = this.parseCreateEditOrderArgs(id, symbol, type, side, amount, price, params);
130
+ const postRequest = this.editOrdersRequest([order], globalParams);
131
+ const wrapped = this.wrapAsPostAction(postRequest);
132
+ const request = this.safeDict(wrapped, 'request', {});
133
+ const requestId = this.safeString(wrapped, 'requestId');
134
+ const response = await this.watch(url, requestId, request, requestId);
135
+ // response is the same as in this.editOrder
136
+ const responseObject = this.safeDict(response, 'response', {});
137
+ const dataObject = this.safeDict(responseObject, 'data', {});
138
+ const statuses = this.safeList(dataObject, 'statuses', []);
139
+ const first = this.safeDict(statuses, 0, {});
140
+ const parsedOrder = this.parseOrder(first, market);
141
+ return parsedOrder;
142
+ }
143
+ /**
144
+ * @method
145
+ * @name hyperliquid#cancelOrdersWs
146
+ * @description cancel multiple orders using WebSocket post request
147
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/post-requests
148
+ * @param {string[]} ids list of order ids to cancel
149
+ * @param {string} symbol unified symbol of the market the orders were made in
150
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
151
+ * @param {string[]} [params.clientOrderId] list of client order ids to cancel instead of order ids
152
+ * @param {string} [params.vaultAddress] the vault address for order cancellation
153
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
154
+ */
155
+ async cancelOrdersWs(ids, symbol = undefined, params = {}) {
156
+ this.checkRequiredCredentials();
157
+ await this.loadMarkets();
158
+ const request = this.cancelOrdersRequest(ids, symbol, params);
159
+ const url = this.urls['api']['ws']['public'];
160
+ const wrapped = this.wrapAsPostAction(request);
161
+ const wsRequest = this.safeDict(wrapped, 'request', {});
162
+ const requestId = this.safeString(wrapped, 'requestId');
163
+ const response = await this.watch(url, requestId, wsRequest, requestId);
164
+ const responseObj = this.safeDict(response, 'response', {});
165
+ const data = this.safeDict(responseObj, 'data', {});
166
+ const statuses = this.safeList(data, 'statuses', []);
167
+ const orders = [];
168
+ for (let i = 0; i < statuses.length; i++) {
169
+ const status = statuses[i];
170
+ orders.push(this.safeOrder({
171
+ 'info': status,
172
+ 'status': status,
173
+ }));
174
+ }
175
+ return orders;
176
+ }
177
+ /**
178
+ * @method
179
+ * @name hyperliquid#cancelOrderWs
180
+ * @description cancel a single order using WebSocket post request
181
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/post-requests
182
+ * @param {string} id order id to cancel
183
+ * @param {string} symbol unified symbol of the market the order was made in
184
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
185
+ * @param {string} [params.clientOrderId] client order id to cancel instead of order id
186
+ * @param {string} [params.vaultAddress] the vault address for order cancellation
187
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
188
+ */
189
+ async cancelOrderWs(id, symbol = undefined, params = {}) {
190
+ const orders = await this.cancelOrdersWs([id], symbol, params);
191
+ return this.safeDict(orders, 0);
192
+ }
193
+ /**
194
+ * @method
195
+ * @name hyperliquid#watchOrderBook
196
+ * @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
197
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
198
+ * @param {string} symbol unified symbol of the market to fetch the order book for
199
+ * @param {int} [limit] the maximum amount of order book entries to return
200
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
201
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
202
+ */
203
+ async watchOrderBook(symbol, limit = undefined, params = {}) {
204
+ await this.loadMarkets();
205
+ const market = this.market(symbol);
206
+ symbol = market['symbol'];
207
+ const messageHash = 'orderbook:' + symbol;
208
+ const url = this.urls['api']['ws']['public'];
209
+ const request = {
210
+ 'method': 'subscribe',
211
+ 'subscription': {
212
+ 'type': 'l2Book',
213
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
214
+ },
215
+ };
216
+ const message = this.extend(request, params);
217
+ const orderbook = await this.watch(url, messageHash, message, messageHash);
218
+ return orderbook.limit();
219
+ }
220
+ /**
221
+ * @method
222
+ * @name hyperliquid#unWatchOrderBook
223
+ * @description unWatches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
224
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
225
+ * @param {string} symbol unified symbol of the market to fetch the order book for
226
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
227
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
228
+ */
229
+ async unWatchOrderBook(symbol, params = {}) {
230
+ await this.loadMarkets();
231
+ const market = this.market(symbol);
232
+ symbol = market['symbol'];
233
+ const subMessageHash = 'orderbook:' + symbol;
234
+ const messageHash = 'unsubscribe:' + subMessageHash;
235
+ const url = this.urls['api']['ws']['public'];
236
+ const id = this.nonce().toString();
237
+ const request = {
238
+ 'id': id,
239
+ 'method': 'unsubscribe',
240
+ 'subscription': {
241
+ 'type': 'l2Book',
242
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
243
+ },
244
+ };
245
+ const message = this.extend(request, params);
246
+ return await this.watch(url, messageHash, message, messageHash);
247
+ }
248
+ handleOrderBook(client, message) {
249
+ //
250
+ // {
251
+ // "channel": "l2Book",
252
+ // "data": {
253
+ // "coin": "BTC",
254
+ // "time": 1710131872708,
255
+ // "levels": [
256
+ // [
257
+ // {
258
+ // "px": "68674.0",
259
+ // "sz": "0.97139",
260
+ // "n": 4
261
+ // }
262
+ // ],
263
+ // [
264
+ // {
265
+ // "px": "68675.0",
266
+ // "sz": "0.04396",
267
+ // "n": 1
268
+ // }
269
+ // ]
270
+ // ]
271
+ // }
272
+ // }
273
+ //
274
+ const entry = this.safeDict(message, 'data', {});
275
+ const coin = this.safeString(entry, 'coin');
276
+ const marketId = this.coinToMarketId(coin);
277
+ const market = this.market(marketId);
278
+ const symbol = market['symbol'];
279
+ const rawData = this.safeList(entry, 'levels', []);
280
+ const data = {
281
+ 'bids': this.safeList(rawData, 0, []),
282
+ 'asks': this.safeList(rawData, 1, []),
283
+ };
284
+ const timestamp = this.safeInteger(entry, 'time');
285
+ const snapshot = this.parseOrderBook(data, symbol, timestamp, 'bids', 'asks', 'px', 'sz');
286
+ if (!(symbol in this.orderbooks)) {
287
+ const ob = this.orderBook(snapshot);
288
+ this.orderbooks[symbol] = ob;
289
+ }
290
+ const orderbook = this.orderbooks[symbol];
291
+ orderbook.reset(snapshot);
292
+ const messageHash = 'orderbook:' + symbol;
293
+ client.resolve(orderbook, messageHash);
294
+ }
295
+ /**
296
+ * @method
297
+ * @name hyperliquid#watchTicker
298
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
299
+ * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
300
+ * @param {string} symbol unified symbol of the market to fetch the ticker for
301
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
302
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
303
+ */
304
+ async watchTicker(symbol, params = {}) {
305
+ const market = this.market(symbol);
306
+ symbol = market['symbol'];
307
+ const tickers = await this.watchTickers([symbol], params);
308
+ return tickers[symbol];
309
+ }
310
+ /**
311
+ * @method
312
+ * @name hyperliquid#watchTickers
313
+ * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for all markets of a specific list
314
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
315
+ * @param {string[]} symbols unified symbol of the market to fetch the ticker for
316
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
317
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
318
+ */
319
+ async watchTickers(symbols = undefined, params = {}) {
320
+ await this.loadMarkets();
321
+ symbols = this.marketSymbols(symbols, undefined, true);
322
+ const messageHash = 'tickers';
323
+ const url = this.urls['api']['ws']['public'];
324
+ const request = {
325
+ 'method': 'subscribe',
326
+ 'subscription': {
327
+ 'type': 'webData2',
328
+ 'user': '0x0000000000000000000000000000000000000000',
329
+ },
330
+ };
331
+ const tickers = await this.watch(url, messageHash, this.extend(request, params), messageHash);
332
+ if (this.newUpdates) {
333
+ return this.filterByArrayTickers(tickers, 'symbol', symbols);
334
+ }
335
+ return this.tickers;
336
+ }
337
+ /**
338
+ * @method
339
+ * @name hyperliquid#unWatchTickers
340
+ * @description unWatches a price ticker, a statistical calculation with the information calculated over the past 24 hours for all markets of a specific list
341
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
342
+ * @param {string[]} symbols unified symbol of the market to fetch the ticker for
343
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
344
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
345
+ */
346
+ async unWatchTickers(symbols = undefined, params = {}) {
347
+ await this.loadMarkets();
348
+ symbols = this.marketSymbols(symbols, undefined, true);
349
+ const subMessageHash = 'tickers';
350
+ const messageHash = 'unsubscribe:' + subMessageHash;
351
+ const url = this.urls['api']['ws']['public'];
352
+ const request = {
353
+ 'method': 'unsubscribe',
354
+ 'subscription': {
355
+ 'type': 'webData2',
356
+ 'user': '0x0000000000000000000000000000000000000000',
357
+ },
358
+ };
359
+ return await this.watch(url, messageHash, this.extend(request, params), messageHash);
360
+ }
361
+ /**
362
+ * @method
363
+ * @name hyperliquid#watchMyTrades
364
+ * @description watches information on multiple trades made by the user
365
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
366
+ * @param {string} symbol unified market symbol of the market orders were made in
367
+ * @param {int} [since] the earliest time in ms to fetch orders for
368
+ * @param {int} [limit] the maximum number of order structures to retrieve
369
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
370
+ * @param {string} [params.user] user address, will default to this.walletAddress if not provided
371
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
372
+ */
373
+ async watchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
374
+ let userAddress = undefined;
375
+ [userAddress, params] = this.handlePublicAddress('watchMyTrades', params);
376
+ await this.loadMarkets();
377
+ let messageHash = 'myTrades';
378
+ if (symbol !== undefined) {
379
+ symbol = this.symbol(symbol);
380
+ messageHash += ':' + symbol;
381
+ }
382
+ const url = this.urls['api']['ws']['public'];
383
+ const request = {
384
+ 'method': 'subscribe',
385
+ 'subscription': {
386
+ 'type': 'userFills',
387
+ 'user': userAddress,
388
+ },
389
+ };
390
+ const message = this.extend(request, params);
391
+ const trades = await this.watch(url, messageHash, message, messageHash);
392
+ if (this.newUpdates) {
393
+ limit = trades.getLimit(symbol, limit);
394
+ }
395
+ return this.filterBySymbolSinceLimit(trades, symbol, since, limit, true);
396
+ }
397
+ handleWsTickers(client, message) {
398
+ //
399
+ // {
400
+ // "channel": "webData2",
401
+ // "data": {
402
+ // "meta": {
403
+ // "universe": [
404
+ // {
405
+ // "szDecimals": 5,
406
+ // "name": "BTC",
407
+ // "maxLeverage": 50,
408
+ // "onlyIsolated": false
409
+ // },
410
+ // ...
411
+ // ],
412
+ // },
413
+ // "assetCtxs": [
414
+ // {
415
+ // "funding": "0.00003005",
416
+ // "openInterest": "2311.50778",
417
+ // "prevDayPx": "63475.0",
418
+ // "dayNtlVlm": "468043329.64289033",
419
+ // "premium": "0.00094264",
420
+ // "oraclePx": "64712.0",
421
+ // "markPx": "64774.0",
422
+ // "midPx": "64773.5",
423
+ // "impactPxs": [
424
+ // "64773.0",
425
+ // "64774.0"
426
+ // ]
427
+ // },
428
+ // ...
429
+ // ],
430
+ // "spotAssetCtxs": [
431
+ // {
432
+ // "prevDayPx": "0.20937",
433
+ // "dayNtlVlm": "11188888.61984999",
434
+ // "markPx": "0.19722",
435
+ // "midPx": "0.197145",
436
+ // "circulatingSupply": "598760557.12072003",
437
+ // "coin": "PURR/USDC"
438
+ // },
439
+ // ...
440
+ // ],
441
+ // }
442
+ // }
443
+ //
444
+ // spot
445
+ const rawData = this.safeDict(message, 'data', {});
446
+ const spotAssets = this.safeList(rawData, 'spotAssetCtxs', []);
447
+ const parsedTickers = [];
448
+ for (let i = 0; i < spotAssets.length; i++) {
449
+ const assetObject = spotAssets[i];
450
+ const marketId = this.safeString(assetObject, 'coin');
451
+ const market = this.safeMarket(marketId, undefined, undefined, 'spot');
452
+ const ticker = this.parseWsTicker(assetObject, market);
453
+ parsedTickers.push(ticker);
454
+ }
455
+ // perpetuals
456
+ const meta = this.safeDict(rawData, 'meta', {});
457
+ const universe = this.safeList(meta, 'universe', []);
458
+ const assetCtxs = this.safeList(rawData, 'assetCtxs', []);
459
+ for (let i = 0; i < universe.length; i++) {
460
+ const data = this.extend(this.safeDict(universe, i, {}), this.safeDict(assetCtxs, i, {}));
461
+ const id = data['name'] + '/USDC:USDC';
462
+ const market = this.safeMarket(id, undefined, undefined, 'swap');
463
+ const ticker = this.parseWsTicker(data, market);
464
+ parsedTickers.push(ticker);
465
+ }
466
+ const tickers = this.indexBy(parsedTickers, 'symbol');
467
+ client.resolve(tickers, 'tickers');
468
+ }
469
+ parseWsTicker(rawTicker, market = undefined) {
470
+ return this.parseTicker(rawTicker, market);
471
+ }
472
+ handleMyTrades(client, message) {
473
+ //
474
+ // {
475
+ // "channel": "userFills",
476
+ // "data": {
477
+ // "isSnapshot": true,
478
+ // "user": "0x15f43d1f2dee81424afd891943262aa90f22cc2a",
479
+ // "fills": [
480
+ // {
481
+ // "coin": "BTC",
482
+ // "px": "72528.0",
483
+ // "sz": "0.11693",
484
+ // "side": "A",
485
+ // "time": 1710208712815,
486
+ // "startPosition": "0.11693",
487
+ // "dir": "Close Long",
488
+ // "closedPnl": "-0.81851",
489
+ // "hash": "0xc5adaf35f8402750c218040b0a7bc301130051521273b6f398b3caad3e1f3f5f",
490
+ // "oid": 7484888874,
491
+ // "crossed": true,
492
+ // "fee": "2.968244",
493
+ // "liquidationMarkPx": null,
494
+ // "tid": 567547935839686,
495
+ // "cloid": null
496
+ // }
497
+ // ]
498
+ // }
499
+ // }
500
+ //
501
+ const entry = this.safeDict(message, 'data', {});
502
+ if (this.myTrades === undefined) {
503
+ const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
504
+ this.myTrades = new ArrayCacheBySymbolById(limit);
505
+ }
506
+ const trades = this.myTrades;
507
+ const symbols = {};
508
+ const data = this.safeList(entry, 'fills', []);
509
+ const dataLength = data.length;
510
+ if (dataLength === 0) {
511
+ return;
512
+ }
513
+ for (let i = 0; i < data.length; i++) {
514
+ const rawTrade = data[i];
515
+ const parsed = this.parseWsTrade(rawTrade);
516
+ const symbol = parsed['symbol'];
517
+ symbols[symbol] = true;
518
+ trades.append(parsed);
519
+ }
520
+ const keys = Object.keys(symbols);
521
+ for (let i = 0; i < keys.length; i++) {
522
+ const currentMessageHash = 'myTrades:' + keys[i];
523
+ client.resolve(trades, currentMessageHash);
524
+ }
525
+ // non-symbol specific
526
+ const messageHash = 'myTrades';
527
+ client.resolve(trades, messageHash);
528
+ }
529
+ async watchTrades(symbol, since = undefined, limit = undefined, params = {}) {
530
+ // s
531
+ // @method
532
+ // @name hyperliquid#watchTrades
533
+ // @description watches information on multiple trades made in a market
534
+ // @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
535
+ // @param {string} symbol unified market symbol of the market trades were made in
536
+ // @param {int} [since] the earliest time in ms to fetch trades for
537
+ // @param {int} [limit] the maximum number of trade structures to retrieve
538
+ // @param {object} [params] extra parameters specific to the exchange API endpoint
539
+ // @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
540
+ //
541
+ await this.loadMarkets();
542
+ const market = this.market(symbol);
543
+ symbol = market['symbol'];
544
+ const messageHash = 'trade:' + symbol;
545
+ const url = this.urls['api']['ws']['public'];
546
+ const request = {
547
+ 'method': 'subscribe',
548
+ 'subscription': {
549
+ 'type': 'trades',
550
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
551
+ },
552
+ };
553
+ const message = this.extend(request, params);
554
+ const trades = await this.watch(url, messageHash, message, messageHash);
555
+ if (this.newUpdates) {
556
+ limit = trades.getLimit(symbol, limit);
557
+ }
558
+ return this.filterBySinceLimit(trades, since, limit, 'timestamp', true);
559
+ }
560
+ /**
561
+ * @method
562
+ * @name hyperliquid#unWatchTrades
563
+ * @description unWatches information on multiple trades made in a market
564
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
565
+ * @param {string} symbol unified market symbol of the market trades were made in
566
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
567
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
568
+ */
569
+ async unWatchTrades(symbol, params = {}) {
570
+ await this.loadMarkets();
571
+ const market = this.market(symbol);
572
+ symbol = market['symbol'];
573
+ const subMessageHash = 'trade:' + symbol;
574
+ const messageHash = 'unsubscribe:' + subMessageHash;
575
+ const url = this.urls['api']['ws']['public'];
576
+ const request = {
577
+ 'method': 'unsubscribe',
578
+ 'subscription': {
579
+ 'type': 'trades',
580
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
581
+ },
582
+ };
583
+ const message = this.extend(request, params);
584
+ return await this.watch(url, messageHash, message, messageHash);
585
+ }
586
+ handleTrades(client, message) {
587
+ //
588
+ // {
589
+ // "channel": "trades",
590
+ // "data": [
591
+ // {
592
+ // "coin": "BTC",
593
+ // "side": "A",
594
+ // "px": "68517.0",
595
+ // "sz": "0.005",
596
+ // "time": 1710125266669,
597
+ // "hash": "0xc872699f116e012186620407fc08a802015e0097c5cce74710697f7272e6e959",
598
+ // "tid": 981894269203506
599
+ // }
600
+ // ]
601
+ // }
602
+ //
603
+ const entry = this.safeList(message, 'data', []);
604
+ const first = this.safeDict(entry, 0, {});
605
+ const coin = this.safeString(first, 'coin');
606
+ const marketId = this.coinToMarketId(coin);
607
+ const market = this.market(marketId);
608
+ const symbol = market['symbol'];
609
+ if (!(symbol in this.trades)) {
610
+ const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
611
+ const stored = new ArrayCache(limit);
612
+ this.trades[symbol] = stored;
613
+ }
614
+ const trades = this.trades[symbol];
615
+ for (let i = 0; i < entry.length; i++) {
616
+ const data = this.safeDict(entry, i);
617
+ const trade = this.parseWsTrade(data);
618
+ trades.append(trade);
619
+ }
620
+ const messageHash = 'trade:' + symbol;
621
+ client.resolve(trades, messageHash);
622
+ }
623
+ parseWsTrade(trade, market = undefined) {
624
+ //
625
+ // fetchMyTrades
626
+ //
627
+ // {
628
+ // "coin": "BTC",
629
+ // "px": "72528.0",
630
+ // "sz": "0.11693",
631
+ // "side": "A",
632
+ // "time": 1710208712815,
633
+ // "startPosition": "0.11693",
634
+ // "dir": "Close Long",
635
+ // "closedPnl": "-0.81851",
636
+ // "hash": "0xc5adaf35f8402750c218040b0a7bc301130051521273b6f398b3caad3e1f3f5f",
637
+ // "oid": 7484888874,
638
+ // "crossed": true,
639
+ // "fee": "2.968244",
640
+ // "liquidationMarkPx": null,
641
+ // "tid": 567547935839686,
642
+ // "cloid": null
643
+ // }
644
+ //
645
+ // fetchTrades
646
+ //
647
+ // {
648
+ // "coin": "BTC",
649
+ // "side": "A",
650
+ // "px": "68517.0",
651
+ // "sz": "0.005",
652
+ // "time": 1710125266669,
653
+ // "hash": "0xc872699f116e012186620407fc08a802015e0097c5cce74710697f7272e6e959",
654
+ // "tid": 981894269203506
655
+ // }
656
+ //
657
+ const timestamp = this.safeInteger(trade, 'time');
658
+ const price = this.safeString(trade, 'px');
659
+ const amount = this.safeString(trade, 'sz');
660
+ const coin = this.safeString(trade, 'coin');
661
+ const marketId = this.coinToMarketId(coin);
662
+ market = this.safeMarket(marketId, undefined);
663
+ const symbol = market['symbol'];
664
+ const id = this.safeString(trade, 'tid');
665
+ let side = this.safeString(trade, 'side');
666
+ if (side !== undefined) {
667
+ side = (side === 'A') ? 'sell' : 'buy';
668
+ }
669
+ const fee = this.safeString(trade, 'fee');
670
+ return this.safeTrade({
671
+ 'info': trade,
672
+ 'timestamp': timestamp,
673
+ 'datetime': this.iso8601(timestamp),
674
+ 'symbol': symbol,
675
+ 'id': id,
676
+ 'order': this.safeString(trade, 'oid'),
677
+ 'type': undefined,
678
+ 'side': side,
679
+ 'takerOrMaker': undefined,
680
+ 'price': price,
681
+ 'amount': amount,
682
+ 'cost': undefined,
683
+ 'fee': { 'cost': fee, 'currency': 'USDC' },
684
+ }, market);
685
+ }
686
+ /**
687
+ * @method
688
+ * @name hyperliquid#watchOHLCV
689
+ * @description watches historical candlestick data containing the open, high, low, close price, and the volume of a market
690
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
691
+ * @param {string} symbol unified symbol of the market to fetch OHLCV data for
692
+ * @param {string} timeframe the length of time each candle represents
693
+ * @param {int} [since] timestamp in ms of the earliest candle to fetch
694
+ * @param {int} [limit] the maximum amount of candles to fetch
695
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
696
+ * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
697
+ */
698
+ async watchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
699
+ await this.loadMarkets();
700
+ const market = this.market(symbol);
701
+ symbol = market['symbol'];
702
+ const url = this.urls['api']['ws']['public'];
703
+ const request = {
704
+ 'method': 'subscribe',
705
+ 'subscription': {
706
+ 'type': 'candle',
707
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
708
+ 'interval': timeframe,
709
+ },
710
+ };
711
+ const messageHash = 'candles:' + timeframe + ':' + symbol;
712
+ const message = this.extend(request, params);
713
+ const ohlcv = await this.watch(url, messageHash, message, messageHash);
714
+ if (this.newUpdates) {
715
+ limit = ohlcv.getLimit(symbol, limit);
716
+ }
717
+ return this.filterBySinceLimit(ohlcv, since, limit, 0, true);
718
+ }
719
+ /**
720
+ * @method
721
+ * @name hyperliquid#unWatchOHLCV
722
+ * @description watches historical candlestick data containing the open, high, low, close price, and the volume of a market
723
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
724
+ * @param {string} symbol unified symbol of the market to fetch OHLCV data for
725
+ * @param {string} timeframe the length of time each candle represents
726
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
727
+ * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
728
+ */
729
+ async unWatchOHLCV(symbol, timeframe = '1m', params = {}) {
730
+ await this.loadMarkets();
731
+ const market = this.market(symbol);
732
+ symbol = market['symbol'];
733
+ const url = this.urls['api']['ws']['public'];
734
+ const request = {
735
+ 'method': 'unsubscribe',
736
+ 'subscription': {
737
+ 'type': 'candle',
738
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
739
+ 'interval': timeframe,
740
+ },
741
+ };
742
+ const subMessageHash = 'candles:' + timeframe + ':' + symbol;
743
+ const messagehash = 'unsubscribe:' + subMessageHash;
744
+ const message = this.extend(request, params);
745
+ return await this.watch(url, messagehash, message, messagehash);
746
+ }
747
+ handleOHLCV(client, message) {
748
+ //
749
+ // {
750
+ // channel: 'candle',
751
+ // data: {
752
+ // t: 1710146280000,
753
+ // T: 1710146339999,
754
+ // s: 'BTC',
755
+ // i: '1m',
756
+ // o: '71400.0',
757
+ // c: '71411.0',
758
+ // h: '71422.0',
759
+ // l: '71389.0',
760
+ // v: '1.20407',
761
+ // n: 20
762
+ // }
763
+ // }
764
+ //
765
+ const data = this.safeDict(message, 'data', {});
766
+ const base = this.safeString(data, 's');
767
+ const marketId = this.coinToMarketId(base);
768
+ const symbol = this.safeSymbol(marketId);
769
+ const timeframe = this.safeString(data, 'i');
770
+ if (!(symbol in this.ohlcvs)) {
771
+ this.ohlcvs[symbol] = {};
772
+ }
773
+ if (!(timeframe in this.ohlcvs[symbol])) {
774
+ const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
775
+ const stored = new ArrayCacheByTimestamp(limit);
776
+ this.ohlcvs[symbol][timeframe] = stored;
777
+ }
778
+ const ohlcv = this.ohlcvs[symbol][timeframe];
779
+ const parsed = this.parseOHLCV(data);
780
+ ohlcv.append(parsed);
781
+ const messageHash = 'candles:' + timeframe + ':' + symbol;
782
+ client.resolve(ohlcv, messageHash);
783
+ }
784
+ handleWsPost(client, message) {
785
+ // {
786
+ // channel: "post",
787
+ // data: {
788
+ // id: <number>,
789
+ // response: {
790
+ // type: "info" | "action" | "error",
791
+ // payload: { ... }
792
+ // }
793
+ // }
794
+ const data = this.safeDict(message, 'data');
795
+ const id = this.safeString(data, 'id');
796
+ const response = this.safeDict(data, 'response');
797
+ const payload = this.safeDict(response, 'payload');
798
+ client.resolve(payload, id);
799
+ }
800
+ /**
801
+ * @method
802
+ * @name hyperliquid#watchOrders
803
+ * @description watches information on multiple orders made by the user
804
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions
805
+ * @param {string} symbol unified market symbol of the market orders were made in
806
+ * @param {int} [since] the earliest time in ms to fetch orders for
807
+ * @param {int} [limit] the maximum number of order structures to retrieve
808
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
809
+ * @param {string} [params.user] user address, will default to this.walletAddress if not provided
810
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
811
+ */
812
+ async watchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
813
+ await this.loadMarkets();
814
+ let userAddress = undefined;
815
+ [userAddress, params] = this.handlePublicAddress('watchOrders', params);
816
+ let market = undefined;
817
+ let messageHash = 'order';
818
+ if (symbol !== undefined) {
819
+ market = this.market(symbol);
820
+ symbol = market['symbol'];
821
+ messageHash = messageHash + ':' + symbol;
822
+ }
823
+ const url = this.urls['api']['ws']['public'];
824
+ const request = {
825
+ 'method': 'subscribe',
826
+ 'subscription': {
827
+ 'type': 'orderUpdates',
828
+ 'user': userAddress,
829
+ },
830
+ };
831
+ const message = this.extend(request, params);
832
+ const orders = await this.watch(url, messageHash, message, messageHash);
833
+ if (this.newUpdates) {
834
+ limit = orders.getLimit(symbol, limit);
835
+ }
836
+ return this.filterBySymbolSinceLimit(orders, symbol, since, limit, true);
837
+ }
838
+ handleOrder(client, message) {
839
+ //
840
+ // {
841
+ // channel: 'orderUpdates',
842
+ // data: [
843
+ // {
844
+ // order: {
845
+ // coin: 'BTC',
846
+ // side: 'B',
847
+ // limitPx: '30000.0',
848
+ // sz: '0.001',
849
+ // oid: 7456484275,
850
+ // timestamp: 1710163596492,
851
+ // origSz: '0.001'
852
+ // },
853
+ // status: 'open',
854
+ // statusTimestamp: 1710163596492
855
+ // }
856
+ // ]
857
+ // }
858
+ //
859
+ const data = this.safeList(message, 'data', []);
860
+ if (this.orders === undefined) {
861
+ const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
862
+ this.orders = new ArrayCacheBySymbolById(limit);
863
+ }
864
+ const dataLength = data.length;
865
+ if (dataLength === 0) {
866
+ return;
867
+ }
868
+ const stored = this.orders;
869
+ const messageHash = 'order';
870
+ const marketSymbols = {};
871
+ for (let i = 0; i < data.length; i++) {
872
+ const rawOrder = data[i];
873
+ const order = this.parseOrder(rawOrder);
874
+ stored.append(order);
875
+ const symbol = this.safeString(order, 'symbol');
876
+ marketSymbols[symbol] = true;
877
+ }
878
+ const keys = Object.keys(marketSymbols);
879
+ for (let i = 0; i < keys.length; i++) {
880
+ const symbol = keys[i];
881
+ const innerMessageHash = messageHash + ':' + symbol;
882
+ client.resolve(stored, innerMessageHash);
883
+ }
884
+ client.resolve(stored, messageHash);
885
+ }
886
+ handleErrorMessage(client, message) {
887
+ //
888
+ // {
889
+ // "channel": "post",
890
+ // "data": {
891
+ // "id": 1,
892
+ // "response": {
893
+ // "type": "action",
894
+ // "payload": {
895
+ // "status": "ok",
896
+ // "response": {
897
+ // "type": "order",
898
+ // "data": {
899
+ // "statuses": [
900
+ // {
901
+ // "error": "Order price cannot be more than 80% away from the reference price"
902
+ // }
903
+ // ]
904
+ // }
905
+ // }
906
+ // }
907
+ // }
908
+ // }
909
+ // }
910
+ //
911
+ // {
912
+ // "channel": "error",
913
+ // "data": "Error parsing JSON into valid websocket request: { \"type\": \"allMids\" }"
914
+ // }
915
+ //
916
+ const channel = this.safeString(message, 'channel', '');
917
+ if (channel === 'error') {
918
+ const ret_msg = this.safeString(message, 'data', '');
919
+ const errorMsg = this.id + ' ' + ret_msg;
920
+ client.reject(errorMsg);
921
+ return true;
922
+ }
923
+ const data = this.safeDict(message, 'data', {});
924
+ const id = this.safeString(message, 'id');
925
+ const response = this.safeDict(data, 'response', {});
926
+ const payload = this.safeDict(response, 'payload', {});
927
+ const status = this.safeString(payload, 'status');
928
+ if (status !== undefined && status !== 'ok') {
929
+ const errorMsg = this.id + ' ' + this.json(payload);
930
+ client.reject(errorMsg, id);
931
+ return true;
932
+ }
933
+ const type = this.safeString(payload, 'type');
934
+ if (type === 'error') {
935
+ const error = this.id + ' ' + this.json(payload);
936
+ client.reject(error, id);
937
+ return true;
938
+ }
939
+ try {
940
+ this.handleErrors(0, '', '', '', {}, this.json(payload), payload, {}, {});
941
+ }
942
+ catch (e) {
943
+ client.reject(e, id);
944
+ return true;
945
+ }
946
+ return false;
947
+ }
948
+ handleOrderBookUnsubscription(client, subscription) {
949
+ //
950
+ // "subscription":{
951
+ // "type":"l2Book",
952
+ // "coin":"BTC",
953
+ // "nSigFigs":5,
954
+ // "mantissa":null
955
+ // }
956
+ //
957
+ const coin = this.safeString(subscription, 'coin');
958
+ const marketId = this.coinToMarketId(coin);
959
+ const symbol = this.safeSymbol(marketId);
960
+ const subMessageHash = 'orderbook:' + symbol;
961
+ const messageHash = 'unsubscribe:' + subMessageHash;
962
+ this.cleanUnsubscription(client, subMessageHash, messageHash);
963
+ if (symbol in this.orderbooks) {
964
+ delete this.orderbooks[symbol];
965
+ }
966
+ }
967
+ handleTradesUnsubscription(client, subscription) {
968
+ //
969
+ const coin = this.safeString(subscription, 'coin');
970
+ const marketId = this.coinToMarketId(coin);
971
+ const symbol = this.safeSymbol(marketId);
972
+ const subMessageHash = 'trade:' + symbol;
973
+ const messageHash = 'unsubscribe:' + subMessageHash;
974
+ this.cleanUnsubscription(client, subMessageHash, messageHash);
975
+ if (symbol in this.trades) {
976
+ delete this.trades[symbol];
977
+ }
978
+ }
979
+ handleTickersUnsubscription(client, subscription) {
980
+ //
981
+ const subMessageHash = 'tickers';
982
+ const messageHash = 'unsubscribe:' + subMessageHash;
983
+ this.cleanUnsubscription(client, subMessageHash, messageHash);
984
+ const symbols = Object.keys(this.tickers);
985
+ for (let i = 0; i < symbols.length; i++) {
986
+ delete this.tickers[symbols[i]];
987
+ }
988
+ }
989
+ handleOHLCVUnsubscription(client, subscription) {
990
+ const coin = this.safeString(subscription, 'coin');
991
+ const marketId = this.coinToMarketId(coin);
992
+ const symbol = this.safeSymbol(marketId);
993
+ const interval = this.safeString(subscription, 'interval');
994
+ const timeframe = this.findTimeframe(interval);
995
+ const subMessageHash = 'candles:' + timeframe + ':' + symbol;
996
+ const messageHash = 'unsubscribe:' + subMessageHash;
997
+ this.cleanUnsubscription(client, subMessageHash, messageHash);
998
+ if (symbol in this.ohlcvs) {
999
+ if (timeframe in this.ohlcvs[symbol]) {
1000
+ delete this.ohlcvs[symbol][timeframe];
1001
+ }
1002
+ }
1003
+ }
1004
+ handleSubscriptionResponse(client, message) {
1005
+ // {
1006
+ // "channel":"subscriptionResponse",
1007
+ // "data":{
1008
+ // "method":"unsubscribe",
1009
+ // "subscription":{
1010
+ // "type":"l2Book",
1011
+ // "coin":"BTC",
1012
+ // "nSigFigs":5,
1013
+ // "mantissa":null
1014
+ // }
1015
+ // }
1016
+ // }
1017
+ //
1018
+ // {
1019
+ // "channel":"subscriptionResponse",
1020
+ // "data":{
1021
+ // "method":"unsubscribe",
1022
+ // "subscription":{
1023
+ // "type":"trades",
1024
+ // "coin":"PURR/USDC"
1025
+ // }
1026
+ // }
1027
+ // }
1028
+ //
1029
+ const data = this.safeDict(message, 'data', {});
1030
+ const method = this.safeString(data, 'method');
1031
+ if (method === 'unsubscribe') {
1032
+ const subscription = this.safeDict(data, 'subscription', {});
1033
+ const type = this.safeString(subscription, 'type');
1034
+ if (type === 'l2Book') {
1035
+ this.handleOrderBookUnsubscription(client, subscription);
1036
+ }
1037
+ else if (type === 'trades') {
1038
+ this.handleTradesUnsubscription(client, subscription);
1039
+ }
1040
+ else if (type === 'webData2') {
1041
+ this.handleTickersUnsubscription(client, subscription);
1042
+ }
1043
+ else if (type === 'candle') {
1044
+ this.handleOHLCVUnsubscription(client, subscription);
1045
+ }
1046
+ }
1047
+ }
1048
+ handleMessage(client, message) {
1049
+ //
1050
+ // {
1051
+ // "channel":"subscriptionResponse",
1052
+ // "data":{
1053
+ // "method":"unsubscribe",
1054
+ // "subscription":{
1055
+ // "type":"l2Book",
1056
+ // "coin":"BTC",
1057
+ // "nSigFigs":5,
1058
+ // "mantissa":null
1059
+ // }
1060
+ // }
1061
+ // }
1062
+ //
1063
+ if (this.handleErrorMessage(client, message)) {
1064
+ return;
1065
+ }
1066
+ const topic = this.safeString(message, 'channel', '');
1067
+ const methods = {
1068
+ 'pong': this.handlePong,
1069
+ 'trades': this.handleTrades,
1070
+ 'l2Book': this.handleOrderBook,
1071
+ 'candle': this.handleOHLCV,
1072
+ 'orderUpdates': this.handleOrder,
1073
+ 'userFills': this.handleMyTrades,
1074
+ 'webData2': this.handleWsTickers,
1075
+ 'post': this.handleWsPost,
1076
+ 'subscriptionResponse': this.handleSubscriptionResponse,
1077
+ };
1078
+ const exacMethod = this.safeValue(methods, topic);
1079
+ if (exacMethod !== undefined) {
1080
+ exacMethod.call(this, client, message);
1081
+ return;
1082
+ }
1083
+ const keys = Object.keys(methods);
1084
+ for (let i = 0; i < keys.length; i++) {
1085
+ const key = keys[i];
1086
+ if (topic.indexOf(keys[i]) >= 0) {
1087
+ const method = methods[key];
1088
+ method.call(this, client, message);
1089
+ return;
1090
+ }
1091
+ }
1092
+ }
1093
+ ping(client) {
1094
+ return {
1095
+ 'method': 'ping',
1096
+ };
1097
+ }
1098
+ handlePong(client, message) {
1099
+ //
1100
+ // {
1101
+ // "channel": "pong"
1102
+ // }
1103
+ //
1104
+ client.lastPong = this.safeInteger(message, 'pong');
1105
+ return message;
1106
+ }
1107
+ requestId() {
1108
+ const requestId = this.sum(this.safeInteger(this.options, 'requestId', 0), 1);
1109
+ this.options['requestId'] = requestId;
1110
+ return requestId;
1111
+ }
1112
+ wrapAsPostAction(request) {
1113
+ const requestId = this.requestId();
1114
+ return {
1115
+ 'requestId': requestId,
1116
+ 'request': {
1117
+ 'method': 'post',
1118
+ 'id': requestId,
1119
+ 'request': {
1120
+ 'type': 'action',
1121
+ 'payload': request,
1122
+ },
1123
+ },
1124
+ };
1125
+ }
1126
+ }