binance 3.0.0-beta.3 → 3.0.0-beta.5

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 (78) hide show
  1. package/README.md +5 -5
  2. package/index.js +1 -1
  3. package/lib/coinm-client.d.ts +46 -16
  4. package/lib/coinm-client.js +4 -4
  5. package/lib/coinm-client.js.map +1 -1
  6. package/lib/index.d.ts +2 -0
  7. package/lib/index.js +2 -0
  8. package/lib/index.js.map +1 -1
  9. package/lib/main-client.d.ts +64 -15
  10. package/lib/main-client.js +41 -13
  11. package/lib/main-client.js.map +1 -1
  12. package/lib/portfolio-client.js.map +1 -1
  13. package/lib/types/coin.d.ts +1 -0
  14. package/lib/types/futures.d.ts +5 -4
  15. package/lib/types/futures.js.map +1 -1
  16. package/lib/types/shared.d.ts +7 -13
  17. package/lib/types/spot.d.ts +126 -8
  18. package/lib/types/spot.js.map +1 -1
  19. package/lib/types/websockets/ws-api-requests.d.ts +429 -2
  20. package/lib/types/websockets/ws-api-responses.d.ts +564 -0
  21. package/lib/types/websockets/ws-api.d.ts +149 -55
  22. package/lib/types/websockets/ws-api.js +46 -3
  23. package/lib/types/websockets/ws-api.js.map +1 -1
  24. package/lib/types/websockets/ws-events-formatted.d.ts +2 -2
  25. package/lib/types/websockets/ws-events-raw.d.ts +2 -2
  26. package/lib/types/websockets/ws-general.d.ts +4 -19
  27. package/lib/usdm-client.d.ts +41 -18
  28. package/lib/usdm-client.js +5 -8
  29. package/lib/usdm-client.js.map +1 -1
  30. package/lib/util/BaseRestClient.js +4 -1
  31. package/lib/util/BaseRestClient.js.map +1 -1
  32. package/lib/util/BaseWSClient.d.ts +14 -3
  33. package/lib/util/BaseWSClient.js +61 -26
  34. package/lib/util/BaseWSClient.js.map +1 -1
  35. package/lib/util/beautifier-maps.d.ts +19 -0
  36. package/lib/util/beautifier-maps.js +28 -0
  37. package/lib/util/beautifier-maps.js.map +1 -1
  38. package/lib/util/beautifier.js +1 -1
  39. package/lib/util/beautifier.js.map +1 -1
  40. package/lib/util/browser-support.d.ts +1 -1
  41. package/lib/util/browser-support.js +1 -41
  42. package/lib/util/browser-support.js.map +1 -1
  43. package/lib/util/node-support.js +7 -5
  44. package/lib/util/node-support.js.map +1 -1
  45. package/lib/util/requestUtils.d.ts +3 -2
  46. package/lib/util/requestUtils.js +46 -23
  47. package/lib/util/requestUtils.js.map +1 -1
  48. package/lib/util/rounding.d.ts +8 -0
  49. package/lib/util/rounding.js +41 -0
  50. package/lib/util/rounding.js.map +1 -0
  51. package/lib/util/typeGuards.d.ts +4 -2
  52. package/lib/util/typeGuards.js +33 -0
  53. package/lib/util/typeGuards.js.map +1 -1
  54. package/lib/util/webCryptoAPI.js +20 -45
  55. package/lib/util/webCryptoAPI.js.map +1 -1
  56. package/lib/util/websockets/WsStore.js +7 -2
  57. package/lib/util/websockets/WsStore.js.map +1 -1
  58. package/lib/util/websockets/enum.d.ts +11 -0
  59. package/lib/util/websockets/enum.js +24 -0
  60. package/lib/util/websockets/enum.js.map +1 -0
  61. package/lib/util/websockets/rest-client-cache.d.ts +3 -3
  62. package/lib/util/websockets/rest-client-cache.js +9 -9
  63. package/lib/util/websockets/rest-client-cache.js.map +1 -1
  64. package/lib/util/websockets/user-data-stream-manager.js +7 -8
  65. package/lib/util/websockets/user-data-stream-manager.js.map +1 -1
  66. package/lib/util/websockets/websocket-util.d.ts +10 -5
  67. package/lib/util/websockets/websocket-util.js +66 -42
  68. package/lib/util/websockets/websocket-util.js.map +1 -1
  69. package/lib/websocket-api-client.d.ts +396 -0
  70. package/lib/websocket-api-client.js +636 -0
  71. package/lib/websocket-api-client.js.map +1 -0
  72. package/lib/websocket-client-legacy.d.ts +2 -2
  73. package/lib/websocket-client-legacy.js +7 -7
  74. package/lib/websocket-client-legacy.js.map +1 -1
  75. package/lib/websocket-client.d.ts +23 -11
  76. package/lib/websocket-client.js +101 -120
  77. package/lib/websocket-client.js.map +1 -1
  78. package/package.json +2 -2
@@ -1,9 +1,8 @@
1
1
  import { WS_KEY_MAP, WsKey } from '../../util/websockets/websocket-util';
2
- import { FuturesAccountBalance, FuturesAccountInformation, FuturesExchangeInfo, NewFuturesOrderParams } from '../futures';
3
- import { numberInString } from '../shared';
2
+ import { FuturesExchangeInfo, NewFuturesOrderParams } from '../futures';
4
3
  import { ExchangeInfo, NewSpotOrderParams, OrderResponse } from '../spot';
