okx-api 2.0.7 → 3.0.0-beta.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 (382) hide show
  1. package/README.md +336 -11
  2. package/dist/cjs/constants/funding.js.map +1 -0
  3. package/dist/cjs/index.d.ts +43 -0
  4. package/dist/cjs/index.js +64 -0
  5. package/dist/cjs/index.js.map +1 -0
  6. package/dist/cjs/package.json +3 -0
  7. package/{lib → dist/cjs}/rest-client.d.ts +28 -15
  8. package/{lib → dist/cjs}/rest-client.js +41 -68
  9. package/dist/cjs/rest-client.js.map +1 -0
  10. package/dist/cjs/types/rest/client.d.ts +36 -0
  11. package/{lib → dist/cjs}/types/rest/client.js.map +1 -1
  12. package/{lib → dist/cjs}/types/rest/request/account.d.ts +1 -1
  13. package/dist/cjs/types/rest/request/account.js.map +1 -0
  14. package/{lib → dist/cjs}/types/rest/request/block-trading.d.ts +1 -1
  15. package/dist/cjs/types/rest/request/block-trading.js.map +1 -0
  16. package/dist/cjs/types/rest/request/convert.js.map +1 -0
  17. package/dist/cjs/types/rest/request/copy-trading.js.map +1 -0
  18. package/dist/cjs/types/rest/request/funding.js.map +1 -0
  19. package/dist/cjs/types/rest/request/grid-trading.js.map +1 -0
  20. package/dist/cjs/types/rest/request/public.js.map +1 -0
  21. package/dist/cjs/types/rest/request/recurring-buy.js.map +1 -0
  22. package/{lib → dist/cjs}/types/rest/request/shared.d.ts +1 -1
  23. package/dist/cjs/types/rest/request/shared.js.map +1 -0
  24. package/dist/cjs/types/rest/request/signal-bot.js.map +1 -0
  25. package/dist/cjs/types/rest/request/simple-earn.js.map +1 -0
  26. package/dist/cjs/types/rest/request/spread-trading.js.map +1 -0
  27. package/dist/cjs/types/rest/request/subaccount.js.map +1 -0
  28. package/{lib → dist/cjs}/types/rest/request/trade.d.ts +1 -1
  29. package/dist/cjs/types/rest/request/trade.js.map +1 -0
  30. package/{lib → dist/cjs}/types/rest/response/private-account.d.ts +1 -1
  31. package/dist/cjs/types/rest/response/private-account.js.map +1 -0
  32. package/{lib → dist/cjs}/types/rest/response/private-block-trading.d.ts +1 -1
  33. package/dist/cjs/types/rest/response/private-block-trading.js.map +1 -0
  34. package/dist/cjs/types/rest/response/private-copy-trading.js.map +1 -0
  35. package/dist/cjs/types/rest/response/private-flexible-loan.js.map +1 -0
  36. package/{lib → dist/cjs}/types/rest/response/private-funding.d.ts +1 -1
  37. package/dist/cjs/types/rest/response/private-funding.js.map +1 -0
  38. package/dist/cjs/types/rest/response/private-recurring-buy.js.map +1 -0
  39. package/dist/cjs/types/rest/response/private-signal-bot.js.map +1 -0
  40. package/dist/cjs/types/rest/response/private-spread-trading.js.map +1 -0
  41. package/dist/cjs/types/rest/response/private-subaccount.js.map +1 -0
  42. package/{lib → dist/cjs}/types/rest/response/private-trade.d.ts +1 -1
  43. package/dist/cjs/types/rest/response/private-trade.js.map +1 -0
  44. package/{lib → dist/cjs}/types/rest/response/public-data.d.ts +1 -1
  45. package/dist/cjs/types/rest/response/public-data.js.map +1 -0
  46. package/{lib → dist/cjs}/types/rest/shared.d.ts +2 -2
  47. package/dist/cjs/types/rest/shared.js.map +1 -0
  48. package/dist/cjs/types/shared.d.ts +13 -0
  49. package/{lib → dist/cjs}/types/shared.js.map +1 -1
  50. package/dist/cjs/types/websockets/ws-api-request.d.ts +61 -0
  51. package/dist/cjs/types/websockets/ws-api-request.js +3 -0
  52. package/dist/cjs/types/websockets/ws-api-request.js.map +1 -0
  53. package/dist/cjs/types/websockets/ws-api-response.d.ts +28 -0
  54. package/dist/cjs/types/websockets/ws-api-response.js +3 -0
  55. package/dist/cjs/types/websockets/ws-api-response.js.map +1 -0
  56. package/dist/cjs/types/websockets/ws-api.d.ts +139 -0
  57. package/dist/cjs/types/websockets/ws-api.js +38 -0
  58. package/dist/cjs/types/websockets/ws-api.js.map +1 -0
  59. package/{lib/types/websockets/event.d.ts → dist/cjs/types/websockets/ws-events.d.ts} +7 -1
  60. package/dist/cjs/types/websockets/ws-events.js +11 -0
  61. package/dist/cjs/types/websockets/ws-events.js.map +1 -0
  62. package/dist/cjs/types/websockets/ws-general.d.ts +48 -0
  63. package/dist/cjs/types/websockets/ws-general.js +3 -0
  64. package/dist/cjs/types/websockets/ws-general.js.map +1 -0
  65. package/{lib/types/websockets/request.d.ts → dist/cjs/types/websockets/ws-request.d.ts} +0 -22
  66. package/dist/cjs/types/websockets/ws-request.js +3 -0
  67. package/dist/cjs/types/websockets/ws-request.js.map +1 -0
  68. package/{lib → dist/cjs}/util/BaseRestClient.d.ts +1 -1
  69. package/dist/cjs/util/BaseRestClient.js +237 -0
  70. package/dist/cjs/util/BaseRestClient.js.map +1 -0
  71. package/dist/cjs/util/BaseWSClient.d.ts +198 -0
  72. package/dist/cjs/util/BaseWSClient.js +770 -0
  73. package/dist/cjs/util/BaseWSClient.js.map +1 -0
  74. package/dist/cjs/util/WsStore.d.ts +75 -0
  75. package/dist/cjs/util/WsStore.js +303 -0
  76. package/dist/cjs/util/WsStore.js.map +1 -0
  77. package/dist/cjs/util/WsStore.types.d.ts +51 -0
  78. package/dist/cjs/util/WsStore.types.js +14 -0
  79. package/dist/cjs/util/WsStore.types.js.map +1 -0
  80. package/dist/cjs/util/logger.d.ts +8 -0
  81. package/{lib → dist/cjs}/util/logger.js +3 -11
  82. package/dist/cjs/util/logger.js.map +1 -0
  83. package/{lib → dist/cjs}/util/requestUtils.d.ts +2 -1
  84. package/{lib → dist/cjs}/util/requestUtils.js +9 -1
  85. package/dist/cjs/util/requestUtils.js.map +1 -0
  86. package/{lib → dist/cjs}/util/typeGuards.d.ts +4 -2
  87. package/{lib → dist/cjs}/util/typeGuards.js +34 -0
  88. package/dist/cjs/util/typeGuards.js.map +1 -0
  89. package/dist/cjs/util/webCryptoAPI.d.ts +15 -0
  90. package/dist/cjs/util/webCryptoAPI.js +82 -0
  91. package/dist/cjs/util/webCryptoAPI.js.map +1 -0
  92. package/dist/cjs/util/websocket-util.d.ts +142 -0
  93. package/dist/cjs/util/websocket-util.js +533 -0
  94. package/dist/cjs/util/websocket-util.js.map +1 -0
  95. package/dist/cjs/websocket-api-client.d.ts +135 -0
  96. package/dist/cjs/websocket-api-client.js +171 -0
  97. package/dist/cjs/websocket-api-client.js.map +1 -0
  98. package/{lib/websocket-client.d.ts → dist/cjs/websocket-client-legacy.d.ts} +16 -38
  99. package/dist/cjs/websocket-client-legacy.js +524 -0
  100. package/dist/cjs/websocket-client-legacy.js.map +1 -0
  101. package/dist/cjs/websocket-client.d.ts +81 -0
  102. package/dist/cjs/websocket-client.js +548 -0
  103. package/dist/cjs/websocket-client.js.map +1 -0
  104. package/dist/mjs/constants/funding.d.ts +139 -0
  105. package/dist/mjs/constants/funding.js +140 -0
  106. package/dist/mjs/constants/funding.js.map +1 -0
  107. package/dist/mjs/index.d.ts +43 -0
  108. package/dist/mjs/index.js +48 -0
  109. package/dist/mjs/index.js.map +1 -0
  110. package/dist/mjs/package.json +3 -0
  111. package/dist/mjs/rest-client.d.ts +1173 -0
  112. package/dist/mjs/rest-client.js +1271 -0
  113. package/dist/mjs/rest-client.js.map +1 -0
  114. package/dist/mjs/types/rest/client.d.ts +36 -0
  115. package/dist/mjs/types/rest/client.js +2 -0
  116. package/{lib/types/websockets → dist/mjs/types/rest}/client.js.map +1 -1
  117. package/dist/mjs/types/rest/request/account.d.ts +144 -0
  118. package/dist/mjs/types/rest/request/account.js +2 -0
  119. package/dist/mjs/types/rest/request/account.js.map +1 -0
  120. package/dist/mjs/types/rest/request/block-trading.d.ts +76 -0
  121. package/dist/mjs/types/rest/request/block-trading.js +2 -0
  122. package/dist/mjs/types/rest/request/block-trading.js.map +1 -0
  123. package/dist/mjs/types/rest/request/convert.d.ts +19 -0
  124. package/dist/mjs/types/rest/request/convert.js +2 -0
  125. package/dist/mjs/types/rest/request/convert.js.map +1 -0
  126. package/dist/mjs/types/rest/request/copy-trading.d.ts +117 -0
  127. package/dist/mjs/types/rest/request/copy-trading.js +2 -0
  128. package/dist/mjs/types/rest/request/copy-trading.js.map +1 -0
  129. package/dist/mjs/types/rest/request/funding.d.ts +43 -0
  130. package/dist/mjs/types/rest/request/funding.js +2 -0
  131. package/dist/mjs/types/rest/request/funding.js.map +1 -0
  132. package/dist/mjs/types/rest/request/grid-trading.d.ts +66 -0
  133. package/dist/mjs/types/rest/request/grid-trading.js +2 -0
  134. package/dist/mjs/types/rest/request/grid-trading.js.map +1 -0
  135. package/dist/mjs/types/rest/request/public.d.ts +55 -0
  136. package/dist/mjs/types/rest/request/public.js +2 -0
  137. package/dist/mjs/types/rest/request/public.js.map +1 -0
  138. package/dist/mjs/types/rest/request/recurring-buy.d.ts +28 -0
  139. package/dist/mjs/types/rest/request/recurring-buy.js +2 -0
  140. package/dist/mjs/types/rest/request/recurring-buy.js.map +1 -0
  141. package/dist/mjs/types/rest/request/shared.d.ts +7 -0
  142. package/dist/mjs/types/rest/request/shared.js +2 -0
  143. package/dist/mjs/types/rest/request/shared.js.map +1 -0
  144. package/dist/mjs/types/rest/request/signal-bot.d.ts +97 -0
  145. package/dist/mjs/types/rest/request/signal-bot.js +2 -0
  146. package/dist/mjs/types/rest/request/signal-bot.js.map +1 -0
  147. package/dist/mjs/types/rest/request/simple-earn.d.ts +23 -0
  148. package/dist/mjs/types/rest/request/simple-earn.js +2 -0
  149. package/dist/mjs/types/rest/request/simple-earn.js.map +1 -0
  150. package/dist/mjs/types/rest/request/spread-trading.d.ts +69 -0
  151. package/dist/mjs/types/rest/request/spread-trading.js +2 -0
  152. package/dist/mjs/types/rest/request/spread-trading.js.map +1 -0
  153. package/dist/mjs/types/rest/request/subaccount.d.ts +33 -0
  154. package/dist/mjs/types/rest/request/subaccount.js +2 -0
  155. package/dist/mjs/types/rest/request/subaccount.js.map +1 -0
  156. package/dist/mjs/types/rest/request/trade.d.ts +194 -0
  157. package/dist/mjs/types/rest/request/trade.js +2 -0
  158. package/dist/mjs/types/rest/request/trade.js.map +1 -0
  159. package/dist/mjs/types/rest/response/private-account.d.ts +448 -0
  160. package/dist/mjs/types/rest/response/private-account.js +2 -0
  161. package/dist/mjs/types/rest/response/private-account.js.map +1 -0
  162. package/dist/mjs/types/rest/response/private-block-trading.d.ts +124 -0
  163. package/dist/mjs/types/rest/response/private-block-trading.js +2 -0
  164. package/dist/mjs/types/rest/response/private-block-trading.js.map +1 -0
  165. package/dist/mjs/types/rest/response/private-copy-trading.d.ts +259 -0
  166. package/dist/mjs/types/rest/response/private-copy-trading.js +2 -0
  167. package/dist/mjs/types/rest/response/private-copy-trading.js.map +1 -0
  168. package/dist/mjs/types/rest/response/private-flexible-loan.d.ts +72 -0
  169. package/dist/mjs/types/rest/response/private-flexible-loan.js +2 -0
  170. package/dist/mjs/types/rest/response/private-flexible-loan.js.map +1 -0
  171. package/dist/mjs/types/rest/response/private-funding.d.ts +102 -0
  172. package/dist/mjs/types/rest/response/private-funding.js +2 -0
  173. package/dist/mjs/types/rest/response/private-funding.js.map +1 -0
  174. package/dist/mjs/types/rest/response/private-recurring-buy.d.ts +63 -0
  175. package/dist/mjs/types/rest/response/private-recurring-buy.js +2 -0
  176. package/dist/mjs/types/rest/response/private-recurring-buy.js.map +1 -0
  177. package/dist/mjs/types/rest/response/private-signal-bot.d.ts +22 -0
  178. package/dist/mjs/types/rest/response/private-signal-bot.js +2 -0
  179. package/dist/mjs/types/rest/response/private-signal-bot.js.map +1 -0
  180. package/dist/mjs/types/rest/response/private-spread-trading.d.ts +126 -0
  181. package/dist/mjs/types/rest/response/private-spread-trading.js +2 -0
  182. package/dist/mjs/types/rest/response/private-spread-trading.js.map +1 -0
  183. package/dist/mjs/types/rest/response/private-subaccount.d.ts +80 -0
  184. package/dist/mjs/types/rest/response/private-subaccount.js +2 -0
  185. package/dist/mjs/types/rest/response/private-subaccount.js.map +1 -0
  186. package/dist/mjs/types/rest/response/private-trade.d.ts +355 -0
  187. package/dist/mjs/types/rest/response/private-trade.js +2 -0
  188. package/dist/mjs/types/rest/response/private-trade.js.map +1 -0
  189. package/dist/mjs/types/rest/response/public-data.d.ts +174 -0
  190. package/dist/mjs/types/rest/response/public-data.js +2 -0
  191. package/dist/mjs/types/rest/response/public-data.js.map +1 -0
  192. package/dist/mjs/types/rest/shared.d.ts +45 -0
  193. package/dist/mjs/types/rest/shared.js +2 -0
  194. package/dist/mjs/types/rest/shared.js.map +1 -0
  195. package/dist/mjs/types/shared.d.ts +13 -0
  196. package/dist/mjs/types/shared.js +2 -0
  197. package/{lib/types/rest → dist/mjs/types}/shared.js.map +1 -1
  198. package/dist/mjs/types/websockets/ws-api-request.d.ts +61 -0
  199. package/dist/mjs/types/websockets/ws-api-request.js +2 -0
  200. package/dist/mjs/types/websockets/ws-api-request.js.map +1 -0
  201. package/dist/mjs/types/websockets/ws-api-response.d.ts +28 -0
  202. package/dist/mjs/types/websockets/ws-api-response.js +2 -0
  203. package/dist/mjs/types/websockets/ws-api-response.js.map +1 -0
  204. package/dist/mjs/types/websockets/ws-api.d.ts +139 -0
  205. package/dist/mjs/types/websockets/ws-api.js +35 -0
  206. package/dist/mjs/types/websockets/ws-api.js.map +1 -0
  207. package/dist/mjs/types/websockets/ws-events.d.ts +33 -0
  208. package/dist/mjs/types/websockets/ws-events.js +8 -0
  209. package/dist/mjs/types/websockets/ws-events.js.map +1 -0
  210. package/dist/mjs/types/websockets/ws-general.d.ts +48 -0
  211. package/dist/mjs/types/websockets/ws-general.js +2 -0
  212. package/dist/mjs/types/websockets/ws-general.js.map +1 -0
  213. package/dist/mjs/types/websockets/ws-request.d.ts +93 -0
  214. package/dist/mjs/types/websockets/ws-request.js +2 -0
  215. package/dist/mjs/types/websockets/ws-request.js.map +1 -0
  216. package/dist/mjs/util/BaseRestClient.d.ts +29 -0
  217. package/dist/mjs/util/BaseRestClient.js +230 -0
  218. package/dist/mjs/util/BaseRestClient.js.map +1 -0
  219. package/dist/mjs/util/BaseWSClient.d.ts +198 -0
  220. package/dist/mjs/util/BaseWSClient.js +763 -0
  221. package/dist/mjs/util/BaseWSClient.js.map +1 -0
  222. package/dist/mjs/util/WsStore.d.ts +75 -0
  223. package/dist/mjs/util/WsStore.js +298 -0
  224. package/dist/mjs/util/WsStore.js.map +1 -0
  225. package/dist/mjs/util/WsStore.types.d.ts +51 -0
  226. package/dist/mjs/util/WsStore.types.js +11 -0
  227. package/dist/mjs/util/WsStore.types.js.map +1 -0
  228. package/dist/mjs/util/logger.d.ts +8 -0
  229. package/dist/mjs/util/logger.js +14 -0
  230. package/dist/mjs/util/logger.js.map +1 -0
  231. package/dist/mjs/util/requestUtils.d.ts +8 -0
  232. package/dist/mjs/util/requestUtils.js +51 -0
  233. package/dist/mjs/util/requestUtils.js.map +1 -0
  234. package/dist/mjs/util/typeGuards.d.ts +19 -0
  235. package/dist/mjs/util/typeGuards.js +85 -0
  236. package/dist/mjs/util/typeGuards.js.map +1 -0
  237. package/dist/mjs/util/webCryptoAPI.d.ts +15 -0
  238. package/dist/mjs/util/webCryptoAPI.js +77 -0
  239. package/dist/mjs/util/webCryptoAPI.js.map +1 -0
  240. package/dist/mjs/util/websocket-util.d.ts +142 -0
  241. package/dist/mjs/util/websocket-util.js +517 -0
  242. package/dist/mjs/util/websocket-util.js.map +1 -0
  243. package/dist/mjs/websocket-api-client.d.ts +135 -0
  244. package/dist/mjs/websocket-api-client.js +167 -0
  245. package/dist/mjs/websocket-api-client.js.map +1 -0
  246. package/dist/mjs/websocket-client-legacy.d.ts +76 -0
  247. package/dist/mjs/websocket-client-legacy.js +517 -0
  248. package/dist/mjs/websocket-client-legacy.js.map +1 -0
  249. package/dist/mjs/websocket-client.d.ts +81 -0
  250. package/dist/mjs/websocket-client.js +544 -0
  251. package/dist/mjs/websocket-client.js.map +1 -0
  252. package/llms.txt +5604 -3719
  253. package/package.json +28 -13
  254. package/index.js +0 -1
  255. package/lib/constants/funding.js.map +0 -1
  256. package/lib/constants/index.d.ts +0 -1
  257. package/lib/constants/index.js +0 -18
  258. package/lib/constants/index.js.map +0 -1
  259. package/lib/index.d.ts +0 -5
  260. package/lib/index.js +0 -22
  261. package/lib/index.js.map +0 -1
  262. package/lib/rest-client.js.map +0 -1
  263. package/lib/types/index.d.ts +0 -3
  264. package/lib/types/index.js +0 -20
  265. package/lib/types/index.js.map +0 -1
  266. package/lib/types/rest/client.d.ts +0 -20
  267. package/lib/types/rest/index.d.ts +0 -4
  268. package/lib/types/rest/index.js +0 -21
  269. package/lib/types/rest/index.js.map +0 -1
  270. package/lib/types/rest/request/account.js.map +0 -1
  271. package/lib/types/rest/request/announement.d.ts +0 -0
  272. package/lib/types/rest/request/announement.js +0 -1
  273. package/lib/types/rest/request/announement.js.map +0 -1
  274. package/lib/types/rest/request/block-trading.js.map +0 -1
  275. package/lib/types/rest/request/convert.js.map +0 -1
  276. package/lib/types/rest/request/copy-trading.js.map +0 -1
  277. package/lib/types/rest/request/funding.js.map +0 -1
  278. package/lib/types/rest/request/grid-trading.js.map +0 -1
  279. package/lib/types/rest/request/index.d.ts +0 -14
  280. package/lib/types/rest/request/index.js +0 -31
  281. package/lib/types/rest/request/index.js.map +0 -1
  282. package/lib/types/rest/request/public.js.map +0 -1
  283. package/lib/types/rest/request/recurring-buy.js.map +0 -1
  284. package/lib/types/rest/request/shared.js.map +0 -1
  285. package/lib/types/rest/request/signal-bot.js.map +0 -1
  286. package/lib/types/rest/request/simple-earn.js.map +0 -1
  287. package/lib/types/rest/request/spread-trading.js.map +0 -1
  288. package/lib/types/rest/request/subaccount.js.map +0 -1
  289. package/lib/types/rest/request/trade.js.map +0 -1
  290. package/lib/types/rest/response/index.d.ts +0 -11
  291. package/lib/types/rest/response/index.js +0 -28
  292. package/lib/types/rest/response/index.js.map +0 -1
  293. package/lib/types/rest/response/private-account.js.map +0 -1
  294. package/lib/types/rest/response/private-block-trading.js.map +0 -1
  295. package/lib/types/rest/response/private-copy-trading.js.map +0 -1
  296. package/lib/types/rest/response/private-flexible-loan.js.map +0 -1
  297. package/lib/types/rest/response/private-funding.js.map +0 -1
  298. package/lib/types/rest/response/private-recurring-buy.js.map +0 -1
  299. package/lib/types/rest/response/private-signal-bot.js.map +0 -1
  300. package/lib/types/rest/response/private-spread-trading.js.map +0 -1
  301. package/lib/types/rest/response/private-subaccount.js.map +0 -1
  302. package/lib/types/rest/response/private-trade.js.map +0 -1
  303. package/lib/types/rest/response/public-data.js.map +0 -1
  304. package/lib/types/shared.d.ts +0 -6
  305. package/lib/types/websockets/client.d.ts +0 -22
  306. package/lib/types/websockets/client.js +0 -3
  307. package/lib/types/websockets/event.js +0 -3
  308. package/lib/types/websockets/event.js.map +0 -1
  309. package/lib/types/websockets/index.d.ts +0 -3
  310. package/lib/types/websockets/index.js +0 -20
  311. package/lib/types/websockets/index.js.map +0 -1
  312. package/lib/types/websockets/request.js +0 -3
  313. package/lib/types/websockets/request.js.map +0 -1
  314. package/lib/util/BaseRestClient.js +0 -217
  315. package/lib/util/BaseRestClient.js.map +0 -1
  316. package/lib/util/WsStore.d.ts +0 -66
  317. package/lib/util/WsStore.js +0 -168
  318. package/lib/util/WsStore.js.map +0 -1
  319. package/lib/util/browser-support.d.ts +0 -6
  320. package/lib/util/browser-support.js +0 -48
  321. package/lib/util/browser-support.js.map +0 -1
  322. package/lib/util/index.d.ts +0 -4
  323. package/lib/util/index.js +0 -21
  324. package/lib/util/index.js.map +0 -1
  325. package/lib/util/logger.d.ts +0 -9
  326. package/lib/util/logger.js.map +0 -1
  327. package/lib/util/node-support.d.ts +0 -1
  328. package/lib/util/node-support.js +0 -8
  329. package/lib/util/node-support.js.map +0 -1
  330. package/lib/util/requestUtils.js.map +0 -1
  331. package/lib/util/typeGuards.js.map +0 -1
  332. package/lib/util/websocket-util.d.ts +0 -35
  333. package/lib/util/websocket-util.js +0 -282
  334. package/lib/util/websocket-util.js.map +0 -1
  335. package/lib/websocket-client.js +0 -472
  336. package/lib/websocket-client.js.map +0 -1
  337. /package/{lib → dist/cjs}/constants/funding.d.ts +0 -0
  338. /package/{lib → dist/cjs}/constants/funding.js +0 -0
  339. /package/{lib → dist/cjs}/types/rest/client.js +0 -0
  340. /package/{lib → dist/cjs}/types/rest/request/account.js +0 -0
  341. /package/{lib → dist/cjs}/types/rest/request/block-trading.js +0 -0
  342. /package/{lib → dist/cjs}/types/rest/request/convert.d.ts +0 -0
  343. /package/{lib → dist/cjs}/types/rest/request/convert.js +0 -0
  344. /package/{lib → dist/cjs}/types/rest/request/copy-trading.d.ts +0 -0
  345. /package/{lib → dist/cjs}/types/rest/request/copy-trading.js +0 -0
  346. /package/{lib → dist/cjs}/types/rest/request/funding.d.ts +0 -0
  347. /package/{lib → dist/cjs}/types/rest/request/funding.js +0 -0
  348. /package/{lib → dist/cjs}/types/rest/request/grid-trading.d.ts +0 -0
  349. /package/{lib → dist/cjs}/types/rest/request/grid-trading.js +0 -0
  350. /package/{lib → dist/cjs}/types/rest/request/public.d.ts +0 -0
  351. /package/{lib → dist/cjs}/types/rest/request/public.js +0 -0
  352. /package/{lib → dist/cjs}/types/rest/request/recurring-buy.d.ts +0 -0
  353. /package/{lib → dist/cjs}/types/rest/request/recurring-buy.js +0 -0
  354. /package/{lib → dist/cjs}/types/rest/request/shared.js +0 -0
  355. /package/{lib → dist/cjs}/types/rest/request/signal-bot.d.ts +0 -0
  356. /package/{lib → dist/cjs}/types/rest/request/signal-bot.js +0 -0
  357. /package/{lib → dist/cjs}/types/rest/request/simple-earn.d.ts +0 -0
  358. /package/{lib → dist/cjs}/types/rest/request/simple-earn.js +0 -0
  359. /package/{lib → dist/cjs}/types/rest/request/spread-trading.d.ts +0 -0
  360. /package/{lib → dist/cjs}/types/rest/request/spread-trading.js +0 -0
  361. /package/{lib → dist/cjs}/types/rest/request/subaccount.d.ts +0 -0
  362. /package/{lib → dist/cjs}/types/rest/request/subaccount.js +0 -0
  363. /package/{lib → dist/cjs}/types/rest/request/trade.js +0 -0
  364. /package/{lib → dist/cjs}/types/rest/response/private-account.js +0 -0
  365. /package/{lib → dist/cjs}/types/rest/response/private-block-trading.js +0 -0
  366. /package/{lib → dist/cjs}/types/rest/response/private-copy-trading.d.ts +0 -0
  367. /package/{lib → dist/cjs}/types/rest/response/private-copy-trading.js +0 -0
  368. /package/{lib → dist/cjs}/types/rest/response/private-flexible-loan.d.ts +0 -0
  369. /package/{lib → dist/cjs}/types/rest/response/private-flexible-loan.js +0 -0
  370. /package/{lib → dist/cjs}/types/rest/response/private-funding.js +0 -0
  371. /package/{lib → dist/cjs}/types/rest/response/private-recurring-buy.d.ts +0 -0
  372. /package/{lib → dist/cjs}/types/rest/response/private-recurring-buy.js +0 -0
  373. /package/{lib → dist/cjs}/types/rest/response/private-signal-bot.d.ts +0 -0
  374. /package/{lib → dist/cjs}/types/rest/response/private-signal-bot.js +0 -0
  375. /package/{lib → dist/cjs}/types/rest/response/private-spread-trading.d.ts +0 -0
  376. /package/{lib → dist/cjs}/types/rest/response/private-spread-trading.js +0 -0
  377. /package/{lib → dist/cjs}/types/rest/response/private-subaccount.d.ts +0 -0
  378. /package/{lib → dist/cjs}/types/rest/response/private-subaccount.js +0 -0
  379. /package/{lib → dist/cjs}/types/rest/response/private-trade.js +0 -0
  380. /package/{lib → dist/cjs}/types/rest/response/public-data.js +0 -0
  381. /package/{lib → dist/cjs}/types/rest/shared.js +0 -0
  382. /package/{lib → dist/cjs}/types/shared.js +0 -0
