@0xmonaco/types 0.5.5 → 0.5.7

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 (61) hide show
  1. package/README.md +6 -6
  2. package/dist/api/index.js +0 -1
  3. package/dist/applications/index.js +0 -1
  4. package/dist/applications/responses.js +0 -1
  5. package/dist/auth/index.js +0 -1
  6. package/dist/auth/responses.js +0 -1
  7. package/dist/contracts/balances.js +0 -1
  8. package/dist/contracts/index.js +0 -1
  9. package/dist/market/index.js +0 -1
  10. package/dist/profile/index.d.ts +32 -1
  11. package/dist/profile/index.d.ts.map +1 -1
  12. package/dist/profile/index.js +0 -1
  13. package/dist/sdk/index.d.ts +6 -8
  14. package/dist/sdk/index.d.ts.map +1 -1
  15. package/dist/sdk/index.js +0 -1
  16. package/dist/sdk/network.d.ts +2 -7
  17. package/dist/sdk/network.d.ts.map +1 -1
  18. package/dist/sdk/network.js +0 -1
  19. package/dist/trading/index.d.ts +25 -10
  20. package/dist/trading/index.d.ts.map +1 -1
  21. package/dist/trading/index.js +0 -1
  22. package/dist/trading/orders.js +0 -1
  23. package/dist/trading/responses.d.ts +109 -2
  24. package/dist/trading/responses.d.ts.map +1 -1
  25. package/dist/trading/responses.js +0 -1
  26. package/dist/validation/common.d.ts +1 -1
  27. package/dist/validation/common.d.ts.map +1 -1
  28. package/dist/validation/common.js +5 -0
  29. package/dist/validation/common.js.map +1 -1
  30. package/dist/validation/index.d.ts +1 -0
  31. package/dist/validation/index.d.ts.map +1 -1
  32. package/dist/validation/index.js +1 -0
  33. package/dist/validation/index.js.map +1 -1
  34. package/dist/validation/market.d.ts +5 -5
  35. package/dist/validation/profile.d.ts +72 -0
  36. package/dist/validation/profile.d.ts.map +1 -0
  37. package/dist/validation/profile.js +41 -0
  38. package/dist/validation/profile.js.map +1 -0
  39. package/dist/validation/trading.d.ts +115 -27
  40. package/dist/validation/trading.d.ts.map +1 -1
  41. package/dist/validation/trading.js +78 -24
  42. package/dist/validation/trading.js.map +1 -1
  43. package/dist/validation/vault.d.ts +4 -4
  44. package/dist/vault/index.js +0 -1
  45. package/dist/vault/responses.js +0 -1
  46. package/dist/websocket/base.js +0 -1
  47. package/dist/websocket/clients/orderbook-client.js +0 -1
  48. package/dist/websocket/events/balance-events.d.ts +49 -0
  49. package/dist/websocket/events/balance-events.d.ts.map +1 -0
  50. package/dist/websocket/events/balance-events.js +7 -0
  51. package/dist/websocket/events/balance-events.js.map +1 -0
  52. package/dist/websocket/events/index.d.ts +1 -0
  53. package/dist/websocket/events/index.d.ts.map +1 -1
  54. package/dist/websocket/events/index.js +1 -0
  55. package/dist/websocket/events/index.js.map +1 -1
  56. package/dist/websocket/events/movement-events.js +0 -1
  57. package/dist/websocket/events/ohlcv-events.js +0 -1
  58. package/dist/websocket/events/orderbook-events.js +0 -1
  59. package/dist/websocket/events/orders-events.js +0 -1
  60. package/dist/websocket/events/trade-events.js +0 -1
  61. package/package.json +5 -3
@@ -72,7 +72,7 @@ export declare const TimestampSchema: z.ZodNumber;
72
72
  * ```
73
73
  */
74
74
  export declare const GetCandlesticksSchema: z.ZodObject<{
75
- tradingPairId: z.ZodString;
75
+ tradingPairId: z.ZodUUID;
76
76
  interval: z.ZodEnum<{
77
77
  "1m": "1m";
78
78
  "5m": "5m";
@@ -156,7 +156,7 @@ export declare const CandlestickLimitSchema: z.ZodOptional<z.ZodNumber>;
156
156
  * ```
157
157
  */