5
- import { WSAPIRecvWindowTimestamp } from './ws-api-requests';
6
- import { WsAPISessionStatus } from './ws-api-responses';
4
+ import { AccountCommissionWSAPIRequest, AccountStatusWSAPIRequest, AllOrderListsWSAPIRequest, AllOrdersWSAPIRequest, AvgPriceWSAPIRequest, DepthWSAPIRequest, ExchangeInfoWSAPIRequest, FuturesDepthWSAPIRequest, FuturesOrderCancelWSAPIRequest, FuturesOrderModifyWSAPIRequest, FuturesOrderStatusWSAPIRequest, FuturesTickerBookWSAPIRequest, FuturesTickerPriceWSAPIRequest, KlinesWSAPIRequest, MyAllocationsWSAPIRequest, MyPreventedMatchesWSAPIRequest, MyTradesWSAPIRequest, OpenOrdersCancelAllWSAPIRequest, OpenOrdersStatusWSAPIRequest, OrderCancelReplaceWSAPIRequest, OrderCancelWSAPIRequest, OrderListCancelWSAPIRequest, OrderListPlaceOCOWSAPIRequest, OrderListPlaceOTOCOWSAPIRequest, OrderListPlaceOTOWSAPIRequest, OrderListPlaceWSAPIRequest, OrderListStatusWSAPIRequest, OrderStatusWSAPIRequest, OrderTestWSAPIRequest, SessionLogonWSAPIRequest, SOROrderPlaceWSAPIRequest, SOROrderTestWSAPIRequest, Ticker24hrWSAPIRequest, TickerBookWSAPIRequest, TickerPriceWSAPIRequest, TickerTradingDayWSAPIRequest, TickerWSAPIRequest, TradesAggregateWSAPIRequest, TradesHistoricalWSAPIRequest, TradesRecentWSAPIRequest, WSAPIRecvWindowTimestamp } from './ws-api-requests';
5
+ import { AccountCommissionWSAPIResponse, AccountStatusWSAPIResponse, AggregateTradeWSAPIResponse, AllocationWSAPIResponse, AvgPriceWSAPIResponse, DepthWSAPIResponse, FuturesAccountBalanceItemWSAPIResponse, FuturesAccountStatusWSAPIResponse, FuturesDepthWSAPIResponse, FuturesOrderWSAPIResponse, FuturesPositionV2WSAPIResponse, FuturesPositionWSAPIResponse, FuturesTickerBookWSAPIResponse, FuturesTickerPriceWSAPIResponse, KlineWSAPIResponse, OrderCancelReplaceWSAPIResponse, OrderCancelWSAPIResponse, OrderListCancelWSAPIResponse, OrderListPlaceWSAPIResponse, OrderListStatusWSAPIResponse, OrderTestWithCommissionWSAPIResponse, OrderTestWSAPIResponse, OrderWSAPIResponse, PreventedMatchWSAPIResponse, RateLimitWSAPIResponse, SOROrderPlaceWSAPIResponse, SOROrderTestWithCommissionWSAPIResponse, SOROrderTestWSAPIResponse, TickerBookWSAPIResponse, TickerFullWSAPIResponse, TickerMiniWSAPIResponse, TickerPriceWSAPIResponse, TimeWSAPIResponse, TradeWSAPIResponse, WsAPISessionStatus } from './ws-api-responses';
7
6
  /**
8
7
  * Standard WS commands (for consumers)
9
8
  */
@@ -11,14 +10,18 @@ export type WsOperation = 'SUBSCRIBE' | 'UNSUBSCRIBE' | 'LIST_SUBSCRIPTIONS' | '
11
10
  /**
12
11
  * WS API commands (for sending requests via WS)
13
12
  */
14
- export declare const WS_API_Operations: readonly ["session.logon", "session.status", "session.logout", "ping", "time", "exchangeInfo", "depth", "v2/account.balance", "account.balance", "v2/account.status", "account.status", "order.place", "orderList.place", "sor.order.place"];
13
+ export declare const WS_API_Operations: readonly ["session.logon", "session.status", "session.logout", "ping", "time", "exchangeInfo", "depth", "trades.recent", "trades.historical", "trades.aggregate", "klines", "uiKlines", "avgPrice", "ticker.24hr", "ticker.tradingDay", "ticker", "ticker.price", "ticker.book", "account.status", "account.commission", "account.rateLimits.orders", "allOrders", "allOrderLists", "myTrades", "myPreventedMatches", "myAllocations", "v2/account.balance", "account.balance", "v2/account.status", "account.position", "v2/account.position", "order.place", "order.test", "order.status", "order.cancel", "order.cancelReplace", "order.modify", "openOrders.status", "openOrders.cancelAll", "orderList.place", "orderList.place.oco", "orderList.place.oto", "orderList.place.otoco", "orderList.status", "orderList.cancel", "openOrderLists.status", "sor.order.place", "sor.order.test", "userDataStream.start", "userDataStream.ping", "userDataStream.stop", "userDataStream.subscribe", "userDataStream.unsubscribe"];
14
+ export interface WSAPIUserDataListenKeyRequest {
15
+ apiKey: string;
16
+ listenKey: string;
17
+ }
15
18
  export type WsAPIOperation = (typeof WS_API_Operations)[number];
16
19
  export interface WsRequestOperationBinance<TWSTopic extends string, TWSParams extends object = any> {
17
20
  method: WsOperation | WsAPIOperation;
18
21
  params?: (TWSTopic | string | number)[] | TWSParams;
19
22
  id: number;
20
23
  }
