ccxt 4.1.86 → 4.1.88

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 (234) hide show
  1. package/README.md +9 -11
  2. package/dist/ccxt.browser.js +5673 -8615
  3. package/dist/ccxt.browser.min.js +3 -3
  4. package/dist/cjs/ccxt.js +1 -11
  5. package/dist/cjs/src/base/Exchange.js +95 -27
  6. package/dist/cjs/src/base/ws/Client.js +3 -3
  7. package/dist/cjs/src/base/ws/Future.js +9 -2
  8. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  9. package/dist/cjs/src/binance.js +4 -105
  10. package/dist/cjs/src/binanceus.js +0 -2
  11. package/dist/cjs/src/bit2c.js +8 -2
  12. package/dist/cjs/src/bitforex.js +0 -2
  13. package/dist/cjs/src/bitget.js +3455 -2480
  14. package/dist/cjs/src/bitmart.js +35 -9
  15. package/dist/cjs/src/coinbase.js +2 -0
  16. package/dist/cjs/src/coinbasepro.js +0 -43
  17. package/dist/cjs/src/coinlist.js +0 -2
  18. package/dist/cjs/src/coinsph.js +0 -31
  19. package/dist/cjs/src/cryptocom.js +22 -12
  20. package/dist/cjs/src/gate.js +37 -249
  21. package/dist/cjs/src/gemini.js +1 -0
  22. package/dist/cjs/src/kuna.js +0 -2
  23. package/dist/cjs/src/mexc.js +0 -2
  24. package/dist/cjs/src/novadax.js +28 -16
  25. package/dist/cjs/src/okcoin.js +23 -5
  26. package/dist/cjs/src/okx.js +0 -1
  27. package/dist/cjs/src/pro/binance.js +18 -215
  28. package/dist/cjs/src/pro/bitget.js +780 -736
  29. package/dist/cjs/src/pro/bitmart.js +8 -10
  30. package/dist/cjs/src/pro/bitmex.js +9 -34
  31. package/dist/cjs/src/pro/bitpanda.js +4 -4
  32. package/dist/cjs/src/pro/bybit.js +21 -97
  33. package/dist/cjs/src/pro/coinbasepro.js +36 -40
  34. package/dist/cjs/src/pro/coinex.js +2 -1
  35. package/dist/cjs/src/pro/cryptocom.js +10 -26
  36. package/dist/cjs/src/pro/gate.js +20 -17
  37. package/dist/cjs/src/pro/kucoin.js +39 -39
  38. package/dist/cjs/src/pro/kucoinfutures.js +40 -36
  39. package/dist/cjs/src/pro/okx.js +16 -29
  40. package/dist/cjs/src/tokocrypto.js +0 -1
  41. package/dist/cjs/src/upbit.js +36 -26
  42. package/dist/cjs/src/wazirx.js +0 -2
  43. package/dist/cjs/src/whitebit.js +0 -2
  44. package/dist/cjs/src/woo.js +0 -2
  45. package/js/ccxt.d.ts +3 -15
  46. package/js/ccxt.js +2 -10
  47. package/js/src/abstract/bitget.d.ts +1 -1
  48. package/js/src/ace.d.ts +1 -1
  49. package/js/src/alpaca.d.ts +1 -1
  50. package/js/src/ascendex.d.ts +1 -1
  51. package/js/src/base/Exchange.d.ts +5 -6
  52. package/js/src/base/Exchange.js +96 -28
  53. package/js/src/base/ws/Client.d.ts +2 -2
  54. package/js/src/base/ws/Client.js +4 -4
  55. package/js/src/base/ws/Future.d.ts +5 -2
  56. package/js/src/base/ws/Future.js +8 -2
  57. package/js/src/base/ws/WsClient.d.ts +1 -1
  58. package/js/src/base/ws/WsClient.js +2 -2
  59. package/js/src/bigone.d.ts +1 -1
  60. package/js/src/binance.d.ts +1 -10
  61. package/js/src/binance.js +4 -105
  62. package/js/src/binanceus.js +0 -2
  63. package/js/src/bingx.d.ts +1 -1
  64. package/js/src/bit2c.d.ts +1 -1
  65. package/js/src/bit2c.js +8 -2
  66. package/js/src/bitbank.d.ts +1 -1
  67. package/js/src/bitbns.d.ts +1 -1
  68. package/js/src/bitfinex.d.ts +1 -1
  69. package/js/src/bitfinex2.d.ts +1 -1
  70. package/js/src/bitflyer.d.ts +1 -1
  71. package/js/src/bitforex.d.ts +1 -1
  72. package/js/src/bitforex.js +0 -2
  73. package/js/src/bitget.d.ts +13 -11
  74. package/js/src/bitget.js +3455 -2480
  75. package/js/src/bithumb.d.ts +1 -1
  76. package/js/src/bitmart.d.ts +1 -1
  77. package/js/src/bitmart.js +35 -9
  78. package/js/src/bitmex.d.ts +1 -1
  79. package/js/src/bitopro.d.ts +1 -1
  80. package/js/src/bitpanda.d.ts +1 -1
  81. package/js/src/bitrue.d.ts +1 -1
  82. package/js/src/bitso.d.ts +1 -1
  83. package/js/src/bitstamp.d.ts +1 -1
  84. package/js/src/bitvavo.d.ts +1 -1
  85. package/js/src/bl3p.d.ts +1 -1
  86. package/js/src/blockchaincom.d.ts +1 -1
  87. package/js/src/btcalpha.d.ts +1 -1
  88. package/js/src/btcbox.d.ts +1 -1
  89. package/js/src/btcmarkets.d.ts +1 -1
  90. package/js/src/btcturk.d.ts +1 -1
  91. package/js/src/bybit.d.ts +1 -1
  92. package/js/src/cex.d.ts +1 -1
  93. package/js/src/coinbase.d.ts +1 -1
  94. package/js/src/coinbase.js +2 -0
  95. package/js/src/coinbasepro.d.ts +1 -5
  96. package/js/src/coinbasepro.js +1 -44
  97. package/js/src/coincheck.d.ts +1 -1
  98. package/js/src/coinex.d.ts +1 -1
  99. package/js/src/coinlist.d.ts +1 -1
  100. package/js/src/coinlist.js +0 -2
  101. package/js/src/coinmate.d.ts +1 -1
  102. package/js/src/coinone.d.ts +1 -1
  103. package/js/src/coinsph.d.ts +1 -2
  104. package/js/src/coinsph.js +0 -31
  105. package/js/src/coinspot.d.ts +1 -1
  106. package/js/src/cryptocom.d.ts +1 -1
  107. package/js/src/cryptocom.js +22 -12
  108. package/js/src/currencycom.d.ts +1 -1
  109. package/js/src/delta.d.ts +1 -1
  110. package/js/src/deribit.d.ts +1 -1
  111. package/js/src/digifinex.d.ts +1 -1
  112. package/js/src/exmo.d.ts +1 -1
  113. package/js/src/gate.d.ts +1 -28
  114. package/js/src/gate.js +37 -249
  115. package/js/src/gemini.d.ts +1 -1
  116. package/js/src/gemini.js +1 -0
  117. package/js/src/hitbtc.d.ts +1 -1
  118. package/js/src/hollaex.d.ts +1 -1
  119. package/js/src/htx.d.ts +1 -1
  120. package/js/src/huobijp.d.ts +1 -1
  121. package/js/src/idex.d.ts +1 -1
  122. package/js/src/independentreserve.d.ts +1 -1
  123. package/js/src/indodax.d.ts +1 -1
  124. package/js/src/kraken.d.ts +1 -1
  125. package/js/src/krakenfutures.d.ts +1 -1
  126. package/js/src/kucoin.d.ts +1 -1
  127. package/js/src/kucoinfutures.d.ts +1 -1
  128. package/js/src/kuna.d.ts +1 -1
  129. package/js/src/kuna.js +0 -2
  130. package/js/src/latoken.d.ts +1 -1
  131. package/js/src/lbank.d.ts +1 -1
  132. package/js/src/luno.d.ts +1 -1
  133. package/js/src/lykke.d.ts +1 -1
  134. package/js/src/mercado.d.ts +1 -1
  135. package/js/src/mexc.d.ts +1 -1
  136. package/js/src/mexc.js +0 -2
  137. package/js/src/ndax.d.ts +1 -1
  138. package/js/src/novadax.d.ts +1 -1
  139. package/js/src/novadax.js +28 -16
  140. package/js/src/oceanex.d.ts +1 -1
  141. package/js/src/okcoin.d.ts +1 -1
  142. package/js/src/okcoin.js +23 -5
  143. package/js/src/okx.d.ts +1 -1
  144. package/js/src/okx.js +0 -1
  145. package/js/src/p2b.d.ts +1 -1
  146. package/js/src/paymium.d.ts +1 -1
  147. package/js/src/phemex.d.ts +1 -1
  148. package/js/src/poloniex.d.ts +1 -1
  149. package/js/src/poloniexfutures.d.ts +1 -1
  150. package/js/src/pro/alpaca.d.ts +8 -8
  151. package/js/src/pro/ascendex.d.ts +7 -7
  152. package/js/src/pro/binance.d.ts +22 -24
  153. package/js/src/pro/binance.js +19 -216
  154. package/js/src/pro/bingx.d.ts +7 -7
  155. package/js/src/pro/bitfinex.d.ts +6 -6
  156. package/js/src/pro/bitfinex2.d.ts +11 -11
  157. package/js/src/pro/bitget.d.ts +20 -22
  158. package/js/src/pro/bitget.js +780 -736
  159. package/js/src/pro/bitmart.d.ts +13 -13
  160. package/js/src/pro/bitmart.js +8 -10
  161. package/js/src/pro/bitmex.d.ts +10 -10
  162. package/js/src/pro/bitmex.js +9 -34
  163. package/js/src/pro/bitopro.d.ts +5 -5
  164. package/js/src/pro/bitpanda.d.ts +11 -11
  165. package/js/src/pro/bitpanda.js +4 -4
  166. package/js/src/pro/bitrue.d.ts +5 -5
  167. package/js/src/pro/bitstamp.d.ts +6 -6
  168. package/js/src/pro/bitvavo.d.ts +7 -7
  169. package/js/src/pro/blockchaincom.d.ts +10 -10
  170. package/js/src/pro/bybit.d.ts +15 -16
  171. package/js/src/pro/bybit.js +21 -97
  172. package/js/src/pro/cex.d.ts +20 -20
  173. package/js/src/pro/coinbase.d.ts +7 -6
  174. package/js/src/pro/coinbasepro.d.ts +12 -12
  175. package/js/src/pro/coinbasepro.js +36 -40
  176. package/js/src/pro/coinex.d.ts +12 -12
  177. package/js/src/pro/coinex.js +2 -1
  178. package/js/src/pro/cryptocom.d.ts +14 -14
  179. package/js/src/pro/cryptocom.js +10 -26
  180. package/js/src/pro/currencycom.d.ts +6 -6
  181. package/js/src/pro/deribit.d.ts +8 -8
  182. package/js/src/pro/exmo.d.ts +6 -6
  183. package/js/src/pro/gate.d.ts +12 -11
  184. package/js/src/pro/gate.js +20 -17
  185. package/js/src/pro/gemini.d.ts +7 -7
  186. package/js/src/pro/hitbtc.d.ts +13 -13
  187. package/js/src/pro/hollaex.d.ts +6 -6
  188. package/js/src/pro/htx.d.ts +12 -12
  189. package/js/src/pro/huobijp.d.ts +5 -5
  190. package/js/src/pro/idex.d.ts +7 -7
  191. package/js/src/pro/independentreserve.d.ts +4 -4
  192. package/js/src/pro/kraken.d.ts +11 -11
  193. package/js/src/pro/krakenfutures.d.ts +15 -15
  194. package/js/src/pro/kucoin.d.ts +14 -13
  195. package/js/src/pro/kucoin.js +39 -39
  196. package/js/src/pro/kucoinfutures.d.ts +12 -11
  197. package/js/src/pro/kucoinfutures.js +40 -36
  198. package/js/src/pro/luno.d.ts +3 -3
  199. package/js/src/pro/mexc.d.ts +11 -11
  200. package/js/src/pro/ndax.d.ts +5 -5
  201. package/js/src/pro/okcoin.d.ts +7 -7
  202. package/js/src/pro/okx.d.ts +17 -17
  203. package/js/src/pro/okx.js +16 -29
  204. package/js/src/pro/phemex.d.ts +9 -9
  205. package/js/src/pro/poloniex.d.ts +13 -13
  206. package/js/src/pro/poloniexfutures.d.ts +10 -10
  207. package/js/src/pro/probit.d.ts +7 -7
  208. package/js/src/pro/upbit.d.ts +4 -4
  209. package/js/src/pro/wazirx.d.ts +12 -12
  210. package/js/src/pro/whitebit.d.ts +10 -10
  211. package/js/src/pro/woo.d.ts +11 -11
  212. package/js/src/probit.d.ts +1 -1
  213. package/js/src/timex.d.ts +1 -1
  214. package/js/src/tokocrypto.d.ts +1 -1
  215. package/js/src/tokocrypto.js +0 -1
  216. package/js/src/upbit.d.ts +1 -1
  217. package/js/src/upbit.js +36 -26
  218. package/js/src/wavesexchange.d.ts +1 -1
  219. package/js/src/wazirx.d.ts +1 -1
  220. package/js/src/wazirx.js +0 -2
  221. package/js/src/whitebit.d.ts +1 -1
  222. package/js/src/whitebit.js +0 -2
  223. package/js/src/woo.d.ts +1 -1
  224. package/js/src/woo.js +0 -2
  225. package/js/src/yobit.d.ts +1 -1
  226. package/js/src/zaif.d.ts +1 -1
  227. package/js/src/zonda.d.ts +1 -1
  228. package/jsdoc2md.js +0 -2
  229. package/package.json +1 -1
  230. package/skip-tests.json +3 -14
  231. package/js/src/abstract/bittrex.d.ts +0 -79
  232. package/js/src/abstract/bittrex.js +0 -11
  233. package/js/src/abstract/coinbaseprime.d.ts +0 -69
  234. package/js/src/abstract/coinbaseprime.js +0 -11