158
158
  export declare const GetCandlesticksByPairIdSchema: z.ZodObject<{
159
- tradingPairId: z.ZodString;
159
+ tradingPairId: z.ZodUUID;
160
160
  interval: z.ZodEnum<{
161
161
  "1m": "1m";
162
162
  "5m": "5m";
@@ -176,7 +176,7 @@ export declare const GetCandlesticksByPairIdSchema: z.ZodObject<{
176
176
  * @deprecated Use GetCandlesticksByPairIdSchema instead. Symbol-based lookups are no longer supported.
177
177
  */
178
178
  export declare const GetCandlesticksBySymbolSchema: z.ZodObject<{
179
- tradingPairId: z.ZodString;
179
+ tradingPairId: z.ZodUUID;
180
180
  interval: z.ZodEnum<{
181
181
  "1m": "1m";
182
182
  "5m": "5m";
@@ -196,7 +196,7 @@ export declare const GetCandlesticksBySymbolSchema: z.ZodObject<{
196
196
  * Get Trading Pair validation schema
197
197
  */
198
198
  export declare const GetTradingPairSchema: z.ZodObject<{
199
- tradingPairId: z.ZodString;
199
+ tradingPairId: z.ZodUUID;
200
200
  }, z.core.$strip>;
201
201
  /**
202
202
  * Search Trading Pairs validation schema
@@ -210,6 +210,6 @@ export declare const SearchTradingPairsSchema: z.ZodObject<{
210
210
  * Get Market Metadata validation schema
211
211
  */
212
212
  export declare const GetMarketMetadataSchema: z.ZodObject<{
213
- tradingPairId: z.ZodString;
213
+ tradingPairId: z.ZodUUID;
214
214
  }, z.core.$strip>;
215
215
  //# sourceMappingURL=market.d.ts.map
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Profile API Validation Schemas
3
+ *
4
+ * Zod schemas for validating profile API inputs before making requests.
5
+ * Provides clear, actionable error messages for invalid parameters.
6
+ */
7
+ import { z } from "zod";
8
+ /**
9
+ * Ledger entry type validation
10
+ */
11
+ export declare const LedgerEntryTypeSchema: z.ZodEnum<{
12
+ CREDIT: "CREDIT";
13
+ DEBIT: "DEBIT";
14
+ LOCK: "LOCK";
15
+ UNLOCK: "UNLOCK";
16
+ FEE: "FEE";
17
+ }>;
18
+ /**
19
+ * Transaction type validation
20
+ */
21
+ export declare const TransactionTypeSchema: z.ZodEnum<{
22
+ FEE: "FEE";
23
+ DEPOSIT: "DEPOSIT";
24
+ WITHDRAWAL: "WITHDRAWAL";
25
+ TRADE: "TRADE";
26
+ FUNDING: "FUNDING";
27
+ LIQUIDATION: "LIQUIDATION";
28
+ INTEREST: "INTEREST";
29
+ REWARD: "REWARD";
30
+ }>;
31
+ /**
32
+ * Movements data source validation
33
+ */
34
+ export declare const MovementsDataSourceSchema: z.ZodEnum<{
35
+ hot_storage: "hot_storage";
36
+ cold_storage: "cold_storage";
37
+ both: "both";
38
+ }>;
39
+ /**
40
+ * Get User Movements validation schema
41
+ *
42
+ * Validates parameters for fetching paginated user movements.
43
+ * All fields are optional — an empty object or undefined is valid.
44
+ */
45
+ export declare const GetUserMovementsSchema: z.ZodObject<{
46
+ page: z.ZodOptional<z.ZodNumber>;
47
+ limit: z.ZodOptional<z.ZodNumber>;
48
+ entry_type: z.ZodOptional<z.ZodEnum<{
49
+ CREDIT: "CREDIT";
50
+ DEBIT: "DEBIT";
51
+ LOCK: "LOCK";
52
+ UNLOCK: "UNLOCK";
53
+ FEE: "FEE";
54
+ }>>;
55
+ transaction_type: z.ZodOptional<z.ZodEnum<{
56
+ FEE: "FEE";
57
+ DEPOSIT: "DEPOSIT";
58
+ WITHDRAWAL: "WITHDRAWAL";
59
+ TRADE: "TRADE";
60
+ FUNDING: "FUNDING";
61
+ LIQUIDATION: "LIQUIDATION";
62
+ INTEREST: "INTEREST";
63
+ REWARD: "REWARD";
64
+ }>>;
65
+ asset_id: z.ZodOptional<z.ZodUUID>;
66
+ source: z.ZodOptional<z.ZodEnum<{
67
+ hot_storage: "hot_storage";
68
+ cold_storage: "cold_storage";
69
+ both: "both";
70
+ }>>;
71
+ }, z.core.$strip>;
72
+ //# sourceMappingURL=profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/validation/profile.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;EAEhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;EAEpC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOjC,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Profile API Validation Schemas
3
+ *
4
+ * Zod schemas for validating profile API inputs before making requests.
5
+ * Provides clear, actionable error messages for invalid parameters.
6
+ */
7
+ import { z } from "zod";
8
+ import { UUIDSchema } from "./trading.js";
9
+ /**
10
+ * Ledger entry type validation
11
+ */
12
+ export const LedgerEntryTypeSchema = z.enum(["CREDIT", "DEBIT", "LOCK", "UNLOCK", "FEE"], {
13
+ message: 'Entry type must be "CREDIT", "DEBIT", "LOCK", "UNLOCK", or "FEE"',
14
+ });
15
+ /**
16
+ * Transaction type validation
17
+ */
18
+ export const TransactionTypeSchema = z.enum(["DEPOSIT", "WITHDRAWAL", "TRADE", "FEE", "FUNDING", "LIQUIDATION", "INTEREST", "REWARD"], {
19
+ message: 'Transaction type must be "DEPOSIT", "WITHDRAWAL", "TRADE", "FEE", "FUNDING", "LIQUIDATION", "INTEREST", or "REWARD"',
20
+ });
21
+ /**
22
+ * Movements data source validation
23
+ */
24
+ export const MovementsDataSourceSchema = z.enum(["hot_storage", "cold_storage", "both"], {
25
+ message: 'Data source must be "hot_storage", "cold_storage", or "both"',
26
+ });
27
+ /**
28
+ * Get User Movements validation schema
29
+ *
30
+ * Validates parameters for fetching paginated user movements.
31
+ * All fields are optional — an empty object or undefined is valid.
32
+ */
33
+ export const GetUserMovementsSchema = z.object({
34
+ page: z.number().int("Page must be an integer").min(1, "Page must be at least 1").optional(),
35
+ limit: z.number().int("Limit must be an integer").min(1, "Limit must be at least 1").max(100, "Limit cannot exceed 100").optional(),
36
+ entry_type: LedgerEntryTypeSchema.optional(),
37
+ transaction_type: TransactionTypeSchema.optional(),
38
+ asset_id: UUIDSchema.optional(),
39
+ source: MovementsDataSourceSchema.optional(),
40
+ });
41
+ //# sourceMappingURL=profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/validation/profile.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE;IACxF,OAAO,EAAE,kEAAkE;CAC5E,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE;IACrI,OAAO,EAAE,qHAAqH;CAC/H,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE;IACvF,OAAO,EAAE,8DAA8D;CACxE,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE;IAC5F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE;IACnI,UAAU,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC5C,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAClD,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,yBAAyB,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
@@ -31,18 +31,14 @@ export declare const TimeInForceSchema: z.ZodEnum<{
31
31
  * Positive decimal string validation (for quantities and prices)
32
32
  */
33
33
  export declare const PositiveDecimalStringSchema: z.ZodString;
34
- /**
35
- * Non-negative decimal string validation (allows 0)
36
- */
37
- export declare const NonNegativeDecimalStringSchema: z.ZodString;
38
34
  /**
39
35
  * UUID validation
40
36
  */
41
- export declare const UUIDSchema: z.ZodString;
37
+ export declare const UUIDSchema: z.ZodUUID;
42
38
  /**
43
39
  * ISO 8601 date string validation
44
40
  */
45
- export declare const ISO8601DateSchema: z.ZodString;
41
+ export declare const ISO8601DateSchema: z.ZodISODateTime;
46
42
  /**
47
43
  * Slippage tolerance validation (0 to 1, where 0.01 = 1%)
48
44
  */
@@ -51,7 +47,7 @@ export declare const SlippageToleranceSchema: z.ZodOptional<z.ZodNumber>;
51
47
  * Place Limit Order validation schema
52
48
  */
53
49
  export declare const PlaceLimitOrderSchema: z.ZodObject<{
54
- tradingPairId: z.ZodString;
50
+ tradingPairId: z.ZodUUID;
55
51
  side: z.ZodEnum<{
56
52
  BUY: "BUY";
57
53
  SELL: "SELL";
@@ -64,7 +60,7 @@ export declare const PlaceLimitOrderSchema: z.ZodObject<{
64
60
  MARGIN: "MARGIN";
65
61
  }>>;
66
62
  useMasterBalance: z.ZodOptional<z.ZodBoolean>;
67
- expirationDate: z.ZodOptional<z.ZodString>;
63
+ expirationDate: z.ZodOptional<z.ZodISODateTime>;
68
64
  timeInForce: z.ZodOptional<z.ZodEnum<{
69
65
  GTC: "GTC";
70
66
  IOC: "IOC";
@@ -76,7 +72,7 @@ export declare const PlaceLimitOrderSchema: z.ZodObject<{
76
72
  * Place Market Order validation schema
77
73
  */
78
74
  export declare const PlaceMarketOrderSchema: z.ZodObject<{
79
- tradingPairId: z.ZodString;
75
+ tradingPairId: z.ZodUUID;
80
76
  side: z.ZodEnum<{
81
77
  BUY: "BUY";
82
78
  SELL: "SELL";
@@ -99,7 +95,7 @@ export declare const PlaceMarketOrderSchema: z.ZodObject<{
99
95
  * Cancel Order validation schema
100
96
  */
101
97
  export declare const CancelOrderSchema: z.ZodObject<{
102
- orderId: z.ZodString;
98
+ orderId: z.ZodUUID;
103
99
  }, z.core.$strip>;
104
100
  /**
105
101
  * Replace Order validation schema
@@ -110,7 +106,7 @@ export declare const CancelOrderSchema: z.ZodObject<{
110
106
  * - newOrder: { price?: string, quantity?: string, useMasterBalance?: boolean }
111
107
  */
112
108
  export declare const ReplaceOrderSchema: z.ZodObject<{
113
- orderId: z.ZodString;
109
+ orderId: z.ZodUUID;
114
110
  newOrder: z.ZodObject<{
115
111
  price: z.ZodOptional<z.ZodString>;
116
112
  quantity: z.ZodOptional<z.ZodString>;
@@ -121,26 +117,118 @@ export declare const ReplaceOrderSchema: z.ZodObject<{
121
117
  * Get Paginated Orders validation schema
122
118
  *
123
119
  * Validates parameters for fetching paginated orders.
124
- * Status field accepts all valid OrderStatus values for comprehensive filtering.
120
+ * Matches the getPaginatedOrders method signature which accepts:
121
+ * - status: OrderStatus (optional filter)
122
+ * - trading_pair: trading pair UUID (optional filter)
123
+ * - page: number (default: 1)
124
+ * - page_size: number (default: 10, max: 100)
125
125
  */
126
- export declare const GetOrdersSchema: z.ZodObject<{
127
- tradingPairId: z.ZodOptional<z.ZodString>;
128
- options: z.ZodOptional<z.ZodObject<{
129
- status: z.ZodOptional<z.ZodEnum<{
130
- SUBMITTED: "SUBMITTED";
131
- PARTIALLY_FILLED: "PARTIALLY_FILLED";
132
- FILLED: "FILLED";
133
- SETTLED: "SETTLED";
134
- CANCELLED: "CANCELLED";
135
- REJECTED: "REJECTED";
136
- EXPIRED: "EXPIRED";
137
- }>>;
138
- side: z.ZodOptional<z.ZodEnum<{
126
+ export declare const GetPaginatedOrdersSchema: z.ZodObject<{
127
+ status: z.ZodOptional<z.ZodEnum<{
128
+ SUBMITTED: "SUBMITTED";
129
+ PARTIALLY_FILLED: "PARTIALLY_FILLED";
130
+ FILLED: "FILLED";
131
+ SETTLED: "SETTLED";
132
+ CANCELLED: "CANCELLED";
133
+ REJECTED: "REJECTED";
134
+ EXPIRED: "EXPIRED";
135
+ }>>;
136
+ trading_pair: z.ZodOptional<z.ZodUUID>;
137
+ page: z.ZodOptional<z.ZodNumber>;
138
+ page_size: z.ZodOptional<z.ZodNumber>;
139
+ }, z.core.$strip>;
140
+ /**
141
+ * Order type validation
142
+ */
143
+ export declare const OrderTypeSchema: z.ZodEnum<{
144
+ LIMIT: "LIMIT";
145
+ MARKET: "MARKET";
146
+ }>;
147
+ /**
148
+ * Single batch create order item validation schema
149
+ *
150
+ * Validates each order in a batch create request.
151
+ * - LIMIT orders require a price
152
+ * - MARKET orders must not have a price
153
+ */
154
+ export declare const BatchCreateOrderItemSchema: z.ZodObject<{
155
+ tradingPairId: z.ZodUUID;
156
+ orderType: z.ZodEnum<{
157
+ LIMIT: "LIMIT";
158
+ MARKET: "MARKET";
159
+ }>;
160
+ side: z.ZodEnum<{
161
+ BUY: "BUY";
162
+ SELL: "SELL";
163
+ }>;
164
+ price: z.ZodOptional<z.ZodString>;
165
+ quantity: z.ZodString;
166
+ tradingMode: z.ZodOptional<z.ZodEnum<{
167
+ SPOT: "SPOT";
168
+ }>>;
169
+ slippageTolerance: z.ZodOptional<z.ZodNumber>;
170
+ useMasterBalance: z.ZodOptional<z.ZodBoolean>;
171
+ expirationDate: z.ZodOptional<z.ZodISODateTime>;
172
+ timeInForce: z.ZodOptional<z.ZodEnum<{
173
+ GTC: "GTC";
174
+ IOC: "IOC";
175
+ FOK: "FOK";
176
+ }>>;
177
+ }, z.core.$strip>;
178
+ /**
179
+ * Batch Create Orders validation schema
180
+ *
181
+ * Validates the full array of orders for a batch create request.
182
+ */
183
+ export declare const BatchCreateOrdersSchema: z.ZodObject<{
184
+ orders: z.ZodArray<z.ZodObject<{
185
+ tradingPairId: z.ZodUUID;
186
+ orderType: z.ZodEnum<{
187
+ LIMIT: "LIMIT";
188
+ MARKET: "MARKET";
189
+ }>;
190
+ side: z.ZodEnum<{
139
191
  BUY: "BUY";
140
192
  SELL: "SELL";
193
+ }>;
194
+ price: z.ZodOptional<z.ZodString>;
195
+ quantity: z.ZodString;
196
+ tradingMode: z.ZodOptional<z.ZodEnum<{
197
+ SPOT: "SPOT";
141
198
  }>>;
142
- limit: z.ZodOptional<z.ZodNumber>;
143
- offset: z.ZodOptional<z.ZodNumber>;
199
+ slippageTolerance: z.ZodOptional<z.ZodNumber>;
200
+ useMasterBalance: z.ZodOptional<z.ZodBoolean>;
201
+ expirationDate: z.ZodOptional<z.ZodISODateTime>;
202
+ timeInForce: z.ZodOptional<z.ZodEnum<{
203
+ GTC: "GTC";
204
+ IOC: "IOC";
205
+ FOK: "FOK";
206
+ }>>;
207
+ }, z.core.$strip>>;
208
+ }, z.core.$strip>;
209
+ /**
210
+ * Single batch replace order item validation schema
211
+ *
212
+ * Validates each order in a batch replace request.
213
+ * At least one of price or quantity must be provided.
214
+ */
215
+ export declare const BatchReplaceOrderItemSchema: z.ZodObject<{
216
+ orderId: z.ZodUUID;
217
+ price: z.ZodOptional<z.ZodString>;
218
+ quantity: z.ZodOptional<z.ZodString>;
219
+ useMasterBalance: z.ZodOptional<z.ZodBoolean>;
220
+ }, z.core.$strip>;
221
+ /**
222
+ * Batch Replace Orders validation schema
223
+ *
224
+ * Validates the full array of orders for a batch replace request.
225
+ */
226
+ export declare const BatchReplaceOrdersSchema: z.ZodObject<{
227
+ orders: z.ZodArray<z.ZodObject<{
228
+ orderId: z.ZodUUID;
229
+ price: z.ZodOptional<z.ZodString>;
230
+ quantity: z.ZodOptional<z.ZodString>;
231
+ useMasterBalance: z.ZodOptional<z.ZodBoolean>;
144
232
  }, z.core.$strip>>;
145
233
  }, z.core.$strip>;
146
234
  //# sourceMappingURL=trading.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trading.d.ts","sourceRoot":"","sources":["../../src/validation/trading.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,eAAe;;;EAE1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;EAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;EAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,2BAA2B,aAOpC,CAAC;AAEL;;GAEG;AACH,eAAO,MAAM,8BAA8B,aAOvC,CAAC;AAEL;;GAEG;AACH,eAAO,MAAM,UAAU,aAErB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB,aAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB,4BAIvB,CAAC;AAEd;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;iBAahC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;iBAWjC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB;;;;;;;iBAO7B,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;iBAU1B,CAAC"}
1
+ {"version":3,"file":"trading.d.ts","sourceRoot":"","sources":["../../src/validation/trading.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,eAAe;;;EAE1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;EAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;EAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,2BAA2B,aAOpC,CAAC;AAEL;;GAEG;AACH,eAAO,MAAM,UAAU,WAErB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB,kBAE5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB,4BAIvB,CAAC;AAEd;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;iBAahC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;iBAWjC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB;;;;;;;iBAO7B,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;iBAKnC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;EAE1B,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;iBAoBnC,CAAC;AAEL;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;iBAElC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B;;;;;iBASpC,CAAC;AAEL;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;iBAEnC,CAAC"}
@@ -34,27 +34,16 @@ export const PositiveDecimalStringSchema = z
34
34
  .refine((val) => Number.parseFloat(val) > 0, {
35
35
  message: "Value must be greater than 0",
36
36
  });
37
- /**
38
- * Non-negative decimal string validation (allows 0)
39
- */
40
- export const NonNegativeDecimalStringSchema = z
41
- .string()
42
- .trim()
43
- .min(1, "Value cannot be empty")
44
- .regex(/^\d+(\.\d+)?$/, "Value must be a non-negative decimal number")
45
- .refine((val) => Number.parseFloat(val) >= 0, {
46
- message: "Value must be greater than or equal to 0",
47
- });
48
37
  /**
49
38
  * UUID validation
50
39
  */
51
- export const UUIDSchema = z.string().uuid({
40
+ export const UUIDSchema = z.uuid({
52
41
  message: "Must be a valid UUID (e.g., '123e4567-e89b-12d3-a456-426614174000')",
53
42
  });
54
43
  /**
55
44
  * ISO 8601 date string validation
56
45
  */
57
- export const ISO8601DateSchema = z.string().datetime({
46
+ export const ISO8601DateSchema = z.iso.datetime({
58
47
  message: "Must be a valid ISO 8601 date string (e.g., '2024-12-31T23:59:59Z')",
59
48
  });
60
49
  /**
@@ -123,17 +112,82 @@ export const ReplaceOrderSchema = z.object({
123
112
  * Get Paginated Orders validation schema
124
113
  *
125
114
  * Validates parameters for fetching paginated orders.
126
- * Status field accepts all valid OrderStatus values for comprehensive filtering.
115
+ * Matches the getPaginatedOrders method signature which accepts:
116
+ * - status: OrderStatus (optional filter)
117
+ * - trading_pair: trading pair UUID (optional filter)
118
+ * - page: number (default: 1)
119
+ * - page_size: number (default: 10, max: 100)
127
120
  */
128
- export const GetOrdersSchema = z.object({
129
- tradingPairId: UUIDSchema.optional(),
130
- options: z
131
- .object({
132
- status: z.enum(["SUBMITTED", "PARTIALLY_FILLED", "FILLED", "SETTLED", "CANCELLED", "REJECTED", "EXPIRED"]).optional(),
133
- side: OrderSideSchema.optional(),
134
- limit: z.number().int().min(1).max(100).optional(),
135
- offset: z.number().int().min(0).optional(),
136
- })
137
- .optional(),
121
+ export const GetPaginatedOrdersSchema = z.object({
122
+ status: z.enum(["SUBMITTED", "PARTIALLY_FILLED", "FILLED", "SETTLED", "CANCELLED", "REJECTED", "EXPIRED"]).optional(),
123
+ trading_pair: UUIDSchema.optional(),
124
+ page: z.number().int().min(1, "Page must be at least 1").optional(),
125
+ page_size: z.number().int().min(1, "Page size must be at least 1").max(100, "Page size cannot exceed 100").optional(),
126
+ });
127
+ /**
128
+ * Order type validation
129
+ */
130
+ export const OrderTypeSchema = z.enum(["LIMIT", "MARKET"], {
131
+ message: 'Order type must be "LIMIT" or "MARKET"',
132
+ });
133
+ /**
134
+ * Single batch create order item validation schema
135
+ *
136
+ * Validates each order in a batch create request.
137
+ * - LIMIT orders require a price
138
+ * - MARKET orders must not have a price
139
+ */
140
+ export const BatchCreateOrderItemSchema = z
141
+ .object({
142
+ tradingPairId: UUIDSchema,
143
+ orderType: OrderTypeSchema,
144
+ side: OrderSideSchema,
145
+ price: PositiveDecimalStringSchema.optional(),
146
+ quantity: PositiveDecimalStringSchema,
147
+ tradingMode: z.enum(["SPOT"]).optional(),
148
+ slippageTolerance: SlippageToleranceSchema,
149
+ useMasterBalance: z.boolean().optional(),
150
+ expirationDate: ISO8601DateSchema.optional(),
151
+ timeInForce: TimeInForceSchema.optional(),
152
+ })
153
+ .refine((data) => data.orderType !== "LIMIT" || data.price !== undefined, {
154
+ message: "Price is required for LIMIT orders",
155
+ path: ["price"],
156
+ })
157
+ .refine((data) => data.orderType !== "MARKET" || data.price === undefined, {
158
+ message: "Price must not be provided for MARKET orders",
159
+ path: ["price"],
160
+ });
161
+ /**
162
+ * Batch Create Orders validation schema
163
+ *
164
+ * Validates the full array of orders for a batch create request.
165
+ */
166
+ export const BatchCreateOrdersSchema = z.object({
167
+ orders: z.array(BatchCreateOrderItemSchema).min(1, "At least one order is required"),
168
+ });
169
+ /**
170
+ * Single batch replace order item validation schema
171
+ *
172
+ * Validates each order in a batch replace request.
173
+ * At least one of price or quantity must be provided.
174
+ */
175
+ export const BatchReplaceOrderItemSchema = z
176
+ .object({
177
+ orderId: UUIDSchema,
178
+ price: PositiveDecimalStringSchema.optional(),
179
+ quantity: PositiveDecimalStringSchema.optional(),
180
+ useMasterBalance: z.boolean().optional(),
181
+ })
182
+ .refine((data) => data.price !== undefined || data.quantity !== undefined, {
183
+ message: "At least one of price or quantity must be provided",
184
+ });
185
+ /**
186
+ * Batch Replace Orders validation schema
187
+ *
188
+ * Validates the full array of orders for a batch replace request.
189
+ */
190
+ export const BatchReplaceOrdersSchema = z.object({
191
+ orders: z.array(BatchReplaceOrderItemSchema).min(1, "At least one order is required"),
138
192
  });
139
193
  //# sourceMappingURL=trading.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trading.js","sourceRoot":"","sources":["../../src/validation/trading.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trading.js","sourceRoot":"","sources":["../../src/validation/trading.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;IACrD,OAAO,EAAE,oCAAoC;CAC9C,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAC1D,OAAO,EAAE,yCAAyC;CACnD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE;IAC7D,OAAO,EAAE,8CAA8C;CACxD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,EAAE;KACR,IAAI,EAAE;KACN,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;KAC/B,KAAK,CAAC,eAAe,EAAE,8DAA8D,CAAC;KACtF,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;IAC3C,OAAO,EAAE,8BAA8B;CACxC,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC;IAC/B,OAAO,EAAE,qEAAqE;CAC/E,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC9C,OAAO,EAAE,qEAAqE;CAC/E,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,EAAE,qDAAqD,CAAC;KAC7D,GAAG,CAAC,CAAC,EAAE,2CAA2C,CAAC;KACnD,QAAQ,EAAE,CAAC;AAEd;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,aAAa,EAAE,UAAU;IACzB,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,2BAA2B;IACrC,KAAK,EAAE,2BAA2B;IAClC,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;QACzC,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QACxC,cAAc,EAAE,iBAAiB,CAAC,QAAQ,EAAE;QAC5C,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,aAAa,EAAE,UAAU;IACzB,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,2BAA2B;IACrC,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;QACzC,iBAAiB,EAAE,uBAAuB;QAC1C,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,UAAU;CACpB,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,2BAA2B,CAAC,QAAQ,EAAE;QAC7C,QAAQ,EAAE,2BAA2B,CAAC,QAAQ,EAAE;QAChD,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;KACzC,CAAC;CACH,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrH,YAAY,EAAE,UAAU,CAAC,QAAQ,EAAE;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,8BAA8B,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC,QAAQ,EAAE;CACtH,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;IACzD,OAAO,EAAE,wCAAwC;CAClD,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,aAAa,EAAE,UAAU;IACzB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,2BAA2B;IACrC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,iBAAiB,EAAE,uBAAuB;IAC1C,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,cAAc,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;IACxE,OAAO,EAAE,oCAAoC;IAC7C,IAAI,EAAE,CAAC,OAAO,CAAC;CAChB,CAAC;KACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;IACzE,OAAO,EAAE,8CAA8C;IACvD,IAAI,EAAE,CAAC,OAAO,CAAC;CAChB,CAAC,CAAC;AAEL;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,gCAAgC,CAAC;CACrF,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,CAAC;IACN,OAAO,EAAE,UAAU;IACnB,KAAK,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IAChD,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC;KACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;IACzE,OAAO,EAAE,oDAAoD;CAC9D,CAAC,CAAC;AAEL;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,gCAAgC,CAAC;CACtF,CAAC,CAAC"}
@@ -33,7 +33,7 @@ export declare const PositiveBigIntStringSchema: z.ZodUnion<readonly [z.ZodStrin
33
33
  * Approve Token validation schema
34
34
  */
35
35
  export declare const ApproveTokenSchema: z.ZodObject<{
36
- assetId: z.ZodString;
36
+ assetId: z.ZodUUID;
37
37
  amount: z.ZodUnion<readonly [z.ZodString, z.ZodBigInt]>;
38
38
  autoWait: z.ZodOptional<z.ZodBoolean>;
39
39
  }, z.core.$strip>;
@@ -41,7 +41,7 @@ export declare const ApproveTokenSchema: z.ZodObject<{
41
41
  * Deposit validation schema
42
42
  */
43
43
  export declare const DepositSchema: z.ZodObject<{
44
- assetId: z.ZodString;
44
+ assetId: z.ZodUUID;
45
45
  amount: z.ZodUnion<readonly [z.ZodString, z.ZodBigInt]>;
46
46
  autoWait: z.ZodOptional<z.ZodBoolean>;
47
47
  }, z.core.$strip>;
@@ -49,7 +49,7 @@ export declare const DepositSchema: z.ZodObject<{
49
49
  * Withdraw validation schema
50
50
  */
51
51
  export declare const WithdrawSchema: z.ZodObject<{
52
- assetId: z.ZodString;
52
+ assetId: z.ZodUUID;
53
53
  amount: z.ZodUnion<readonly [z.ZodString, z.ZodBigInt]>;
54
54
  autoWait: z.ZodOptional<z.ZodBoolean>;
55
55
  }, z.core.$strip>;
@@ -57,6 +57,6 @@ export declare const WithdrawSchema: z.ZodObject<{
57
57
  * Get Balance validation schema
58
58
  */
59
59
  export declare const GetBalanceSchema: z.ZodObject<{
60
- assetId: z.ZodString;
60
+ assetId: z.ZodUUID;
61
61
  }, z.core.$strip>;
62
62
  //# sourceMappingURL=vault.d.ts.map
@@ -3,5 +3,4 @@
3
3
  *
4
4
  * Types for vault operations including deposits, withdrawals, and balance management.
5
5
  */
6
- export {};
7
6
  //# sourceMappingURL=index.js.map
@@ -3,5 +3,4 @@
3
3
  *
4
4
  * Response types for vault operations.
5
5
  */
6
- export {};
7
6
  //# sourceMappingURL=responses.js.map
@@ -3,5 +3,4 @@
3
3
  *
4
4
  * Types for the functional Monaco WebSocket client.
5
5
  */
6
- export {};
7
6
  //# sourceMappingURL=base.js.map
@@ -1,5 +1,4 @@
1
1
  /**
2
2
  * Orderbook Types
3
3
  */
4
- export {};
5
4
  //# sourceMappingURL=orderbook-client.js.map
@@ -0,0 +1,49 @@
1
+ /**
2
+ * User Balance WebSocket Event Types
3
+ *
4
+ * Types for real-time user balance update events.
5
+ * This is an authenticated channel - requires JWT token.
6
+ */
7
+ /**
8
+ * Reason for the balance update
9
+ */
10
+ export type BalanceUpdateReason = "lock" | "unlock" | "deposit" | "withdrawal" | "trade";
11
+ /**
12
+ * User balance event data containing current balance state
13
+ */
14
+ export interface UserBalanceEventData {
15
+ /** Token contract address */
16
+ tokenAddress: string;
17
+ /** Token symbol */
18
+ tokenSymbol: string | null;
19
+ /** Available balance for trading (normalized) */
20
+ available: string;
21
+ /** Available balance in raw format (wei) */
22
+ availableRaw: string;
23
+ /** Locked balance (in orders or pending operations, normalized) */
24
+ locked: string;
25
+ /** Locked balance in raw format (wei) */
26
+ lockedRaw: string;
27
+ /** Total balance (available + locked, normalized) */
28
+ total: string;
29
+ /** Total balance in raw format (wei) */
30
+ totalRaw: string;
31
+ /** Reason for the balance update */
32
+ reason: BalanceUpdateReason;
33
+ /** Reference ID for related entity (e.g., order ID, deposit ID) */
34
+ referenceId: string | null;
35
+ /** Timestamp when the balance was updated (ISO 8601) */
36
+ updatedAt: string;
37
+ }
38
+ /**
39
+ * User balance event emitted when a user's balance changes
40
+ */
41
+ export interface UserBalanceEvent {
42
+ /** Event type identifier */
43
+ eventType: "balance_update";
44
+ /** User ID (UUID) */
45
+ userId: string;
46
+ /** Balance data */
47
+ data: UserBalanceEventData;
48
+ }
49
+ //# sourceMappingURL=balance-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance-events.d.ts","sourceRoot":"","sources":["../../../src/websocket/events/balance-events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,GAAG,OAAO,CAAC;AAEzF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,mEAAmE;IACnE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,IAAI,EAAE,oBAAoB,CAAC;CAC5B"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * User Balance WebSocket Event Types
3
+ *
4
+ * Types for real-time user balance update events.
5
+ * This is an authenticated channel - requires JWT token.
6
+ */
7
+ //# sourceMappingURL=balance-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance-events.js","sourceRoot":"","sources":["../../../src/websocket/events/balance-events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,3 +1,4 @@
1
+ export * from "./balance-events";
1
2
  export * from "./movement-events";
2
3
  export * from "./ohlcv-events";
3
4
  export * from "./orderbook-events";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/websocket/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/websocket/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}