21
- export interface WSAPIResponse<TResponseData extends object = object, TOperation extends WsAPIOperation = WsAPIOperation> {
24
+ export interface WSAPIResponse<TResponseData extends object = object> {
22
25
  /** Auto-generated */
23
26
  id: string;
24
27
  status: number;
@@ -59,6 +62,8 @@ export interface WsAPIWsKeyTopicMap {
59
62
  [WS_KEY_MAP.mainWSAPITestnet]: WsAPIOperation;
60
63
  [WS_KEY_MAP.usdmWSAPI]: WsAPIOperation;
61
64
  [WS_KEY_MAP.usdmWSAPITestnet]: WsAPIOperation;
65
+ [WS_KEY_MAP.coinmWSAPI]: WsAPIOperation;
66
+ [WS_KEY_MAP.coinmWSAPITestnet]: WsAPIOperation;
62
67
  }
63
68
  export type WsAPIFuturesWsKey = typeof WS_KEY_MAP.usdmWSAPI | typeof WS_KEY_MAP.usdmWSAPITestnet;
64
69
  /**
@@ -79,11 +84,7 @@ export interface WsAPITopicRequestParamMap<TWSKey = WsKey> {
79
84
  * Authentication commands & parameters:
80
85
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/authentication-requests
81
86
  */
82
- 'session.logon': {
83
- apiKey: string;
84
- signature: string;
85
- timestamp: number;
86
- };
87
+ 'session.logon': SessionLogonWSAPIRequest;
87
88
  'session.status': void;
88
89
  'session.logout': void;
89
90
  /**
@@ -92,48 +93,100 @@ export interface WsAPITopicRequestParamMap<TWSKey = WsKey> {
92
93
  */
93
94
  ping: void;
94
95
  time: void;
95
- exchangeInfo: void | {
96
- symbol?: string;
97
- symbols?: string[];
98
- permissions?: string[];
99
- showPermissionSets?: boolean;
100
- symbolStatus?: string;
101
- };
96
+ exchangeInfo: void | ExchangeInfoWSAPIRequest;
102
97
  /**
103
98
  * Market data requests & parameters:
99
+ * - Spot:
104
100
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/market-data-requests
101
+ * - Futures:
102
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/market-data/websocket-api
105
103
  */
106
- depth: {
107
- symbol: string;
108
- limit: number;
109
- };
104
+ depth: TWSKey extends WsAPIFuturesWsKey ? FuturesDepthWSAPIRequest : DepthWSAPIRequest;
105
+ 'trades.recent': TradesRecentWSAPIRequest;
106
+ 'trades.historical': TradesHistoricalWSAPIRequest;
107
+ 'trades.aggregate': TradesAggregateWSAPIRequest;
108
+ klines: KlinesWSAPIRequest;
109
+ uiKlines: KlinesWSAPIRequest;
110
+ avgPrice: AvgPriceWSAPIRequest;
111
+ 'ticker.24hr': void | Ticker24hrWSAPIRequest;
112
+ 'ticker.tradingDay': TickerTradingDayWSAPIRequest;
113
+ ticker: TickerWSAPIRequest;
114
+ 'ticker.price': void | TWSKey extends WsAPIFuturesWsKey ? FuturesTickerPriceWSAPIRequest | undefined : TickerPriceWSAPIRequest | undefined;
115
+ 'ticker.book': void | TWSKey extends WsAPIFuturesWsKey ? FuturesTickerBookWSAPIRequest | undefined : TickerBookWSAPIRequest | undefined;
110
116
  /**
111
117
  * Account requests & parameters:
112
118
  * - Spot:
113
119
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/account-requests
114
- *
115
120
  * - Futures:
116
121
  * https://developers.binance.com/docs/derivatives/usds-margined-futures/account/websocket-api
117
122
  */
123
+ 'account.status': void | TWSKey extends WsAPIFuturesWsKey ? WSAPIRecvWindowTimestamp : AccountStatusWSAPIRequest;
124
+ 'account.rateLimits.orders': void | WSAPIRecvWindowTimestamp;
125
+ allOrders: AllOrdersWSAPIRequest;
126
+ allOrderLists: void | AllOrderListsWSAPIRequest;
127
+ myTrades: MyTradesWSAPIRequest;
128
+ myPreventedMatches: MyPreventedMatchesWSAPIRequest;
129
+ myAllocations: MyAllocationsWSAPIRequest;
130
+ 'account.commission': AccountCommissionWSAPIRequest;
118
131
  /**
119
- * Spot:
120
- */
121
- /**
122
- * Futures:
132
+ * Futures account requests & parameters:
133
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/account/websocket-api
123
134
  */
124
- 'v2/account.balance': WSAPIRecvWindowTimestamp;
135
+ 'account.position': WSAPIRecvWindowTimestamp;
136
+ 'v2/account.position': WSAPIRecvWindowTimestamp;
125
137
  'account.balance': WSAPIRecvWindowTimestamp;
138
+ 'v2/account.balance': WSAPIRecvWindowTimestamp;
126
139
  'v2/account.status': WSAPIRecvWindowTimestamp;
127
- 'account.status': WSAPIRecvWindowTimestamp;
128
140
  /**
129
141
  * Trading requests & parameters:
142
+ * - Spot:
130
143
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/trading-requests
144
+ * - Futures:
145
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/trading/websocket-api
131
146
  */
132
147
  'order.place': (TWSKey extends WsAPIFuturesWsKey ? NewFuturesOrderParams : NewSpotOrderParams) & {
133
148
  timestamp?: number;
134
149
  };
135
- 'orderList.place': any;
136
- 'sor.order.place': any;
150
+ 'order.test': OrderTestWSAPIRequest;
151
+ 'order.status': TWSKey extends WsAPIFuturesWsKey ? FuturesOrderStatusWSAPIRequest : OrderStatusWSAPIRequest;
152
+ 'order.cancel': TWSKey extends WsAPIFuturesWsKey ? FuturesOrderCancelWSAPIRequest : OrderCancelWSAPIRequest;
153
+ 'order.modify': FuturesOrderModifyWSAPIRequest;
154
+ 'order.cancelReplace': OrderCancelReplaceWSAPIRequest;
155
+ 'openOrders.status': OpenOrdersStatusWSAPIRequest;
156
+ 'openOrders.cancelAll': OpenOrdersCancelAllWSAPIRequest;
157
+ /**
158
+ * Order list requests & parameters:
159
+ */
160
+ 'orderList.place': OrderListPlaceWSAPIRequest;
161
+ 'orderList.place.oco': OrderListPlaceOCOWSAPIRequest;
162
+ 'orderList.place.oto': OrderListPlaceOTOWSAPIRequest;
163
+ 'orderList.place.otoco': OrderListPlaceOTOCOWSAPIRequest;
164
+ 'orderList.status': OrderListStatusWSAPIRequest;
165
+ 'orderList.cancel': OrderListCancelWSAPIRequest;
166
+ 'openOrderLists.status': WSAPIRecvWindowTimestamp;
167
+ /**
168
+ * SOR requests & parameters:
169
+ */
170
+ 'sor.order.place': SOROrderPlaceWSAPIRequest;
171
+ 'sor.order.test': SOROrderTestWSAPIRequest;
172
+ /**
173
+ * User data stream:
174
+ *
175
+ * - Spot:
176
+ * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/user-data-stream-requests
177
+ *
178
+ * - Futures:
179
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/account/websocket-api
180
+ *
181
+ * Note: for the user data stream, use the subscribe*UserDataStream() methods from the WS Client.
182
+ */
183
+ 'userDataStream.start': {
184
+ apiKey: string;
185
+ };
186
+ 'userDataStream.ping': WSAPIUserDataListenKeyRequest;
187
+ 'userDataStream.stop': WSAPIUserDataListenKeyRequest;
188
+ 'userDataStream.subscribe': void;
189
+ 'userDataStream.unsubscribe': void;
137
190
  }
138
191
  /**
139
192
  * Response structure expected for each operation
@@ -160,43 +213,84 @@ export interface WsAPIOperationResponseMap {
160
213
  * General responses:
161
214
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/general-requests
162
215
  */
163
- ping: {};
164
- time: WSAPIResponse<{
165
- serverTime: number;
166
- }>;
216
+ ping: unknown;
217
+ time: WSAPIResponse<TimeWSAPIResponse>;
167
218
  exchangeInfo: WSAPIResponse<FuturesExchangeInfo | ExchangeInfo>;
168
219
  /**
169
220
  * Market data responses
221
+ * - Spot:
170
222
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/market-data-requests
223
+ * - Futures:
224
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/market-data/websocket-api
171
225
  */
172
- depth: WSAPIResponse<{
173
- lastUpdateId: number;
174
- bids: [numberInString, numberInString][];
175
- asks: [numberInString, numberInString][];
176
- }>;
226
+ depth: WSAPIResponse<DepthWSAPIResponse | FuturesDepthWSAPIResponse>;
227
+ 'trades.recent': WSAPIResponse<TradeWSAPIResponse[]>;
228
+ 'trades.historical': WSAPIResponse<TradeWSAPIResponse[]>;
229
+ 'trades.aggregate': WSAPIResponse<AggregateTradeWSAPIResponse[]>;
230
+ klines: WSAPIResponse<KlineWSAPIResponse[]>;
231
+ uiKlines: WSAPIResponse<KlineWSAPIResponse[]>;
232
+ avgPrice: WSAPIResponse<AvgPriceWSAPIResponse>;
233
+ 'ticker.24hr': WSAPIResponse<TickerFullWSAPIResponse | TickerMiniWSAPIResponse | TickerFullWSAPIResponse[] | TickerMiniWSAPIResponse[]>;
234
+ 'ticker.tradingDay': WSAPIResponse<TickerFullWSAPIResponse | TickerMiniWSAPIResponse | TickerFullWSAPIResponse[] | TickerMiniWSAPIResponse[]>;
235
+ ticker: WSAPIResponse<TickerFullWSAPIResponse | TickerMiniWSAPIResponse | TickerFullWSAPIResponse[] | TickerMiniWSAPIResponse[]>;
236
+ 'ticker.price': WSAPIResponse<TickerPriceWSAPIResponse | TickerPriceWSAPIResponse[] | FuturesTickerPriceWSAPIResponse | FuturesTickerPriceWSAPIResponse[]>;
237
+ 'ticker.book': WSAPIResponse<TickerBookWSAPIResponse | TickerBookWSAPIResponse[] | FuturesTickerBookWSAPIResponse | FuturesTickerBookWSAPIResponse[]>;
177
238
  /**
178
- * Account requests & parameters:
179
- * - Spot:
239
+ * Account responses:
180
240
  * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/account-requests
181
- *
182
- * - Futures:
241
+ */
242
+ 'account.status': WSAPIResponse<AccountStatusWSAPIResponse | FuturesAccountStatusWSAPIResponse>;
243
+ 'account.commission': WSAPIResponse<AccountCommissionWSAPIResponse>;
244
+ 'account.rateLimits.orders': WSAPIResponse<RateLimitWSAPIResponse[]>;
245
+ allOrders: WSAPIResponse<OrderWSAPIResponse[]>;
246
+ allOrderLists: WSAPIResponse<OrderListStatusWSAPIResponse[]>;
247
+ myTrades: WSAPIResponse<TradeWSAPIResponse[]>;
248
+ myPreventedMatches: WSAPIResponse<PreventedMatchWSAPIResponse[]>;
249
+ myAllocations: WSAPIResponse<AllocationWSAPIResponse[]>;
250
+ /**
251
+ * Futures account responses:
183
252
  * https://developers.binance.com/docs/derivatives/usds-margined-futures/account/websocket-api
184
253
  */
254
+ 'account.position': WSAPIResponse<FuturesPositionWSAPIResponse[]>;
255
+ 'v2/account.position': WSAPIResponse<FuturesPositionV2WSAPIResponse[]>;
256
+ 'account.balance': WSAPIResponse<FuturesAccountBalanceItemWSAPIResponse[]>;
257
+ 'v2/account.balance': WSAPIResponse<FuturesAccountBalanceItemWSAPIResponse[]>;
258
+ 'v2/account.status': WSAPIResponse<FuturesAccountStatusWSAPIResponse>;
185
259
  /**
186
- * Spot:
260
+ * Trading responses
261
+ * - Spot:
262
+ * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/trading-requests
263
+ * - Futures:
264
+ * https://developers.binance.com/docs/derivatives/usds-margined-futures/trading/websocket-api
187
265
  */
266
+ 'order.place': WSAPIResponse<OrderResponse | FuturesOrderWSAPIResponse>;
267
+ 'order.test': WSAPIResponse<OrderTestWSAPIResponse | OrderTestWithCommissionWSAPIResponse>;
268
+ 'order.status': WSAPIResponse<OrderWSAPIResponse | FuturesOrderWSAPIResponse>;
269
+ 'order.cancel': WSAPIResponse<OrderCancelWSAPIResponse | FuturesOrderWSAPIResponse>;
270
+ 'order.modify': WSAPIResponse<FuturesOrderWSAPIResponse>;
271
+ 'order.cancelReplace': WSAPIResponse<OrderCancelReplaceWSAPIResponse>;
272
+ 'openOrders.status': WSAPIResponse<OrderWSAPIResponse[] | FuturesOrderWSAPIResponse[]>;
273
+ 'openOrders.cancelAll': WSAPIResponse<(OrderCancelWSAPIResponse | OrderListCancelWSAPIResponse)[]>;
188
274
  /**
189
- * Futures:
275
+ * Order list responses
190
276
  */
191
- 'v2/account.balance': WSAPIResponse<FuturesAccountBalance>;
192
- 'account.balance': WSAPIResponse<FuturesAccountBalance>;
193
- 'v2/account.status': WSAPIResponse<FuturesAccountInformation>;
194
- 'account.status': WSAPIResponse<FuturesAccountInformation>;
277
+ 'orderList.place': WSAPIResponse<OrderListPlaceWSAPIResponse>;
278
+ 'orderList.place.oco': WSAPIResponse<OrderListPlaceWSAPIResponse>;
279
+ 'orderList.place.oto': WSAPIResponse<OrderListPlaceWSAPIResponse>;
280
+ 'orderList.place.otoco': WSAPIResponse<OrderListPlaceWSAPIResponse>;
281
+ 'orderList.status': WSAPIResponse<OrderListStatusWSAPIResponse>;
282
+ 'orderList.cancel': WSAPIResponse<OrderListCancelWSAPIResponse>;
283
+ 'openOrderLists.status': WSAPIResponse<OrderListStatusWSAPIResponse[]>;
195
284
  /**
196
- * Trading responses
197
- * https://developers.binance.com/docs/binance-spot-api-docs/web-socket-api/trading-requests
285
+ * SOR responses
198
286
  */
199
- 'order.place': WSAPIResponse<OrderResponse>;
200
- 'orderList.place': WSAPIResponse<any>;
201
- 'sor.order.place': WSAPIResponse<any>;
287
+ 'sor.order.place': WSAPIResponse<SOROrderPlaceWSAPIResponse>;
288
+ 'sor.order.test': WSAPIResponse<SOROrderTestWSAPIResponse | SOROrderTestWithCommissionWSAPIResponse>;
289
+ 'userDataStream.start': WSAPIResponse<{
290
+ listenKey: string;
291
+ }>;
292
+ 'userDataStream.ping': WSAPIResponse<object>;
293
+ 'userDataStream.stop': WSAPIResponse<object>;
294
+ 'userDataStream.subscribe': WSAPIResponse<object>;
295
+ 'userDataStream.unsubscribe': WSAPIResponse<object>;
202
296
  }