@@ -1,13 +1,13 @@
1
1
  import krakenRest from '../kraken.js';
2
- import { Int, OrderSide, OrderType, Str } from '../base/types.js';
2
+ import type { Int, OrderSide, OrderType, Str, OrderBook, Order, Trade, Ticker, OHLCV } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class kraken extends krakenRest {
5
5
  describe(): any;
6
- createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<any>;
6
+ createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
7
7
  handleCreateEditOrder(client: any, message: any): void;
8
- editOrderWs(id: string, symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<any>;
8
+ editOrderWs(id: string, symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
9
9
  cancelOrdersWs(ids: string[], symbol?: Str, params?: {}): Promise<any>;
10
- cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<any>;
10
+ cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<Order>;
11
11
  handleCancelOrder(client: any, message: any): void;
12
12
  cancelAllOrdersWs(symbol?: Str, params?: {}): Promise<any>;
13
13
  handleCancelAllOrders(client: any, message: any): void;
@@ -16,10 +16,10 @@ export default class kraken extends krakenRest {
16
16
  handleOHLCV(client: Client, message: any, subscription: any): void;
17
17
  requestId(): any;
18
18
  watchPublic(name: any, symbol: any, params?: {}): Promise<any>;
19
- watchTicker(symbol: string, params?: {}): Promise<any>;
20
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
21
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
22
- watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
19
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
20
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
21
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
22
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
23
23
  loadMarkets(reload?: boolean, params?: {}): Promise<import("../base/types.js").Dictionary<import("../base/types.js").MarketInterface>>;
24
24
  watchHeartbeat(params?: {}): Promise<any>;
25
25
  handleHeartbeat(client: Client, message: any): void;
@@ -29,7 +29,7 @@ export default class kraken extends krakenRest {
29
29
  handleSystemStatus(client: Client, message: any): any;
30
30
  authenticate(params?: {}): Promise<string>;
31
31
  watchPrivate(name: any, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
32
- watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
32
+ watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
33
33
  handleMyTrades(client: Client, message: any, subscription?: any): void;
34
34
  parseWsTrade(trade: any, market?: any): {
35
35
  id: string;
@@ -46,9 +46,9 @@ export default class kraken extends krakenRest {
46
46
  cost: any;
47
47
  fee: any;
48
48
  };
49
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
49
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
50
50
  handleOrders(client: Client, message: any, subscription?: any): void;
51
- parseWsOrder(order: any, market?: any): import("../base/types.js").Order;
51
+ parseWsOrder(order: any, market?: any): Order;
52
52
  handleSubscriptionStatus(client: Client, message: any): void;
53
53
  handleErrorMessage(client: Client, message: any): boolean;
54
54
  handleMessage(client: Client, message: any): any;
@@ -1,34 +1,34 @@
1
1
  import krakenfuturesRest from '../krakenfutures.js';
2
- import { Int, Str, Strings } from '../base/types.js';
2
+ import type { Int, Str, Strings, OrderBook, Order, Trade, Ticker, Tickers, Position, Balances } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class krakenfutures extends krakenfuturesRest {
5
5
  describe(): any;
6
6
  authenticate(params?: {}): Promise<any>;
7
7
  subscribePublic(name: string, symbols: string[], params?: {}): Promise<any>;
8
8
  subscribePrivate(name: string, messageHash: string, params?: {}): Promise<any>;
9
- watchTicker(symbol: string, params?: {}): Promise<any>;
10
- watchTickers(symbols?: Strings, params?: {}): Promise<any>;
11
- watchTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
12
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
13
- watchPositions(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<any>;
9
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
10
+ watchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
11
+ watchTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
12
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
13
+ watchPositions(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
14
14
  handlePositions(client: any, message: any): void;
15
- parseWsPosition(position: any, market?: any): import("../base/types.js").Position;
16
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
17
- watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
18
- watchBalance(params?: {}): Promise<any>;
15
+ parseWsPosition(position: any, market?: any): Position;
16
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
17
+ watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
18
+ watchBalance(params?: {}): Promise<Balances>;
19
19
  handleTrade(client: Client, message: any): any;
20
- parseWsTrade(trade: any, market?: any): import("../base/types.js").Trade;
21
- parseWsOrderTrade(trade: any, market?: any): import("../base/types.js").Trade;
20
+ parseWsTrade(trade: any, market?: any): Trade;
21
+ parseWsOrderTrade(trade: any, market?: any): Trade;
22
22
  handleOrder(client: Client, message: any): any;
23
23
  handleOrderSnapshot(client: Client, message: any): void;
24
- parseWsOrder(order: any, market?: any): import("../base/types.js").Order;
24
+ parseWsOrder(order: any, market?: any): Order;
25
25
  handleTicker(client: Client, message: any): any;
26
- parseWsTicker(ticker: any, market?: any): import("../base/types.js").Ticker;
26
+ parseWsTicker(ticker: any, market?: any): Ticker;
27
27
  handleOrderBookSnapshot(client: Client, message: any): void;
28
28
  handleOrderBook(client: Client, message: any): void;
29
29
  handleBalance(client: Client, message: any): void;
30
30
  handleMyTrades(client: Client, message: any): void;
31
- parseWsMyTrade(trade: any, market?: any): import("../base/types.js").Trade;
31
+ parseWsMyTrade(trade: any, market?: any): Trade;
32
32
  handleErrorMessage(client: Client, message: any): void;
33
33
  handleMessage(client: any, message: any): any;
34
34
  handleAuthenticate(client: Client, message: any): any;
@@ -1,5 +1,5 @@
1
1
  import kucoinRest from '../kucoin.js';
2
- import { Int, Str, Strings } from '../base/types.js';
2
+ import type { Int, Str, Strings, OrderBook, Order, Trade, Ticker, Tickers, OHLCV, Balances } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class kucoin extends kucoinRest {
5
5
  describe(): any;
@@ -7,16 +7,17 @@ export default class kucoin extends kucoinRest {
7
7
  negotiateHelper(privateChannel: any, params?: {}): Promise<string>;
8
8
  requestId(): any;
9
9
  subscribe(url: any, messageHash: any, subscriptionHash: any, params?: {}, subscription?: any): Promise<any>;
10
- watchTicker(symbol: string, params?: {}): Promise<any>;
11
- watchTickers(symbols?: Strings, params?: {}): Promise<any>;
10
+ subscribeMultiple(url: any, messageHashes: any, topic: any, subscriptionHashes: any, params?: {}, subscription?: any): Promise<any>;
11
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
12
+ watchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
12
13
  handleTicker(client: Client, message: any): void;
13
- watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
14
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
14
15
  handleOHLCV(client: Client, message: any): void;
15
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
16
- watchTradesForSymbols(symbols: string[], since?: Int, limit?: Int, params?: {}): Promise<any>;
16
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
17
+ watchTradesForSymbols(symbols: string[], since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
17
18
  handleTrade(client: Client, message: any): void;
18
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
19
- watchOrderBookForSymbols(symbols: string[], limit?: Int, params?: {}): Promise<any>;
19
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
20
+ watchOrderBookForSymbols(symbols: string[], limit?: Int, params?: {}): Promise<OrderBook>;
20
21
  handleOrderBook(client: Client, message: any): void;
21
22
  getCacheIndex(orderbook: any, cache: any): any;
22
23
  handleDelta(orderbook: any, delta: any): void;
@@ -24,14 +25,14 @@ export default class kucoin extends kucoinRest {
24
25
  handleOrderBookSubscription(client: Client, message: any, subscription: any): void;
25
26
  handleSubscriptionStatus(client: Client, message: any): void;
26
27
  handleSystemStatus(client: Client, message: any): any;
27
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
28
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
28
29
  parseWsOrderStatus(status: any): string;
29
- parseWsOrder(order: any, market?: any): import("../base/types.js").Order;
30
+ parseWsOrder(order: any, market?: any): Order;
30
31
  handleOrder(client: Client, message: any): void;
31
- watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
32
+ watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
32
33
  handleMyTrade(client: Client, message: any): void;
33
- parseWsTrade(trade: any, market?: any): import("../base/types.js").Trade;
34
- watchBalance(params?: {}): Promise<any>;
34
+ parseWsTrade(trade: any, market?: any): Trade;
35
+ watchBalance(params?: {}): Promise<Balances>;
35
36
  handleBalance(client: Client, message: any): void;
36
37
  handleSubject(client: Client, message: any): any;
37
38
  ping(client: any): {
@@ -124,6 +124,24 @@ export default class kucoin extends kucoinRest {
124
124
  }
125
125
  return await this.watch(url, messageHash, message, subscriptionHash, subscription);
126
126
  }
127
+ async subscribeMultiple(url, messageHashes, topic, subscriptionHashes, params = {}, subscription = undefined) {
128
+ const requestId = this.requestId().toString();
129
+ const request = {
130
+ 'id': requestId,
131
+ 'type': 'subscribe',
132
+ 'topic': topic,
133
+ 'response': true,
134
+ };
135
+ const message = this.extend(request, params);
136
+ const client = this.client(url);
137
+ for (let i = 0; i < subscriptionHashes.length; i++) {
138
+ const subscriptionHash = subscriptionHashes[i];
139
+ if (!(subscriptionHash in client.subscriptions)) {
140
+ client.subscriptions[requestId] = subscriptionHash;
141
+ }
142
+ }
143
+ return await this.watchMultiple(url, messageHashes, message, subscriptionHashes, subscription);
144
+ }
127
145
  async watchTicker(symbol, params = {}) {
128
146
  /**
129
147
  * @method
@@ -336,17 +354,7 @@ export default class kucoin extends kucoinRest {
336
354
  * @param {object} [params] extra parameters specific to the exchange API endpoint
337
355
  * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
338
356
  */
339
- await this.loadMarkets();
340
- const url = await this.negotiate(false);
341
- const market = this.market(symbol);
342
- symbol = market['symbol'];
343
- const topic = '/market/match:' + market['id'];
344
- const messageHash = 'trades:' + symbol;
345
- const trades = await this.subscribe(url, messageHash, topic, params);
346
- if (this.newUpdates) {
347
- limit = trades.getLimit(symbol, limit);
348
- }
349
- return this.filterBySinceLimit(trades, since, limit, 'timestamp', true);
357
+ return await this.watchTradesForSymbols([symbol], since, limit, params);
350
358
  }
351
359
  async watchTradesForSymbols(symbols, since = undefined, limit = undefined, params = {}) {
352
360
  /**
@@ -365,12 +373,18 @@ export default class kucoin extends kucoinRest {
365
373
  }
366
374
  await this.loadMarkets();
367
375
  symbols = this.marketSymbols(symbols);
368
- const url = await this.negotiate(false);
369
- symbols = this.marketSymbols(symbols);
370
376
  const marketIds = this.marketIds(symbols);
377
+ const url = await this.negotiate(false);
378
+ const messageHashes = [];
379
+ const subscriptionHashes = [];
371
380
  const topic = '/market/match:' + marketIds.join(',');
372
- const messageHash = 'multipleTrades::' + symbols.join(',');
373
- const trades = await this.subscribe(url, messageHash, topic, params);
381
+ for (let i = 0; i < symbols.length; i++) {
382
+ const symbol = symbols[i];
383
+ messageHashes.push('trades:' + symbol);
384
+ const marketId = marketIds[i];
385
+ subscriptionHashes.push('/market/match:' + marketId);
386
+ }
387
+ const trades = await this.subscribeMultiple(url, messageHashes, topic, subscriptionHashes, params);
374
388
  if (this.newUpdates) {
375
389
  const first = this.safeValue(trades, 0);
376
390
  const tradeSymbol = this.safeString(first, 'symbol');
@@ -410,8 +424,6 @@ export default class kucoin extends kucoinRest {
410
424
  }
411
425
  trades.append(trade);
412
426
  client.resolve(trades, messageHash);
413
- // watchMultipleTrades
414
- this.resolvePromiseIfMessagehashMatches(client, 'multipleTrades::', symbol, trades);
415
427
  }
416
428
  async watchOrderBook(symbol, limit = undefined, params = {}) {
417
429
  /**
@@ -438,24 +450,7 @@ export default class kucoin extends kucoinRest {
438
450
  // If the size=0, update the sequence and remove the price of which the
439
451
  // size is 0 out of level 2. Fr other cases, please update the price.
440
452
  //
441
- if (limit !== undefined) {
442
- if ((limit !== 20) && (limit !== 100)) {
443
- throw new ExchangeError(this.id + " watchOrderBook 'limit' argument must be undefined, 20 or 100");
444
- }
445
- }
446
- await this.loadMarkets();
447
- const url = await this.negotiate(false);
448
- const market = this.market(symbol);
449
- symbol = market['symbol'];
450
- const topic = '/market/level2:' + market['id'];
451
- const messageHash = 'orderbook:' + symbol;
452
- const subscription = {
453
- 'method': this.handleOrderBookSubscription,
454
- 'symbol': symbol,
455
- 'limit': limit,
456
- };
457
- const orderbook = await this.subscribe(url, messageHash, topic, params, subscription);
458
- return orderbook.limit();
453
+ return await this.watchOrderBookForSymbols([symbol], limit, params);
459
454
  }
460
455
  async watchOrderBookForSymbols(symbols, limit = undefined, params = {}) {
461
456
  /**
@@ -481,13 +476,20 @@ export default class kucoin extends kucoinRest {
481
476
  const marketIds = this.marketIds(symbols);
482
477
  const url = await this.negotiate(false);
483
478
  const topic = '/market/level2:' + marketIds.join(',');
484
- const messageHash = 'multipleOrderbook::' + symbols.join(',');
479
+ const messageHashes = [];
480
+ const subscriptionHashes = [];
481
+ for (let i = 0; i < symbols.length; i++) {
482
+ const symbol = symbols[i];
483
+ messageHashes.push('orderbook:' + symbol);
484
+ const marketId = marketIds[i];
485
+ subscriptionHashes.push('/market/level2:' + marketId);
486
+ }
485
487
  const subscription = {
486
488
  'method': this.handleOrderBookSubscription,
487
489
  'symbols': symbols,
488
490
  'limit': limit,
489
491
  };
490
- const orderbook = await this.subscribe(url, messageHash, topic, params, subscription);
492
+ const orderbook = await this.subscribeMultiple(url, messageHashes, topic, subscriptionHashes, params, subscription);
491
493
  return orderbook.limit();
492
494
  }
493
495
  handleOrderBook(client, message) {
@@ -545,8 +547,6 @@ export default class kucoin extends kucoinRest {
545
547
  }
546
548
  this.handleDelta(storedOrderBook, data);
547
549
  client.resolve(storedOrderBook, messageHash);
548
- // watchMultipleOrderBook
549
- this.resolvePromiseIfMessagehashMatches(client, 'multipleOrderbook::', symbol, storedOrderBook);
550
550
  }
551
551
  getCacheIndex(orderbook, cache) {
552
552
  const firstDelta = this.safeValue(cache, 0);
@@ -1,5 +1,5 @@
1
1
  import kucoinfuturesRest from '../kucoinfutures.js';
2
- import { Int, Str } from '../base/types.js';
2
+ import type { Int, Str, OrderBook, Order, Trade, Ticker, Balances, Position } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class kucoinfutures extends kucoinfuturesRest {
5
5
  describe(): any;
@@ -7,30 +7,31 @@ export default class kucoinfutures extends kucoinfuturesRest {
7
7
  negotiateHelper(privateChannel: any, params?: {}): Promise<string>;
8
8
  requestId(): any;
9
9
  subscribe(url: any, messageHash: any, subscriptionHash: any, subscription: any, params?: {}): Promise<any>;
10
- watchTicker(symbol: string, params?: {}): Promise<any>;
10
+ subscribeMultiple(url: any, messageHashes: any, topic: any, subscriptionHashes: any, subscription: any, params?: {}): Promise<any>;
11
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
11
12
  handleTicker(client: Client, message: any): any;
12
- watchPosition(symbol?: Str, params?: {}): Promise<any>;
13
+ watchPosition(symbol?: Str, params?: {}): Promise<Position>;
13
14
  getCurrentPosition(symbol: any): any;
14
15
  setPositionCache(client: Client, symbol: string): void;
15
16
  loadPositionSnapshot(client: any, messageHash: any, symbol: any): Promise<void>;
16
17
  handlePosition(client: Client, message: any): void;
17
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
18
- watchTradesForSymbols(symbols: string[], since?: Int, limit?: Int, params?: {}): Promise<any>;
18
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
19
+ watchTradesForSymbols(symbols: string[], since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
19
20
  handleTrade(client: Client, message: any): any;
20
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
21
- watchOrderBookForSymbols(symbols: string[], limit?: Int, params?: {}): Promise<any>;
21
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
22
+ watchOrderBookForSymbols(symbols: string[], limit?: Int, params?: {}): Promise<OrderBook>;
22
23
  handleDelta(orderbook: any, delta: any): void;
23
24
  handleDeltas(bookside: any, deltas: any): void;
24
25
  handleOrderBook(client: Client, message: any): void;
25
26
  getCacheIndex(orderbook: any, cache: any): any;
26
27
  handleOrderBookSubscription(client: Client, message: any, subscription: any): void;
27
- handleSubscriptionStatus(client: Client, message: any): any;
28
+ handleSubscriptionStatus(client: Client, message: any): void;
28
29
  handleSystemStatus(client: Client, message: any): any;
29
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
30
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
30
31
  parseWsOrderStatus(status: any): string;
31
- parseWsOrder(order: any, market?: any): import("../base/types.js").Order;
32
+ parseWsOrder(order: any, market?: any): Order;
32
33
  handleOrder(client: Client, message: any): void;
33
- watchBalance(params?: {}): Promise<any>;
34
+ watchBalance(params?: {}): Promise<Balances>;
34
35
  handleBalance(client: Client, message: any): void;
35
36
  handleBalanceSubscription(client: Client, message: any, subscription: any): void;
36
37
  fetchBalanceSnapshot(client: any, message: any): Promise<void>;
@@ -139,6 +139,26 @@ export default class kucoinfutures extends kucoinfuturesRest {
139
139
  }
140
140
  return await this.watch(url, messageHash, message, subscriptionHash, subscription);
141
141
  }
142
+ async subscribeMultiple(url, messageHashes, topic, subscriptionHashes, subscription, params = {}) {
143
+ const requestId = this.requestId().toString();
144
+ const request = {
145
+ 'id': requestId,
146
+ 'type': 'subscribe',
147
+ 'topic': topic,
148
+ 'response': true,
149
+ };
150
+ const message = this.extend(request, params);
151
+ const subscriptionRequest = {
152
+ 'id': requestId,
153
+ };
154
+ if (subscription === undefined) {
155
+ subscription = subscriptionRequest;
156
+ }
157
+ else {
158
+ subscription = this.extend(subscriptionRequest, subscription);
159
+ }
160
+ return await this.watchMultiple(url, messageHashes, message, subscriptionHashes, subscription);
161
+ }
142
162
  async watchTicker(symbol, params = {}) {
143
163
  /**
144
164
  * @method
@@ -373,17 +393,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
373
393
  * @param {object} [params] extra parameters specific to the exchange API endpoint
374
394
  * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
375
395
  */
376
- await this.loadMarkets();
377
- const url = await this.negotiate(false);
378
- const market = this.market(symbol);
379
- symbol = market['symbol'];
380
- const topic = '/contractMarket/execution:' + market['id'];
381
- const messageHash = 'trades:' + symbol;
382
- const trades = await this.subscribe(url, messageHash, topic, undefined, params);
383
- if (this.newUpdates) {
384
- limit = trades.getLimit(symbol, limit);
385
- }
386
- return this.filterBySinceLimit(trades, since, limit, 'timestamp', true);
396
+ return await this.watchTradesForSymbols([symbol], since, limit, params);
387
397
  }
388
398
  async watchTradesForSymbols(symbols, since = undefined, limit = undefined, params = {}) {
389
399
  /**
@@ -406,8 +416,15 @@ export default class kucoinfutures extends kucoinfuturesRest {
406
416
  symbols = this.marketSymbols(symbols);
407
417
  const marketIds = this.marketIds(symbols);
408
418
  const topic = '/contractMarket/execution:' + marketIds.join(',');
409
- const messageHash = 'multipleTrades::' + symbols.join(',');
410
- const trades = await this.subscribe(url, messageHash, topic, params);
419
+ const subscriptionHashes = [];
420
+ const messageHashes = [];
421
+ for (let i = 0; i < symbols.length; i++) {
422
+ const symbol = symbols[i];
423
+ const marketId = marketIds[i];
424
+ messageHashes.push('trades:' + symbol);
425
+ subscriptionHashes.push('/contractMarket/execution:' + marketId);
426
+ }
427
+ const trades = await this.subscribeMultiple(url, messageHashes, topic, subscriptionHashes, params);
411
428
  if (this.newUpdates) {
412
429
  const first = this.safeValue(trades, 0);
413
430
  const tradeSymbol = this.safeString(first, 'symbol');
@@ -448,7 +465,6 @@ export default class kucoinfutures extends kucoinfuturesRest {
448
465
  trades.append(trade);
449
466
  const messageHash = 'trades:' + symbol;
450
467
  client.resolve(trades, messageHash);
451
- this.resolvePromiseIfMessagehashMatches(client, 'multipleTrades::', symbol, trades);
452
468
  return message;
453
469
  }
454
470
  async watchOrderBook(symbol, limit = undefined, params = {}) {
@@ -468,24 +484,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
468
484
  * @param {object} [params] extra parameters specific to the exchange API endpoint
469
485
  * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
470
486
  */
471
- if (limit !== undefined) {
472
- if ((limit !== 20) && (limit !== 100)) {
473
- throw new ExchangeError(this.id + " watchOrderBook 'limit' argument must be undefined, 20 or 100");
474
- }
475
- }
476
- await this.loadMarkets();
477
- const url = await this.negotiate(false);
478
- const market = this.market(symbol);
479
- symbol = market['symbol'];
480
- const topic = '/contractMarket/level2:' + market['id'];
481
- const messageHash = 'orderbook:' + symbol;
482
- const subscription = {
483
- 'method': this.handleOrderBookSubscription,
484
- 'symbol': symbol,
485
- 'limit': limit,
486
- };
487
- const orderbook = await this.subscribe(url, messageHash, topic, subscription, params);
488
- return orderbook.limit();
487
+ return await this.watchOrderBookForSymbols([symbol], limit, params);
489
488
  }
490
489
  async watchOrderBookForSymbols(symbols, limit = undefined, params = {}) {
491
490
  /**
@@ -511,13 +510,20 @@ export default class kucoinfutures extends kucoinfuturesRest {
511
510
  const marketIds = this.marketIds(symbols);
512
511
  const url = await this.negotiate(false);
513
512
  const topic = '/contractMarket/level2:' + marketIds.join(',');
514
- const messageHash = 'multipleOrderbook::' + symbols.join(',');
515
513
  const subscription = {
516
514
  'method': this.handleOrderBookSubscription,
517
515
  'symbols': symbols,
518
516
  'limit': limit,
519
517
  };
520
- const orderbook = await this.subscribe(url, messageHash, topic, subscription, params);
518
+ const subscriptionHashes = [];
519
+ const messageHashes = [];
520
+ for (let i = 0; i < symbols.length; i++) {
521
+ const symbol = symbols[i];
522
+ const marketId = marketIds[i];
523
+ messageHashes.push('orderbook:' + symbol);
524
+ subscriptionHashes.push('/contractMarket/level2:' + marketId);
525
+ }
526
+ const orderbook = await this.subscribeMultiple(url, messageHashes, topic, subscriptionHashes, subscription, params);
521
527
  return orderbook.limit();
522
528
  }
523
529
  handleDelta(orderbook, delta) {
@@ -598,7 +604,6 @@ export default class kucoinfutures extends kucoinfuturesRest {
598
604
  }
599
605
  this.handleDelta(storedOrderBook, data);
600
606
  client.resolve(storedOrderBook, messageHash);
601
- this.resolvePromiseIfMessagehashMatches(client, 'multipleOrderbook::', symbol, storedOrderBook);
602
607
  }
603
608
  getCacheIndex(orderbook, cache) {
604
609
  const firstDelta = this.safeValue(cache, 0);
@@ -648,7 +653,6 @@ export default class kucoinfutures extends kucoinfuturesRest {
648
653
  if (method !== undefined) {
649
654
  method.call(this, client, message, subscription);
650
655
  }
651
- return message;
652
656
  }
653
657
  handleSystemStatus(client, message) {
654
658
  //
@@ -1,12 +1,12 @@
1
1
  import lunoRest from '../luno.js';
2
- import { Int, Trade } from '../base/types.js';
2
+ import type { Int, Trade, OrderBook } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class luno extends lunoRest {
5
5
  describe(): any;
6
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
6
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
7
7
  handleTrades(client: Client, message: any, subscription: any): void;
8
8
  parseTrade(trade: any, market?: any): Trade;
9
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
9
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
10
10
  handleOrderBook(client: Client, message: any, subscription: any): void;
11
11
  customParseOrderBook(orderbook: any, symbol: any, timestamp?: any, bidsKey?: string, asksKey?: string, priceKey?: string, amountKey?: string, thirdKey?: any): {
12
12
  symbol: any;
@@ -1,36 +1,36 @@
1
1
  import mexcRest from '../mexc.js';
2
- import { Int, OHLCV, Str } from '../base/types.js';
2
+ import type { Int, OHLCV, Str, OrderBook, Order, Trade, Ticker, Balances } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class mexc extends mexcRest {
5
5
  describe(): any;
6
- watchTicker(symbol: string, params?: {}): Promise<any>;
6
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
7
7
  handleTicker(client: Client, message: any): void;
8
- parseWsTicker(ticker: any, market?: any): import("../base/types.js").Ticker;
8
+ parseWsTicker(ticker: any, market?: any): Ticker;
9
9
  watchSpotPublic(channel: any, messageHash: any, params?: {}): Promise<any>;
10
10
  watchSpotPrivate(channel: any, messageHash: any, params?: {}): Promise<any>;
11
11
  watchSwapPublic(channel: any, messageHash: any, requestParams: any, params?: {}): Promise<any>;
12
12
  watchSwapPrivate(messageHash: any, params?: {}): Promise<any>;
13
- watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
13
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
14
14
  handleOHLCV(client: Client, message: any): void;
15
15
  parseWsOHLCV(ohlcv: any, market?: any): OHLCV;
16
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
16
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
17
17
  handleOrderBookSubscription(client: Client, message: any): void;
18
18
  getCacheIndex(orderbook: any, cache: any): any;
19
19
  handleOrderBook(client: Client, message: any): void;
20
20
  handleBooksideDelta(bookside: any, bidasks: any): void;
21
21
  handleDelta(orderbook: any, delta: any): void;
22
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
22
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
23
23
  handleTrades(client: Client, message: any): void;
24
- watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
24
+ watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
25
25
  handleMyTrade(client: Client, message: any, subscription?: any): void;
26
- parseWsTrade(trade: any, market?: any): import("../base/types.js").Trade;
27
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
26
+ parseWsTrade(trade: any, market?: any): Trade;
27
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
28
28
  handleOrder(client: Client, message: any): void;
29
- parseWsOrder(order: any, market?: any): import("../base/types.js").Order;
29
+ parseWsOrder(order: any, market?: any): Order;
30
30
  parseWsOrderStatus(status: any, market?: any): string;
31
31
  parseWsOrderType(type: any): string;
32
32
  parseWsTimeInForce(timeInForce: any): string;
33
- watchBalance(params?: {}): Promise<any>;
33
+ watchBalance(params?: {}): Promise<Balances>;
34
34
  handleBalance(client: Client, message: any): void;
35
35
  authenticate(subscriptionHash: any, params?: {}): Promise<string>;
36
36
  keepAliveListenKey(listenKey: any, params?: {}): Promise<void>;
@@ -1,16 +1,16 @@
1
1
  import ndaxRest from '../ndax.js';
2
- import { Int } from '../base/types.js';
2
+ import type { Int, OrderBook, Trade, Ticker, OHLCV } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class ndax extends ndaxRest {
5
5
  describe(): any;
6
6
  requestId(): any;
7
- watchTicker(symbol: string, params?: {}): Promise<any>;
7
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
8
8
  handleTicker(client: Client, message: any): void;
9
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
9
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
10
10
  handleTrades(client: Client, message: any): void;
11
- watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
11
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
12
12
  handleOHLCV(client: Client, message: any): void;
13
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
13
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
14
14
  handleOrderBook(client: Client, message: any): any;
15
15
  handleOrderBookSubscription(client: Client, message: any, subscription: any): void;
16
16
  handleSubscriptionStatus(client: Client, message: any): any;
@@ -1,24 +1,24 @@
1
1
  import okcoinRest from '../okcoin.js';
2
- import { Int, Str } from '../base/types.js';
2
+ import type { Int, Str, OrderBook, Order, Trade, Ticker, OHLCV, Balances } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class okcoin extends okcoinRest {
5
5
  describe(): any;
6
6
  subscribe(channel: any, symbol: any, params?: {}): Promise<any>;
7
- watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
8
- watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
7
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
8
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
9
9
  handleOrders(client: Client, message: any, subscription?: any): void;
10
- watchTicker(symbol: string, params?: {}): Promise<any>;
10
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
11
11
  handleTrade(client: Client, message: any): any;
12
12
  handleTicker(client: Client, message: any): any;
13
- watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
13
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
14
14
  handleOHLCV(client: Client, message: any): void;
15
- watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
15
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
16
16
  handleDelta(bookside: any, delta: any): void;
17
17
  handleDeltas(bookside: any, deltas: any): void;
18
18
  handleOrderBookMessage(client: Client, message: any, orderbook: any): any;
19
19
  handleOrderBook(client: Client, message: any): any;
20
20
  authenticate(params?: {}): Promise<any>;
21
- watchBalance(params?: {}): Promise<any>;
21
+ watchBalance(params?: {}): Promise<Balances>;
22
22
  subscribeToUserAccount(negotiation: any, params?: {}): Promise<any>;
23
23
  handleBalance(client: Client, message: any): void;
24
24
  handleSubscriptionStatus(client: Client, message: any): any;