@@ -0,0 +1,61 @@
1
+ import { numberInString, OrderSide, OrderType, PositionSide, TradeMode } from '../rest/shared.js';
2
+ export interface WSAPIPlaceOrderRequestV5 {
3
+ instId: string;
4
+ tdMode: TradeMode;
5
+ ccy?: string;
6
+ clOrdId?: string;
7
+ tag?: string;
8
+ side: OrderSide;
9
+ posSide?: PositionSide;
10
+ ordType: OrderType;
11
+ /** Quantity to buy or sell */
12
+ sz: numberInString;
13
+ px?: numberInString;
14
+ pxUsd?: numberInString;
15
+ pxVol?: numberInString;
16
+ reduceOnly?: boolean;
17
+ /** A spot buy on BTC-USDT with "base_ccy" would mean the QTY (sz) is in USDT */
18
+ tgtCcy?: 'base_ccy' | 'quote_ccy';
19
+ banAmend?: boolean;
20
+ tradeQuoteCcy?: string;
21
+ stpMode?: 'cancel_maker' | 'cancel_taker' | 'cancel_both';
22
+ }
23
+ export interface WSAPIAmendOrderRequestV5 {
24
+ instId: string;
25
+ cxlOnFail?: boolean;
26
+ ordId?: string;
27
+ clOrdId?: string;
28
+ reqId?: string;
29
+ newSz?: string;
30
+ newPx?: string;
31
+ newPxUsd?: string;
32
+ newPxVol?: string;
33
+ }
34
+ export interface WSAPIMassCancelOrdersRequestV5 {
35
+ instType: string;
36
+ instFamily: string;
37
+ lockInterval?: string;
38
+ }
39
+ export interface WSAPIPlaceSpreadOrderRequestV5 {
40
+ sprdId: string;
41
+ clOrdId?: string;
42
+ tag?: string;
43
+ side: OrderSide;
44
+ ordType: OrderType;
45
+ sz: numberInString;
46
+ px?: numberInString;
47
+ }
48
+ export interface WSAPIAmendSpreadOrderRequestV5 {
49
+ ordId?: string;
50
+ clOrdId?: string;
51
+ reqId?: string;
52
+ newSz?: string;
53
+ newPx?: string;
54
+ }
55
+ export interface WSAPICancelSpreadOrderRequestV5 {
56
+ ordId?: string;
57
+ clOrdId?: string;
58
+ }
59
+ export interface WSAPISpreadMassCancelOrdersRequestV5 {
60
+ sprdId?: string;
61
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ws-api-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-api-request.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-api-request.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import { numberInString } from '../rest/shared.js';
2
+ export interface WSAPICancelOrderResultV5 {
3
+ clOrdId: string;
4
+ ordId: string;
5
+ ts: numberInString;
6
+ sCode: string;
7
+ sMsg: string;
8
+ }
9
+ export interface WSAPISpreadPlaceOrderResultV5 {
10
+ clOrdId: string;
11
+ ordId: string;
12
+ tag: string;
13
+ sCode: numberInString;
14
+ sMsg: string;
15
+ }
16
+ export interface WSAPISpreadAmendOrderResultV5 {
17
+ clOrdId: string;
18
+ ordId: string;
19
+ reqId: string;
20
+ sCode: string;
21
+ sMsg: string;
22
+ }
23
+ export interface WSAPISpreadCancelOrderResultV5 {
24
+ clOrdId: string;
25
+ ordId: string;
26
+ sCode: string;
27
+ sMsg: string;
28
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ws-api-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-api-response.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-api-response.ts"],"names":[],"mappings":""}
@@ -0,0 +1,139 @@
1
+ import { WS_KEY_MAP, WsKey } from '../../util/websocket-util.js';
2
+ import { OrderIdRequest } from '../rest/request/trade.js';
3
+ import { OrderResult } from '../rest/response/private-trade.js';
4
+ import { numberInString } from '../rest/shared.js';
5
+ import { WSAPIAmendOrderRequestV5, WSAPIAmendSpreadOrderRequestV5, WSAPICancelSpreadOrderRequestV5, WSAPIMassCancelOrdersRequestV5, WSAPIPlaceOrderRequestV5, WSAPIPlaceSpreadOrderRequestV5, WSAPISpreadMassCancelOrdersRequestV5 } from './ws-api-request.js';
6
+ import { WSAPICancelOrderResultV5, WSAPISpreadAmendOrderResultV5, WSAPISpreadCancelOrderResultV5, WSAPISpreadPlaceOrderResultV5 } from './ws-api-response.js';
7
+ import { WsAuthRequestArg, WsChannelSubUnSubRequestArg } from './ws-request.js';
8
+ export interface WSAPIRequestFlags {
9
+ /** If true, will skip auth requirement for WS API connection */
10
+ authIsOptional?: boolean | undefined;
11
+ /**
12
+ * Request effective deadline. Unix timestamp format in milliseconds, e.g. 1597026383085
13
+ *
14
+ * Only applies for order placement and order amend (batch commands included)
15
+ */
16
+ expTime?: numberInString;
17
+ }
18
+ export type WSOperation = 'subscribe' | 'unsubscribe' | 'login';
19
+ /**
20
+ *
21
+ * Top level requests with args
22
+ *
23
+ */
24
+ /**
25
+
26
+ /**
27
+ * request looks like this:
28
+ {
29
+ "id": "1512",
30
+ "op": "subscribe",
31
+ "args": [
32
+ {
33
+ "channel": "tickers",
34
+ "instId": "BTC-USDT"
35
+ }
36
+ ]
37
+ }
38
+ */
39
+ export interface WsRequestOperationOKX<TWSRequestArg> {
40
+ id: string;
41
+ op: WSOperation;
42
+ args?: TWSRequestArg[];
43
+ }
44
+ export interface WsSubRequest extends WsRequestOperationOKX<WsChannelSubUnSubRequestArg> {
45
+ op: 'subscribe';
46
+ }
47
+ export interface WsUnsubRequest extends WsRequestOperationOKX<WsChannelSubUnSubRequestArg> {
48
+ op: 'unsubscribe';
49
+ }
50
+ export interface WsAuthRequest extends WsRequestOperationOKX<WsAuthRequestArg> {
51
+ op: 'login';
52
+ }
53
+ export type WSAPIPrivateOperations = 'order' | 'batch-orders' | 'cancel-order' | 'batch-cancel-orders' | 'amend-order' | 'batch-amend-orders' | 'mass-cancel';
54
+ export type WSAPIBusinessOperations = 'sprd-order' | 'sprd-amend-order' | 'sprd-cancel-order' | 'sprd-mass-cancel';
55
+ export type WSAPIOperation = WSAPIPrivateOperations | WSAPIBusinessOperations;
56
+ export declare const WS_API_Operations: WSAPIOperation[];
57
+ export declare const WS_API_PRIVATE_OPERATIONS: WSAPIPrivateOperations[];
58
+ export declare const WS_API_BUSINESS_OPERATIONS: WSAPIBusinessOperations[];
59
+ export declare const WS_API_TAG_OPERATIONS: WSAPIOperation[];
60
+ export interface WSAPIRequestOKX<TRequestParams> {
61
+ id: numberInString;
62
+ op: WSAPIOperation;
63
+ expTime?: numberInString;
64
+ args: TRequestParams[];
65
+ }
66
+ export interface WSAPIResponse<TResponseData extends object = object, TOperation extends WSAPIOperation = WSAPIOperation> {
67
+ wsKey: WsKey;
68
+ id: numberInString;
69
+ op: TOperation;
70
+ code: numberInString;
71
+ msg: string;
72
+ data: TResponseData[];
73
+ inTime: numberInString;
74
+ outTime: numberInString;
75
+ }
76
+ export interface WSOperationLoginParams {
77
+ apiKey: string;
78
+ passphrase: string;
79
+ timestamp: number;
80
+ sign: string;
81
+ }
82
+ export type Exact<T> = {
83
+ [K: string]: never;
84
+ } & {
85
+ [K in keyof T]: T[K];
86
+ };
87
+ /**
88
+ * List of operations supported for this WsKey (connection)
89
+ */
90
+ export interface WsAPIWsKeyTopicMap {
91
+ [WS_KEY_MAP.prodPrivate]: WSAPIPrivateOperations;
92
+ [WS_KEY_MAP.prodDemoPrivate]: WSAPIPrivateOperations;
93
+ [WS_KEY_MAP.prodBusiness]: WSAPIBusinessOperations;
94
+ [WS_KEY_MAP.prodDemoBusiness]: WSAPIBusinessOperations;
95
+ [WS_KEY_MAP.eeaLivePrivate]: WSAPIPrivateOperations;
96
+ [WS_KEY_MAP.eeaDemoPrivate]: WSAPIPrivateOperations;
97
+ [WS_KEY_MAP.usLivePrivate]: WSAPIPrivateOperations;
98
+ [WS_KEY_MAP.usDemoPrivate]: WSAPIPrivateOperations;
99
+ }
100
+ /**
101
+ * Request parameters expected per operation
102
+ */
103
+ export interface WsAPITopicRequestParamMap {
104
+ order: WSAPIPlaceOrderRequestV5;
105
+ 'batch-orders': WSAPIPlaceOrderRequestV5[];
106
+ 'cancel-order': OrderIdRequest;
107
+ 'batch-cancel-orders': OrderIdRequest[];
108
+ 'amend-order': WSAPIAmendOrderRequestV5;
109
+ 'batch-amend-orders': WSAPIAmendOrderRequestV5[];
110
+ 'mass-cancel': WSAPIMassCancelOrdersRequestV5;
111
+ 'sprd-order': WSAPIPlaceSpreadOrderRequestV5;
112
+ 'sprd-amend-order': WSAPIAmendSpreadOrderRequestV5;
113
+ 'sprd-cancel-order': WSAPICancelSpreadOrderRequestV5;
114
+ 'sprd-mass-cancel': WSAPISpreadMassCancelOrdersRequestV5;
115
+ }
116
+ /**
117
+ * Response structure expected for each operation
118
+ */
119
+ export interface WsAPIOperationResponseMap {
120
+ order: WSAPIResponse<[OrderResult], 'order'>;
121
+ 'batch-orders': WSAPIResponse<OrderResult[], 'batch-orders'>;
122
+ 'cancel-order': WSAPIResponse<[WSAPICancelOrderResultV5], 'cancel-order'>;
123
+ 'batch-cancel-orders': WSAPIResponse<WSAPICancelOrderResultV5[], 'batch-cancel-orders'>;
124
+ 'amend-order': WSAPIResponse<[OrderResult], 'amend-order'>;
125
+ 'batch-amend-orders': WSAPIResponse<[OrderResult], 'batch-amend-orders'>;
126
+ 'mass-cancel': WSAPIResponse<[{
127
+ result: boolean;
128
+ }], 'mass-cancel'>;
129
+ 'sprd-order': WSAPIResponse<[WSAPISpreadPlaceOrderResultV5], 'sprd-order'>;
130
+ 'sprd-amend-order': WSAPIResponse<[
131
+ WSAPISpreadAmendOrderResultV5
132
+ ], 'sprd-amend-order'>;
133
+ 'sprd-cancel-order': WSAPIResponse<[
134
+ WSAPISpreadCancelOrderResultV5
135
+ ], 'sprd-cancel-order'>;
136
+ 'sprd-mass-cancel': WSAPIResponse<[{
137
+ result: boolean;
138
+ }], 'sprd-mass-cancel'>;
139
+ }
@@ -0,0 +1,35 @@
1
+ import { WS_KEY_MAP } from '../../util/websocket-util.js';
2
+ export const WS_API_Operations = [
3
+ 'order',
4
+ 'batch-orders',
5
+ 'cancel-order',
6
+ 'batch-cancel-orders',
7
+ 'amend-order',
8
+ 'batch-amend-orders',
9
+ 'mass-cancel',
10
+ 'sprd-order',
11
+ 'sprd-amend-order',
12
+ 'sprd-cancel-order',
13
+ 'sprd-mass-cancel',
14
+ ];
15
+ export const WS_API_PRIVATE_OPERATIONS = [
16
+ 'order',
17
+ 'batch-orders',
18
+ 'cancel-order',
19
+ 'batch-cancel-orders',
20
+ 'amend-order',
21
+ 'batch-amend-orders',
22
+ 'mass-cancel',
23
+ ];
24
+ export const WS_API_BUSINESS_OPERATIONS = [
25
+ 'sprd-order',
26
+ 'sprd-amend-order',
27
+ 'sprd-cancel-order',
28
+ 'sprd-mass-cancel',
29
+ ];
30
+ export const WS_API_TAG_OPERATIONS = [
31
+ 'order',
32
+ 'batch-orders',
33
+ 'sprd-order',
34
+ ];
35
+ //# sourceMappingURL=ws-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-api.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAS,MAAM,8BAA8B,CAAC;AAwGjE,MAAM,CAAC,MAAM,iBAAiB,GAAqB;IACjD,OAAO;IACP,cAAc;IACd,cAAc;IACd,qBAAqB;IACrB,aAAa;IACb,oBAAoB;IACpB,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,mBAAmB;IACnB,kBAAkB;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAA6B;IACjE,OAAO;IACP,cAAc;IACd,cAAc;IACd,qBAAqB;IACrB,aAAa;IACb,oBAAoB;IACpB,aAAa;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAA8B;IACnE,YAAY;IACZ,kBAAkB;IAClB,mBAAmB;IACnB,kBAAkB;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,OAAO;IACP,cAAc;IACd,YAAY;CACb,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { WsChannel } from './ws-request.js';
2
+ export interface MessageEventLike {
3
+ target: WebSocket;
4
+ type: 'message';
5
+ data: string;
6
+ }
7
+ export declare function isMessageEvent(msg: unknown): msg is MessageEventLike;
8
+ export interface WsEvent {
9
+ event: 'error' | 'login' | 'subscribe' | 'unsubscribe' | 'channel-conn-count';
10
+ code?: string;
11
+ msg?: string;
12
+ arg?: any;
13
+ data?: any;
14
+ }
15
+ export interface WsDataEvent<T = any> {
16
+ arg: {
17
+ channel: WsChannel;
18
+ uid?: string;
19
+ instId?: string;
20
+ instFamily?: string;
21
+ };
22
+ data: T;
23
+ }
24
+ export interface WsLoginEvent extends WsEvent {
25
+ event: 'login';
26
+ }
27
+ export interface WsChannelConnInfoEvent extends WsEvent {
28
+ event: 'channel-conn-count';
29
+ channel: string;
30
+ connId: string;
31
+ connCount: string;
32
+ }
33
+ export type WsResponse = WsEvent;
@@ -0,0 +1,8 @@
1
+ export function isMessageEvent(msg) {
2
+ if (typeof msg !== 'object' || !msg) {
3
+ return false;
4
+ }
5
+ const message = msg;
6
+ return message['type'] === 'message' && typeof message['data'] === 'string';
7
+ }
8
+ //# sourceMappingURL=ws-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-events.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-events.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,GAAuB,CAAC;IACxC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC;AAC9E,CAAC"}
@@ -0,0 +1,48 @@
1
+ import { RestClientOptions } from '../rest/client.js';
2
+ import { APICredentials, APIMarket } from '../shared.js';
3
+ export interface WSClientConfigurableOptions {
4
+ accounts?: APICredentials[];
5
+ /**
6
+ * The API group this client should connect to:
7
+ * - market: 'prod' (default: connects to OKX global) https://www.okx.com/docs-v5/en/#overview-production-trading-services
8
+ * - market: 'EEA' // also known as "my.okx.com" https://my.okx.com/docs-v5/en/#overview-production-trading-services
9
+ * - market: 'US' // also known as "app.okx.com" https://app.okx.com/docs-v5/en/#overview-production-trading-services
10
+ */
11
+ market?: APIMarket;
12
+ /**
13
+ * Set to `true` to use OKX's demo trading functionality
14
+ */
15
+ demoTrading?: boolean;
16
+ disableHeartbeat?: boolean;
17
+ /** How often to check if the connection is alive */
18
+ pingInterval?: number;
19
+ /** How long to wait for a pong (heartbeat reply) before assuming the connection is dead */
20
+ pongTimeout?: number;
21
+ /** Delay in milliseconds before respawning the connection */
22
+ reconnectTimeout?: number;
23
+ requestOptions?: RestClientOptions;
24
+ wsOptions?: {
25
+ protocols?: string[];
26
+ agent?: any;
27
+ };
28
+ wsUrl?: string;
29
+ /**
30
+ * Allows you to provide a custom "signMessage" function, e.g. to use node's much faster createHmac method
31
+ *
32
+ * Look in the examples folder for a demonstration on using node's createHmac instead.
33
+ */
34
+ customSignMessageFn?: (message: string, secret: string) => Promise<string>;
35
+ }
36
+ export interface WebsocketClientOptions extends WSClientConfigurableOptions {
37
+ market: APIMarket;
38
+ pongTimeout: number;
39
+ pingInterval: number;
40
+ reconnectTimeout: number;
41
+ authPrivateConnectionsOnConnect: boolean;
42
+ authPrivateRequests: boolean;
43
+ /**
44
+ * Whether to use native WebSocket ping/pong frames for heartbeats
45
+ */
46
+ useNativeHeartbeats: boolean;
47
+ }
48
+ export type WsEventInternalSrc = 'event' | 'function';
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ws-general.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-general.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-general.ts"],"names":[],"mappings":""}
@@ -0,0 +1,93 @@
1
+ export interface WsAuthRequestArg {
2
+ apiKey: string;
3
+ passphrase: string;
4
+ timestamp: string;
5
+ sign: string;
6
+ }
7
+ export type WsTradeOp = 'order' | 'batch-orders' | 'cancel-order' | 'batch-cancel-orders' | 'amend-order' | 'batch-amend-order';
8
+ export type WsPrivateChannel = 'account' | 'positions' | 'balance_and_position' | 'orders' | 'orders-algo' | 'algo-advance' | 'liquidation-warning' | 'account-greeks' | 'grid-orders-spot' | 'grid-orders-contract' | 'grid-orders-moon' | 'grid-positions' | 'grid-sub-orders';
9
+ export type WsPublicKlineChannel = 'candle1Y' | 'candle6M' | 'candle3M' | 'candle1M' | 'candle1W' | 'candle1D' | 'candle2D' | 'candle3D' | 'candle5D' | 'candle12H' | 'candle6H' | 'candle4H' | 'candle2H' | 'candle1H' | 'candle30m' | 'candle15m' | 'candle5m' | 'candle3m' | 'candle1m' | 'candle1s' | 'candle1Yutc' | 'candle3Mutc' | 'candle1Mutc' | 'candle1Wutc' | 'candle1Dutc' | 'candle2Dutc' | 'candle3Dutc' | 'candle5Dutc' | 'candle12Hutc' | 'candle6Hutc';
10
+ export type WsPublicMarkPriceKlineChannel = 'mark-price-candle1Y' | 'mark-price-candle6M' | 'mark-price-candle3M' | 'mark-price-candle1M' | 'mark-price-candle1W' | 'mark-price-candle1D' | 'mark-price-candle2D' | 'mark-price-candle3D' | 'mark-price-candle5D' | 'mark-price-candle12H' | 'mark-price-candle6H' | 'mark-price-candle4H' | 'mark-price-candle2H' | 'mark-price-candle1H' | 'mark-price-candle30m' | 'mark-price-candle15m' | 'mark-price-candle5m' | 'mark-price-candle3m' | 'mark-price-candle1m' | 'mark-price-candle1Yutc' | 'mark-price-candle3Mutc' | 'mark-price-candle1Mutc' | 'mark-price-candle1Wutc' | 'mark-price-candle1Dutc' | 'mark-price-candle2Dutc' | 'mark-price-candle3Dutc' | 'mark-price-candle5Dutc' | 'mark-price-candle12Hutc' | 'mark-price-candle6Hutc';
11
+ export type WsPublicIndexKlineChannel = 'index-candle1Y' | 'index-candle6M' | 'index-candle3M' | 'index-candle1M' | 'index-candle1W' | 'index-candle1D' | 'index-candle2D' | 'index-candle3D' | 'index-candle5D' | 'index-candle12H' | 'index-candle6H' | 'index-candle4H index -candle2H' | 'index-candle1H' | 'index-candle30m' | 'index-candle15m' | 'index-candle5m' | 'index-candle3m' | 'index-candle1m' | 'index-candle1Yutc' | 'index-candle3Mutc' | 'index-candle1Mutc' | 'index-candle1Wutc' | 'index-candle1Dutc' | 'index-candle2Dutc' | 'index-candle3Dutc' | 'index-candle5Dutc' | 'index-candle12Hutc' | 'index-candle6Hutc';
12
+ export type WsPublicOrderBooksChannel = 'books' | 'books5' | 'bbo-tbt' | 'books-l2-tbt' | 'books50-l2-tpt';
13
+ export type WsPublicChannel = 'instruments' | 'tickers' | 'open-interest' | WsPublicKlineChannel | WsPublicMarkPriceKlineChannel | WsPublicIndexKlineChannel | 'trades' | 'estimated-price' | 'mark-price' | 'price-limit' | WsPublicOrderBooksChannel | 'opt-summary' | 'funding-rate' | 'index-tickers' | 'status' | 'liquidation-orders';
14
+ export type WsBusinessPrivateChannel = 'orders-algo' | 'algo-advance' | 'deposit-info' | 'withdrawal-info' | 'grid-orders-spot' | 'grid-orders-contract' | 'grid-orders-moon' | 'grid-positions' | 'grid-sub-orders' | 'algo-recurring-buy';
15
+ export type WsBusinessPublicChannel = WsPublicKlineChannel | WsPublicMarkPriceKlineChannel | WsPublicIndexKlineChannel;
16
+ export type WsBusinessChannel = WsBusinessPrivateChannel | WsBusinessPublicChannel;
17
+ export type WsChannel = WsPublicChannel | WsPrivateChannel | WsBusinessChannel;
18
+ /** Used to trigger order actions over websockets (e.g. placing & cancelling orders) */
19
+ export interface WsTradeBaseRequest {
20
+ op: WsTradeOp;
21
+ id: string;
22
+ args: any[];
23
+ }
24
+ export interface WsBaseRequestArg {
25
+ channel: WsChannel;
26
+ }
27
+ /**
28
+ *
29
+ * Args to be sent with top level requests
30
+ *
31
+ */
32
+ export interface WsPrivateChannelArgTickers extends WsBaseRequestArg {
33
+ channel: 'tickers';
34
+ instId: string;
35
+ }
36
+ export interface WsPrivateChannelArgWithCcy extends WsBaseRequestArg {
37
+ channel: 'account' | 'account-greeks' | 'withdrawal-info';
38
+ ccy?: string;
39
+ }
40
+ export type WsChannelArgInstType = 'SPOT' | 'MARGIN' | 'SWAP' | 'FUTURES' | 'OPTION' | 'ANY';
41
+ export interface WsPrivateChannelArgWithInstFamily extends WsBaseRequestArg {
42
+ channel: 'positions' | 'orders' | 'orders-algo' | 'liquidation-warning';
43
+ instType: WsChannelArgInstType;
44
+ instFamily?: string;
45
+ instId?: string;
46
+ }
47
+ export interface WsPrivateChannelArgAlgo extends WsBaseRequestArg {
48
+ channel: 'algo-advance';
49
+ instType: WsChannelArgInstType;
50
+ instId?: string;
51
+ algoId?: string;
52
+ }
53
+ export interface WsPrivateChannelArgBalanceAndPosition extends WsBaseRequestArg {
54
+ channel: 'balance_and_position';
55
+ }
56
+ export interface WsPrivateChannelArgGridOrders extends WsBaseRequestArg {
57
+ channel: 'grid-orders-spot' | 'grid-orders-contract' | 'grid-orders-moon';
58
+ instType: 'SPOT' | 'ANY';
59
+ instId?: string;
60
+ algoId?: string;
61
+ }
62
+ export interface WsPrivateChannelArgGridOther extends WsBaseRequestArg {
63
+ channel: 'grid-positions' | 'grid-sub-orders';
64
+ algoId: string;
65
+ }
66
+ export interface WsPublicChannelArgInstType extends WsBaseRequestArg {
67
+ channel: 'instruments';
68
+ instType: WsChannelArgInstType;
69
+ }
70
+ export interface WsPublicChannelArgInstId extends WsBaseRequestArg {
71
+ channel: 'tickers' | 'open-interest' | WsPublicKlineChannel | WsPublicMarkPriceKlineChannel | WsPublicIndexKlineChannel | 'trades' | 'mark-price' | 'price-limit' | WsPublicOrderBooksChannel | 'funding-rate' | 'index-tickers';
72
+ instId: string;
73
+ }
74
+ export type WsPublicChannelArgInstIdOrFamily = {
75
+ channel: 'estimated-price';
76
+ instType: 'OPTION' | 'FUTURES';
77
+ } & ({
78
+ instId: string;
79
+ } | {
80
+ instFamily: string;
81
+ });
82
+ export interface WsPublicChannelArgOptionSummary extends WsBaseRequestArg {
83
+ channel: 'opt-summary';
84
+ instFamily: string;
85
+ }
86
+ export interface WsPublicChannelArgStatus extends WsBaseRequestArg {
87
+ channel: 'status';
88
+ }
89
+ export interface WsPublicChannelArgLiquidationOrders extends WsBaseRequestArg {
90
+ channel: 'liquidation-orders';
91
+ instType: 'SWAP' | 'FUTURES';
92
+ }
93
+ export type WsChannelSubUnSubRequestArg = WsPrivateChannelArgTickers | WsPrivateChannelArgWithCcy | WsPrivateChannelArgWithInstFamily | WsPrivateChannelArgAlgo | WsPrivateChannelArgBalanceAndPosition | WsPrivateChannelArgGridOrders | WsPrivateChannelArgGridOther | WsPublicChannelArgInstType | WsPublicChannelArgInstId | WsPublicChannelArgInstIdOrFamily | WsPublicChannelArgOptionSummary | WsPublicChannelArgStatus | WsPublicChannelArgLiquidationOrders;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ws-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-request.js","sourceRoot":"","sources":["../../../../src/types/websockets/ws-request.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import { AxiosRequestConfig } from 'axios';
2
+ import { RestClientOptions } from '../types/rest/client.js';
3
+ export declare const MISSING_CREDENTIALS_ERROR = "Private endpoints require api and secret to be provided in the REST client constructor";
4
+ export default abstract class BaseRestClient {
5
+ private options;
6
+ private baseUrl;
7
+ private globalRequestOptions;
8
+ private apiKey;
9
+ private apiSecret;
10
+ private apiPassphrase;
11
+ constructor(options?: RestClientOptions, requestOptions?: AxiosRequestConfig);
12
+ get(endpoint: string, params?: any): Promise<any>;
13
+ post(endpoint: string, params?: any): Promise<any>;
14
+ getPrivate(endpoint: string, params?: any): Promise<any>;
15
+ postPrivate(endpoint: string, params?: any): Promise<any>;
16
+ deletePrivate(endpoint: string, params?: any): Promise<any>;
17
+ /**
18
+ * Make a HTTP request to a specific endpoint. Private endpoints are automatically signed.
19
+ */
20
+ private _call;
21
+ /**
22
+ * Sign request
23
+ */
24
+ private signRequest;
25
+ /**
26
+ * Generic handler to parse request exceptions
27
+ */
28
+ private parseException;
29
+ }