@@ -13,17 +13,60 @@ exports.WS_API_Operations = [
13
13
  'ping',
14
14
  'time',
15
15
  'exchangeInfo',
16
- //// Market data commands //TODO:
16
+ //// Market data commands
17
17
  'depth',
18
+ 'trades.recent',
19
+ 'trades.historical',
20
+ 'trades.aggregate',
21
+ 'klines',
22
+ 'uiKlines',
23
+ 'avgPrice',
24
+ 'ticker.24hr',
25
+ 'ticker.tradingDay',
26
+ 'ticker',
27
+ 'ticker.price',
28
+ 'ticker.book',
18
29
  //// Account commands
30
+ // Spot
31
+ 'account.status',
32
+ 'account.commission',
33
+ 'account.rateLimits.orders',
34
+ 'allOrders',
35
+ 'allOrderLists',
36
+ 'myTrades',
37
+ 'myPreventedMatches',
38
+ 'myAllocations',
19
39
  // Futures
20
40
  'v2/account.balance',
21
41
  'account.balance',
22
42
  'v2/account.status',
23
- 'account.status',
24
- //// Trading commands // TODO:
43
+ 'account.position',
44
+ 'v2/account.position',
45
+ //// Trading commands
25
46
  'order.place',
47
+ 'order.test',
48
+ 'order.status',
49
+ 'order.cancel',
50
+ 'order.cancelReplace',
51
+ 'order.modify',
52
+ 'openOrders.status',
53
+ 'openOrders.cancelAll',
54
+ // Order list commands
26
55
  'orderList.place',
56
+ 'orderList.place.oco',
57
+ 'orderList.place.oto',
58
+ 'orderList.place.otoco',
59
+ 'orderList.status',
60
+ 'orderList.cancel',
61
+ 'openOrderLists.status',
62
+ // SOR commands
27
63
  'sor.order.place',
64
+ 'sor.order.test',
65
+ // user data stream
66
+ 'userDataStream.start',
67
+ 'userDataStream.ping',
68
+ 'userDataStream.stop',
69
+ 'userDataStream.subscribe',
70
+ 'userDataStream.unsubscribe',
28
71
  ];
29
72
  //# sourceMappingURL=ws-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ws-api.js","sourceRoot":"","sources":["../../../src/types/websockets/ws-api.ts"],"names":[],"mappings":";;;AAAA,yEAAyE;AA2BzE;;GAEG;AACU,QAAA,iBAAiB,GAAG;IAC/B,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,qBAAqB;IACrB,MAAM;IACN,MAAM;IACN,cAAc;IACd,iCAAiC;IACjC,OAAO;IACP,qBAAqB;IACrB,UAAU;IACV,oBAAoB;IACpB,iBAAiB;IACjB,mBAAmB;IACnB,gBAAgB;IAChB,8BAA8B;IAC9B,aAAa;IACb,iBAAiB;IACjB,iBAAiB;CACT,CAAC"}
1
+ {"version":3,"file":"ws-api.js","sourceRoot":"","sources":["../../../src/types/websockets/ws-api.ts"],"names":[],"mappings":";;;AAAA,yEAAyE;AA8FzE;;GAEG;AACU,QAAA,iBAAiB,GAAG;IAC/B,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,qBAAqB;IACrB,MAAM;IACN,MAAM;IACN,cAAc;IACd,yBAAyB;IACzB,OAAO;IACP,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,QAAQ;IACR,UAAU;IACV,UAAU;IACV,aAAa;IACb,mBAAmB;IACnB,QAAQ;IACR,cAAc;IACd,aAAa;IACb,qBAAqB;IACrB,OAAO;IACP,gBAAgB;IAChB,oBAAoB;IACpB,2BAA2B;IAC3B,WAAW;IACX,eAAe;IACf,UAAU;IACV,oBAAoB;IACpB,eAAe;IACf,UAAU;IACV,oBAAoB;IACpB,iBAAiB;IACjB,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;IACrB,qBAAqB;IACrB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,cAAc;IACd,qBAAqB;IACrB,cAAc;IACd,mBAAmB;IACnB,sBAAsB;IACtB,sBAAsB;IACtB,iBAAiB;IACjB,qBAAqB;IACrB,qBAAqB;IACrB,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,uBAAuB;IACvB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,sBAAsB;IACtB,qBAAqB;IACrB,qBAAqB;IACrB,0BAA0B;IAC1B,4BAA4B;CACpB,CAAC"}
@@ -1,5 +1,5 @@
1
- import { FuturesContractType, PositionSide, MarginType, FuturesOrderType, WorkingType } from '../futures';
2
- import { KlineInterval, numberInString, OrderBookRowFormatted, OrderSide, OrderType, OrderTimeInForce, OrderExecutionType, OrderStatus, SelfTradePreventionMode, OCOStatus, OCOOrderStatus } from '../shared';
1
+ import { FuturesContractType, FuturesOrderType, MarginType, PositionSide, WorkingType } from '../futures';
2
+ import { KlineInterval, numberInString, OCOOrderStatus, OCOStatus, OrderBookRowFormatted, OrderExecutionType, OrderSide, OrderStatus, OrderTimeInForce, OrderType, SelfTradePreventionMode } from '../shared';
3
3
  import { AccountUpdateEventType } from './ws-events-raw';
4
4
  import { WsSharedBase } from './ws-general';
5
5
  export interface WsMessageKlineFormatted extends WsSharedBase {
@@ -1,5 +1,5 @@
1
- import { PositionSide, MarginType, FuturesOrderType, WorkingType } from '../futures';
2
- import { KlineInterval, numberInString, OrderBookRow, OrderSide, OrderType, OrderTimeInForce, OrderExecutionType, OrderStatus, SelfTradePreventionMode, OCOStatus, OCOOrderStatus } from '../shared';
1
+ import { FuturesOrderType, MarginType, PositionSide, WorkingType } from '../futures';
2
+ import { KlineInterval, numberInString, OCOOrderStatus, OCOStatus, OrderBookRow, OrderExecutionType, OrderSide, OrderStatus, OrderTimeInForce, OrderType, SelfTradePreventionMode } from '../shared';
3
3
  import { WsSharedBase } from './ws-general';
4
4
  export interface WsMessageKlineRaw extends WsSharedBase {
5
5
  e: 'kline';
@@ -32,7 +32,6 @@ export type WsPrivateUSDTPerpTopic = 'position' | 'execution' | 'order' | 'stop_
32
32
  export type WsPrivateSpotTopic = 'outboundAccountInfo' | 'executionReport' | 'ticketInfo';
33
33
  export type WsPrivateTopic = WsPrivateInverseTopic | WsPrivateUSDTPerpTopic | WsPrivateSpotTopic | string;
34
34
  export type WsTopic = WsPublicTopics | WsPrivateTopic;
35
- /** This is used to differentiate product groups on a connection */
36
35
  export interface WSClientConfigurableOptions {
37
36
  /** Your API key */
38
37
  api_key?: string;
@@ -40,20 +39,13 @@ export interface WSClientConfigurableOptions {
40
39
  api_secret?: string;
41
40
  beautify?: boolean;
42
41
  /**
43
- * Set to `true` to connect to Bybit's testnet environment.
42
+ * Set to `true` to connect to Binance's testnet environment.
44
43
  *
45
44
  * Notes:
46
- *
47
- * - If demo trading, `testnet` should be set to false!
48
- * - If testing a strategy, use demo trading instead. Testnet market data is very different from real market conditions.
49
- */
50
- testnet?: boolean;
51
- /**
52
- * Set to `true` to connect to Bybit's V5 demo trading: https://bybit-exchange.github.io/docs/v5/demo
53
- *
54
- * Only the "V5" "market" is supported here.
45
+ * - Not all WebSocket categories support testnet.
46
+ * - If testing a strategy, this is not recommended. Testnet market data is very different from real market conditions. More guidance here: https://github.com/tiagosiebler/awesome-crypto-examples/wiki/CEX-Testnets
55
47
  */
56
- demoTrading?: boolean;
48
+ useTestnet?: boolean;
57
49
  /** Define a recv window when preparing a private websocket signature. This is in milliseconds, so 5000 == 5 seconds */
58
50
  recvWindow?: number;
59
51
  disableHeartbeat?: boolean;
@@ -70,13 +62,6 @@ export interface WSClientConfigurableOptions {
70
62
  agent?: any;
71
63
  };
72
64
  wsUrl?: string;
73
- /**
74
- * Default: true.
75
- *
76
- * When enabled, any calls to the subscribe method will return a promise.
77
- * // TODO:
78
- */
79
- promiseSubscribe?: boolean;
80
65
  /**
81
66
  * Allows you to provide a custom "signMessage" function, e.g. to use node's much faster createHmac method
82
67
  *
@@ -6,7 +6,7 @@ import BaseRestClient from './util/BaseRestClient';
6
6
  import { RestClientOptions } from './util/requestUtils';
7
7
  export declare class USDMClient extends BaseRestClient {
8
8
  private clientId;
9
- constructor(restClientOptions?: RestClientOptions, requestOptions?: AxiosRequestConfig, useTestnet?: boolean);
9
+ constructor(restClientOptions?: RestClientOptions, requestOptions?: AxiosRequestConfig);
10
10
  /**
11
11
  * Abstraction required by each client to aid with time sync / drift handling
12
12
  */
@@ -27,7 +27,9 @@ export declare class USDMClient extends BaseRestClient {
27
27
  getIndexPriceKlines(params: IndexPriceKlinesParams): Promise<Kline[]>;
28
28
  getMarkPriceKlines(params: SymbolKlinePaginatedParams): Promise<Kline[]>;
29
29
  getPremiumIndexKlines(params: SymbolKlinePaginatedParams): Promise<Kline[]>;
30
- getMarkPrice(params: BasicSymbolParam): Promise<MarkPrice>;
30
+ getMarkPrice(params: {
31
+ symbol: string;
32
+ }): Promise<MarkPrice>;
31
33
  getMarkPrice(): Promise<MarkPrice[]>;
32
34
  getFundingRateHistory(params?: Partial<BasicSymbolPaginatedParams>): Promise<FundingRateHistory[]>;
33
35
  getFundingRates(): Promise<FundingRate[]>;
@@ -35,23 +37,37 @@ export declare class USDMClient extends BaseRestClient {
35
37
  * @deprecated use get24hrChangeStatistics() instead (method without the typo)
36
38
  */
37
39
  get24hrChangeStatististics(params?: Partial<BasicSymbolParam>): Promise<ChangeStats24hr | ChangeStats24hr[]>;
38
- get24hrChangeStatistics(params: Partial<BasicSymbolParam>): Promise<ChangeStats24hr[]>;
39
- get24hrChangeStatistics(params?: Partial<BasicSymbolParam>): Promise<ChangeStats24hr | ChangeStats24hr[]>;
40
- get24hrChangeStatistics(params: Partial<BasicSymbolParam>): Promise<ChangeStats24hr>;
41
- getSymbolPriceTicker(params?: Partial<BasicSymbolParam>): Promise<SymbolPrice | SymbolPrice[]>;
42
- getSymbolPriceTickerV2(params?: Partial<BasicSymbolParam>): Promise<SymbolPrice | SymbolPrice[]>;
43
- getSymbolOrderBookTicker(params?: Partial<BasicSymbolParam>): Promise<FuturesSymbolOrderBookTicker | FuturesSymbolOrderBookTicker[]>;
40
+ get24hrChangeStatistics(params: {
41
+ symbol: string;
42
+ }): Promise<ChangeStats24hr>;
43
+ get24hrChangeStatistics(): Promise<ChangeStats24hr[]>;
44
+ getSymbolPriceTicker(params: {
45
+ symbol: string;
46
+ }): Promise<SymbolPrice>;
47
+ getSymbolPriceTicker(): Promise<SymbolPrice[]>;
48
+ getSymbolPriceTickerV2(params: {
49
+ symbol: string;
50
+ }): Promise<SymbolPrice>;
51
+ getSymbolPriceTickerV2(): Promise<SymbolPrice[]>;
52
+ getSymbolOrderBookTicker(params: {
53
+ symbol: string;
54
+ }): Promise<FuturesSymbolOrderBookTicker>;
55
+ getSymbolOrderBookTicker(): Promise<FuturesSymbolOrderBookTicker[]>;
44
56
  getQuarterlyContractSettlementPrices(params: {
45
57
  pair: string;
46
58
  }): Promise<QuarterlyContractSettlementPrice[]>;
47
- getOpenInterest(params: BasicSymbolParam): Promise<OpenInterest>;
59
+ getOpenInterest(params: {
60
+ symbol: string;
61
+ }): Promise<OpenInterest>;
48
62
  getOpenInterestStatistics(params: FuturesDataPaginatedParams): Promise<HistoricOpenInterest[]>;
49
63
  getTopTradersLongShortPositionRatio(params: FuturesDataPaginatedParams): Promise<any>;
50
64
  getTopTradersLongShortAccountRatio(params: FuturesDataPaginatedParams): Promise<any>;
51
65
  getGlobalLongShortAccountRatio(params: FuturesDataPaginatedParams): Promise<any>;
52
66
  getTakerBuySellVolume(params: FuturesDataPaginatedParams): Promise<any>;
53
67
  getHistoricalBlvtNavKlines(params: SymbolKlinePaginatedParams): Promise<any>;
54
- getCompositeSymbolIndex(params?: Partial<BasicSymbolParam>): Promise<any>;
68
+ getCompositeSymbolIndex(params?: {
69
+ symbol?: string;
70
+ }): Promise<any>;
55
71
  getMultiAssetsModeAssetIndex(params?: {
56
72
  symbol?: string;
57
73
  }): Promise<any>;
@@ -59,9 +75,6 @@ export declare class USDMClient extends BaseRestClient {
59
75
  * Possibly @deprecated, found only in old docs
60
76
  **/
61
77
  getBasis(params: BasisParams): Promise<Basis[]>;
62
- /**
63
- * Possibly @deprecated, found only in old docs
64
- **/
65
78
  getIndexPriceConstituents(params: {
66
79
  symbol: string;
67
80
  }): Promise<IndexPriceConstituents>;
@@ -93,7 +106,9 @@ export declare class USDMClient extends BaseRestClient {
93
106
  setCancelOrdersOnTimeout(params: CancelOrdersTimeoutParams): Promise<SetCancelTimeoutResult>;
94
107
  getOrder(params: GetOrderParams): Promise<OrderResult>;
95
108
  getAllOrders(params: GetAllOrdersParams): Promise<OrderResult[]>;
96
- getAllOpenOrders(params?: Partial<BasicSymbolParam>): Promise<OrderResult[]>;
109
+ getAllOpenOrders(params?: {
110
+ symbol?: string;
111
+ }): Promise<OrderResult[]>;
97
112
  getCurrentOpenOrder(params: GetOrderParams): Promise<OrderResult>;
98
113
  getForceOrders(params?: GetForceOrdersParams): Promise<ForceOrderResult[]>;
99
114
  getAccountTrades(params: SymbolFromPaginatedRequestFromId & {
@@ -114,7 +129,9 @@ export declare class USDMClient extends BaseRestClient {
114
129
  getPositionsV3(params?: {
115
130
  symbol?: string;
116
131
  }): Promise<FuturesPositionV3[]>;
117
- getADLQuantileEstimation(params?: Partial<BasicSymbolParam>): Promise<any>;
132
+ getADLQuantileEstimation(params?: {
133
+ symbol?: string;
134
+ }): Promise<any>;
118
135
  getPositionMarginChangeHistory(params: GetPositionMarginChangeHistoryParams): Promise<any>;
119
136
  /**
120
137
  *
@@ -137,7 +154,9 @@ export declare class USDMClient extends BaseRestClient {
137
154
  * @deprecated Please use `getAccountCommissionRate()` instead. This will be removed in the next major release.
138
155
  */
139
156
  getAccountComissionRate(params: BasicSymbolParam): Promise<UserCommissionRate>;
140
- getAccountCommissionRate(params: BasicSymbolParam): Promise<UserCommissionRate>;
157
+ getAccountCommissionRate(params: {
158
+ symbol: string;
159
+ }): Promise<UserCommissionRate>;
141
160
  getFuturesAccountConfig(): Promise<FuturesAccountConfig>;
142
161
  getFuturesSymbolConfig(params: {
143
162
  symbol?: string;
@@ -146,11 +165,15 @@ export declare class USDMClient extends BaseRestClient {
146
165
  /**
147
166
  * Contrary to what the docs say - if symbol is provided, this returns an array with length 1 (assuming the symbol exists)
148
167
  */
149
- getNotionalAndLeverageBrackets(params?: Partial<BasicSymbolParam>): Promise<SymbolLeverageBracketsResult[]>;
168
+ getNotionalAndLeverageBrackets(params?: {
169
+ symbol?: string;
170
+ }): Promise<SymbolLeverageBracketsResult[]>;
150
171
  getMultiAssetsMode(): Promise<MultiAssetModeResponse>;
151
172
  getCurrentPositionMode(): Promise<PositionModeResponse>;
152
173
  getIncomeHistory(params?: GetIncomeHistoryParams): Promise<IncomeHistory[]>;
153
- getApiQuantitativeRulesIndicators(params?: Partial<BasicSymbolParam>): Promise<any>;
174
+ getApiQuantitativeRulesIndicators(params?: {
175
+ symbol?: string;
176
+ }): Promise<any>;
154
177
  getFuturesTransactionHistoryDownloadId(params: {
155
178
  startTime: number;
156
179
  endTime: number;
@@ -16,10 +16,10 @@ exports.USDMClient = void 0;
16
16
  const BaseRestClient_1 = __importDefault(require("./util/BaseRestClient"));
17
17
  const requestUtils_1 = require("./util/requestUtils");
18
18
  class USDMClient extends BaseRestClient_1.default {
19
- constructor(restClientOptions = {}, requestOptions = {}, useTestnet) {
20
- const clientId = useTestnet ? 'usdmtest' : 'usdm';
21
- super(clientId, restClientOptions, requestOptions);
22
- this.clientId = clientId;
19
+ constructor(restClientOptions = {}, requestOptions = {}) {
20
+ const baseUrlKey = restClientOptions.useTestnet ? 'usdmtest' : 'usdm';
21
+ super(baseUrlKey, restClientOptions, requestOptions);
22
+ this.clientId = baseUrlKey;
23
23
  return this;
24
24
  }
25
25
  /**
@@ -81,7 +81,7 @@ class USDMClient extends BaseRestClient_1.default {
81
81
  * @deprecated use get24hrChangeStatistics() instead (method without the typo)
82
82
  */
83
83
  get24hrChangeStatististics(params) {
84
- return this.get24hrChangeStatistics(params);
84
+ return this.get('fapi/v1/ticker/24hr', params);
85
85
  }
86
86
  get24hrChangeStatistics(params) {
87
87
  return this.get('fapi/v1/ticker/24hr', params);
@@ -131,9 +131,6 @@ class USDMClient extends BaseRestClient_1.default {
131
131
  getBasis(params) {
132
132
  return this.get('futures/data/basis', params);
133
133
  }
134
- /**
135
- * Possibly @deprecated, found only in old docs
136
- **/
137
134
  getIndexPriceConstituents(params) {
138
135
  return this.get('fapi/v1/constituents', params);
139
136
  }
@@ -1 +1 @@
1
- {"version":3,"file":"usdm-client.js","sourceRoot":"","sources":["../src/usdm-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usdm-client.js","sourceRoot":"","sources":["../src/usdm-client.ts"],"names":[],"mappings":"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"}