@waiaas/core 2.9.1-rc → 2.10.0-rc

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 (43) hide show
  1. package/dist/errors/error-codes.d.ts +49 -0
  2. package/dist/errors/error-codes.d.ts.map +1 -1
  3. package/dist/errors/error-codes.js +52 -0
  4. package/dist/errors/error-codes.js.map +1 -1
  5. package/dist/i18n/en.d.ts.map +1 -1
  6. package/dist/i18n/en.js +10 -0
  7. package/dist/i18n/en.js.map +1 -1
  8. package/dist/i18n/ko.d.ts.map +1 -1
  9. package/dist/i18n/ko.js +10 -0
  10. package/dist/i18n/ko.js.map +1 -1
  11. package/dist/index.d.ts +2 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +9 -1
  14. package/dist/index.js.map +1 -1
  15. package/dist/interfaces/action-provider.types.d.ts +2 -2
  16. package/dist/interfaces/lending-provider.types.d.ts +2 -2
  17. package/dist/interfaces/perp-provider.types.d.ts +2 -2
  18. package/dist/metrics/metrics-counter.d.ts +31 -0
  19. package/dist/metrics/metrics-counter.d.ts.map +1 -0
  20. package/dist/metrics/metrics-counter.js +10 -0
  21. package/dist/metrics/metrics-counter.js.map +1 -0
  22. package/dist/schemas/admin-stats.schema.d.ts +612 -0
  23. package/dist/schemas/admin-stats.schema.d.ts.map +1 -0
  24. package/dist/schemas/admin-stats.schema.js +105 -0
  25. package/dist/schemas/admin-stats.schema.js.map +1 -0
  26. package/dist/schemas/audit.schema.d.ts +158 -0
  27. package/dist/schemas/audit.schema.d.ts.map +1 -0
  28. package/dist/schemas/audit.schema.js +82 -0
  29. package/dist/schemas/audit.schema.js.map +1 -0
  30. package/dist/schemas/index.d.ts +4 -0
  31. package/dist/schemas/index.d.ts.map +1 -1
  32. package/dist/schemas/index.js +8 -0
  33. package/dist/schemas/index.js.map +1 -1
  34. package/dist/schemas/signing-protocol.d.ts +12 -12
  35. package/dist/schemas/simulation.schema.d.ts +408 -0
  36. package/dist/schemas/simulation.schema.d.ts.map +1 -0
  37. package/dist/schemas/simulation.schema.js +103 -0
  38. package/dist/schemas/simulation.schema.js.map +1 -0
  39. package/dist/schemas/webhook.schema.d.ts +132 -0
  40. package/dist/schemas/webhook.schema.d.ts.map +1 -0
  41. package/dist/schemas/webhook.schema.js +67 -0
  42. package/dist/schemas/webhook.schema.js.map +1 -0
  43. package/package.json +1 -1
@@ -0,0 +1,408 @@
1
+ /**
2
+ * DryRunSimulationResult Zod SSoT schema.
3
+ *
4
+ * Defines the response structure for transaction dry-run simulation.
5
+ * Used by POST /v1/transactions/simulate REST API.
6
+ *
7
+ * Derivation: Zod -> TypeScript types -> OpenAPI (per CLAUDE.md SSoT principle).
8
+ *
9
+ * @see Phase 304 DESIGN-SPEC.md section 2 (SIM-01)
10
+ * @see Phase 309 Plan 01
11
+ */
12
+ import { z } from 'zod';
13
+ export declare const SimulationWarningCodeEnum: z.ZodEnum<["INSUFFICIENT_BALANCE", "INSUFFICIENT_BALANCE_WITH_FEE", "ORACLE_PRICE_UNAVAILABLE", "SIMULATION_FAILED", "HIGH_FEE_RATIO", "APPROVAL_REQUIRED", "DELAY_REQUIRED", "CUMULATIVE_LIMIT_WARNING", "TOKEN_NOT_IN_ALLOWED_LIST", "CONTRACT_NOT_WHITELISTED", "NETWORK_NOT_ALLOWED", "DOWNGRADED_NO_OWNER"]>;
14
+ /** Policy evaluation result from dry-run. */
15
+ export declare const PolicyResultSchema: z.ZodObject<{
16
+ tier: z.ZodEnum<["INSTANT", "NOTIFY", "DELAY", "APPROVAL"]>;
17
+ allowed: z.ZodBoolean;
18
+ reason: z.ZodOptional<z.ZodString>;
19
+ delaySeconds: z.ZodOptional<z.ZodNumber>;
20
+ approvalReason: z.ZodOptional<z.ZodString>;
21
+ downgraded: z.ZodOptional<z.ZodBoolean>;
22
+ cumulativeWarning: z.ZodOptional<z.ZodObject<{
23
+ type: z.ZodEnum<["daily", "monthly"]>;
24
+ ratio: z.ZodNumber;
25
+ spent: z.ZodNumber;
26
+ limit: z.ZodNumber;
27
+ }, "strip", z.ZodTypeAny, {
28
+ type: "daily" | "monthly";
29
+ limit: number;
30
+ ratio: number;
31
+ spent: number;
32
+ }, {
33
+ type: "daily" | "monthly";
34
+ limit: number;
35
+ ratio: number;
36
+ spent: number;
37
+ }>>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
40
+ allowed: boolean;
41
+ reason?: string | undefined;
42
+ delaySeconds?: number | undefined;
43
+ approvalReason?: string | undefined;
44
+ downgraded?: boolean | undefined;
45
+ cumulativeWarning?: {
46
+ type: "daily" | "monthly";
47
+ limit: number;
48
+ ratio: number;
49
+ spent: number;
50
+ } | undefined;
51
+ }, {
52
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
53
+ allowed: boolean;
54
+ reason?: string | undefined;
55
+ delaySeconds?: number | undefined;
56
+ approvalReason?: string | undefined;
57
+ downgraded?: boolean | undefined;
58
+ cumulativeWarning?: {
59
+ type: "daily" | "monthly";
60
+ limit: number;
61
+ ratio: number;
62
+ spent: number;
63
+ } | undefined;
64
+ }>;
65
+ /** Estimated fee result (null when simulation/build fails). */
66
+ export declare const FeeEstimateResultSchema: z.ZodObject<{
67
+ estimatedFee: z.ZodString;
68
+ feeSymbol: z.ZodString;
69
+ feeDecimals: z.ZodNumber;
70
+ feeUsd: z.ZodNullable<z.ZodNumber>;
71
+ needsAtaCreation: z.ZodOptional<z.ZodBoolean>;
72
+ ataRentCost: z.ZodOptional<z.ZodString>;
73
+ }, "strip", z.ZodTypeAny, {
74
+ estimatedFee: string;
75
+ feeSymbol: string;
76
+ feeDecimals: number;
77
+ feeUsd: number | null;
78
+ needsAtaCreation?: boolean | undefined;
79
+ ataRentCost?: string | undefined;
80
+ }, {
81
+ estimatedFee: string;
82
+ feeSymbol: string;
83
+ feeDecimals: number;
84
+ feeUsd: number | null;
85
+ needsAtaCreation?: boolean | undefined;
86
+ ataRentCost?: string | undefined;
87
+ }>;
88
+ /** Predicted balance change for a single asset. */
89
+ export declare const BalanceChangeSchema: z.ZodObject<{
90
+ asset: z.ZodString;
91
+ symbol: z.ZodString;
92
+ decimals: z.ZodNumber;
93
+ currentBalance: z.ZodString;
94
+ changeAmount: z.ZodString;
95
+ afterBalance: z.ZodString;
96
+ }, "strip", z.ZodTypeAny, {
97
+ symbol: string;
98
+ decimals: number;
99
+ asset: string;
100
+ currentBalance: string;
101
+ changeAmount: string;
102
+ afterBalance: string;
103
+ }, {
104
+ symbol: string;
105
+ decimals: number;
106
+ asset: string;
107
+ currentBalance: string;
108
+ changeAmount: string;
109
+ afterBalance: string;
110
+ }>;
111
+ /** Warning entry with machine code and human message. */
112
+ export declare const SimulationWarningSchema: z.ZodObject<{
113
+ code: z.ZodEnum<["INSUFFICIENT_BALANCE", "INSUFFICIENT_BALANCE_WITH_FEE", "ORACLE_PRICE_UNAVAILABLE", "SIMULATION_FAILED", "HIGH_FEE_RATIO", "APPROVAL_REQUIRED", "DELAY_REQUIRED", "CUMULATIVE_LIMIT_WARNING", "TOKEN_NOT_IN_ALLOWED_LIST", "CONTRACT_NOT_WHITELISTED", "NETWORK_NOT_ALLOWED", "DOWNGRADED_NO_OWNER"]>;
114
+ message: z.ZodString;
115
+ severity: z.ZodEnum<["info", "warning", "error"]>;
116
+ }, "strip", z.ZodTypeAny, {
117
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
118
+ message: string;
119
+ severity: "info" | "error" | "warning";
120
+ }, {
121
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
122
+ message: string;
123
+ severity: "info" | "error" | "warning";
124
+ }>;
125
+ /** On-chain simulation detail (wraps IChainAdapter SimulationResult). */
126
+ export declare const SimulationDetailSchema: z.ZodObject<{
127
+ success: z.ZodBoolean;
128
+ logs: z.ZodArray<z.ZodString, "many">;
129
+ unitsConsumed: z.ZodNullable<z.ZodString>;
130
+ error: z.ZodNullable<z.ZodString>;
131
+ }, "strip", z.ZodTypeAny, {
132
+ error: string | null;
133
+ success: boolean;
134
+ logs: string[];
135
+ unitsConsumed: string | null;
136
+ }, {
137
+ error: string | null;
138
+ success: boolean;
139
+ logs: string[];
140
+ unitsConsumed: string | null;
141
+ }>;
142
+ /** Request metadata for the simulation. */
143
+ export declare const SimulationMetaSchema: z.ZodObject<{
144
+ chain: z.ZodEnum<["solana", "ethereum"]>;
145
+ network: z.ZodEnum<["solana-mainnet", "solana-devnet", "solana-testnet", "ethereum-mainnet", "ethereum-sepolia", "polygon-mainnet", "polygon-amoy", "arbitrum-mainnet", "arbitrum-sepolia", "optimism-mainnet", "optimism-sepolia", "base-mainnet", "base-sepolia"]>;
146
+ transactionType: z.ZodString;
147
+ durationMs: z.ZodNumber;
148
+ }, "strip", z.ZodTypeAny, {
149
+ chain: "solana" | "ethereum";
150
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
151
+ transactionType: string;
152
+ durationMs: number;
153
+ }, {
154
+ chain: "solana" | "ethereum";
155
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
156
+ transactionType: string;
157
+ durationMs: number;
158
+ }>;
159
+ /** Complete dry-run simulation result (Zod SSoT). */
160
+ export declare const DryRunSimulationResultSchema: z.ZodObject<{
161
+ success: z.ZodBoolean;
162
+ policy: z.ZodObject<{
163
+ tier: z.ZodEnum<["INSTANT", "NOTIFY", "DELAY", "APPROVAL"]>;
164
+ allowed: z.ZodBoolean;
165
+ reason: z.ZodOptional<z.ZodString>;
166
+ delaySeconds: z.ZodOptional<z.ZodNumber>;
167
+ approvalReason: z.ZodOptional<z.ZodString>;
168
+ downgraded: z.ZodOptional<z.ZodBoolean>;
169
+ cumulativeWarning: z.ZodOptional<z.ZodObject<{
170
+ type: z.ZodEnum<["daily", "monthly"]>;
171
+ ratio: z.ZodNumber;
172
+ spent: z.ZodNumber;
173
+ limit: z.ZodNumber;
174
+ }, "strip", z.ZodTypeAny, {
175
+ type: "daily" | "monthly";
176
+ limit: number;
177
+ ratio: number;
178
+ spent: number;
179
+ }, {
180
+ type: "daily" | "monthly";
181
+ limit: number;
182
+ ratio: number;
183
+ spent: number;
184
+ }>>;
185
+ }, "strip", z.ZodTypeAny, {
186
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
187
+ allowed: boolean;
188
+ reason?: string | undefined;
189
+ delaySeconds?: number | undefined;
190
+ approvalReason?: string | undefined;
191
+ downgraded?: boolean | undefined;
192
+ cumulativeWarning?: {
193
+ type: "daily" | "monthly";
194
+ limit: number;
195
+ ratio: number;
196
+ spent: number;
197
+ } | undefined;
198
+ }, {
199
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
200
+ allowed: boolean;
201
+ reason?: string | undefined;
202
+ delaySeconds?: number | undefined;
203
+ approvalReason?: string | undefined;
204
+ downgraded?: boolean | undefined;
205
+ cumulativeWarning?: {
206
+ type: "daily" | "monthly";
207
+ limit: number;
208
+ ratio: number;
209
+ spent: number;
210
+ } | undefined;
211
+ }>;
212
+ fee: z.ZodNullable<z.ZodObject<{
213
+ estimatedFee: z.ZodString;
214
+ feeSymbol: z.ZodString;
215
+ feeDecimals: z.ZodNumber;
216
+ feeUsd: z.ZodNullable<z.ZodNumber>;
217
+ needsAtaCreation: z.ZodOptional<z.ZodBoolean>;
218
+ ataRentCost: z.ZodOptional<z.ZodString>;
219
+ }, "strip", z.ZodTypeAny, {
220
+ estimatedFee: string;
221
+ feeSymbol: string;
222
+ feeDecimals: number;
223
+ feeUsd: number | null;
224
+ needsAtaCreation?: boolean | undefined;
225
+ ataRentCost?: string | undefined;
226
+ }, {
227
+ estimatedFee: string;
228
+ feeSymbol: string;
229
+ feeDecimals: number;
230
+ feeUsd: number | null;
231
+ needsAtaCreation?: boolean | undefined;
232
+ ataRentCost?: string | undefined;
233
+ }>>;
234
+ balanceChanges: z.ZodArray<z.ZodObject<{
235
+ asset: z.ZodString;
236
+ symbol: z.ZodString;
237
+ decimals: z.ZodNumber;
238
+ currentBalance: z.ZodString;
239
+ changeAmount: z.ZodString;
240
+ afterBalance: z.ZodString;
241
+ }, "strip", z.ZodTypeAny, {
242
+ symbol: string;
243
+ decimals: number;
244
+ asset: string;
245
+ currentBalance: string;
246
+ changeAmount: string;
247
+ afterBalance: string;
248
+ }, {
249
+ symbol: string;
250
+ decimals: number;
251
+ asset: string;
252
+ currentBalance: string;
253
+ changeAmount: string;
254
+ afterBalance: string;
255
+ }>, "many">;
256
+ warnings: z.ZodArray<z.ZodObject<{
257
+ code: z.ZodEnum<["INSUFFICIENT_BALANCE", "INSUFFICIENT_BALANCE_WITH_FEE", "ORACLE_PRICE_UNAVAILABLE", "SIMULATION_FAILED", "HIGH_FEE_RATIO", "APPROVAL_REQUIRED", "DELAY_REQUIRED", "CUMULATIVE_LIMIT_WARNING", "TOKEN_NOT_IN_ALLOWED_LIST", "CONTRACT_NOT_WHITELISTED", "NETWORK_NOT_ALLOWED", "DOWNGRADED_NO_OWNER"]>;
258
+ message: z.ZodString;
259
+ severity: z.ZodEnum<["info", "warning", "error"]>;
260
+ }, "strip", z.ZodTypeAny, {
261
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
262
+ message: string;
263
+ severity: "info" | "error" | "warning";
264
+ }, {
265
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
266
+ message: string;
267
+ severity: "info" | "error" | "warning";
268
+ }>, "many">;
269
+ simulation: z.ZodObject<{
270
+ success: z.ZodBoolean;
271
+ logs: z.ZodArray<z.ZodString, "many">;
272
+ unitsConsumed: z.ZodNullable<z.ZodString>;
273
+ error: z.ZodNullable<z.ZodString>;
274
+ }, "strip", z.ZodTypeAny, {
275
+ error: string | null;
276
+ success: boolean;
277
+ logs: string[];
278
+ unitsConsumed: string | null;
279
+ }, {
280
+ error: string | null;
281
+ success: boolean;
282
+ logs: string[];
283
+ unitsConsumed: string | null;
284
+ }>;
285
+ meta: z.ZodObject<{
286
+ chain: z.ZodEnum<["solana", "ethereum"]>;
287
+ network: z.ZodEnum<["solana-mainnet", "solana-devnet", "solana-testnet", "ethereum-mainnet", "ethereum-sepolia", "polygon-mainnet", "polygon-amoy", "arbitrum-mainnet", "arbitrum-sepolia", "optimism-mainnet", "optimism-sepolia", "base-mainnet", "base-sepolia"]>;
288
+ transactionType: z.ZodString;
289
+ durationMs: z.ZodNumber;
290
+ }, "strip", z.ZodTypeAny, {
291
+ chain: "solana" | "ethereum";
292
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
293
+ transactionType: string;
294
+ durationMs: number;
295
+ }, {
296
+ chain: "solana" | "ethereum";
297
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
298
+ transactionType: string;
299
+ durationMs: number;
300
+ }>;
301
+ }, "strip", z.ZodTypeAny, {
302
+ success: boolean;
303
+ policy: {
304
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
305
+ allowed: boolean;
306
+ reason?: string | undefined;
307
+ delaySeconds?: number | undefined;
308
+ approvalReason?: string | undefined;
309
+ downgraded?: boolean | undefined;
310
+ cumulativeWarning?: {
311
+ type: "daily" | "monthly";
312
+ limit: number;
313
+ ratio: number;
314
+ spent: number;
315
+ } | undefined;
316
+ };
317
+ fee: {
318
+ estimatedFee: string;
319
+ feeSymbol: string;
320
+ feeDecimals: number;
321
+ feeUsd: number | null;
322
+ needsAtaCreation?: boolean | undefined;
323
+ ataRentCost?: string | undefined;
324
+ } | null;
325
+ balanceChanges: {
326
+ symbol: string;
327
+ decimals: number;
328
+ asset: string;
329
+ currentBalance: string;
330
+ changeAmount: string;
331
+ afterBalance: string;
332
+ }[];
333
+ warnings: {
334
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
335
+ message: string;
336
+ severity: "info" | "error" | "warning";
337
+ }[];
338
+ simulation: {
339
+ error: string | null;
340
+ success: boolean;
341
+ logs: string[];
342
+ unitsConsumed: string | null;
343
+ };
344
+ meta: {
345
+ chain: "solana" | "ethereum";
346
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
347
+ transactionType: string;
348
+ durationMs: number;
349
+ };
350
+ }, {
351
+ success: boolean;
352
+ policy: {
353
+ tier: "INSTANT" | "NOTIFY" | "DELAY" | "APPROVAL";
354
+ allowed: boolean;
355
+ reason?: string | undefined;
356
+ delaySeconds?: number | undefined;
357
+ approvalReason?: string | undefined;
358
+ downgraded?: boolean | undefined;
359
+ cumulativeWarning?: {
360
+ type: "daily" | "monthly";
361
+ limit: number;
362
+ ratio: number;
363
+ spent: number;
364
+ } | undefined;
365
+ };
366
+ fee: {
367
+ estimatedFee: string;
368
+ feeSymbol: string;
369
+ feeDecimals: number;
370
+ feeUsd: number | null;
371
+ needsAtaCreation?: boolean | undefined;
372
+ ataRentCost?: string | undefined;
373
+ } | null;
374
+ balanceChanges: {
375
+ symbol: string;
376
+ decimals: number;
377
+ asset: string;
378
+ currentBalance: string;
379
+ changeAmount: string;
380
+ afterBalance: string;
381
+ }[];
382
+ warnings: {
383
+ code: "CUMULATIVE_LIMIT_WARNING" | "INSUFFICIENT_BALANCE" | "INSUFFICIENT_BALANCE_WITH_FEE" | "ORACLE_PRICE_UNAVAILABLE" | "SIMULATION_FAILED" | "HIGH_FEE_RATIO" | "APPROVAL_REQUIRED" | "DELAY_REQUIRED" | "TOKEN_NOT_IN_ALLOWED_LIST" | "CONTRACT_NOT_WHITELISTED" | "NETWORK_NOT_ALLOWED" | "DOWNGRADED_NO_OWNER";
384
+ message: string;
385
+ severity: "info" | "error" | "warning";
386
+ }[];
387
+ simulation: {
388
+ error: string | null;
389
+ success: boolean;
390
+ logs: string[];
391
+ unitsConsumed: string | null;
392
+ };
393
+ meta: {
394
+ chain: "solana" | "ethereum";
395
+ network: "solana-mainnet" | "solana-devnet" | "solana-testnet" | "ethereum-mainnet" | "ethereum-sepolia" | "polygon-mainnet" | "polygon-amoy" | "arbitrum-mainnet" | "arbitrum-sepolia" | "optimism-mainnet" | "optimism-sepolia" | "base-mainnet" | "base-sepolia";
396
+ transactionType: string;
397
+ durationMs: number;
398
+ };
399
+ }>;
400
+ export type SimulationWarningCode = z.infer<typeof SimulationWarningCodeEnum>;
401
+ export type PolicyResult = z.infer<typeof PolicyResultSchema>;
402
+ export type FeeEstimateResult = z.infer<typeof FeeEstimateResultSchema>;
403
+ export type BalanceChange = z.infer<typeof BalanceChangeSchema>;
404
+ export type SimulationWarning = z.infer<typeof SimulationWarningSchema>;
405
+ export type SimulationDetail = z.infer<typeof SimulationDetailSchema>;
406
+ export type SimulationMeta = z.infer<typeof SimulationMetaSchema>;
407
+ export type DryRunSimulationResult = z.infer<typeof DryRunSimulationResultSchema>;
408
+ //# sourceMappingURL=simulation.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/simulation.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,yBAAyB,mTAapC,CAAC;AAMH,6CAA6C;AAC7C,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe7B,CAAC;AAEH,+DAA+D;AAC/D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;EAOlC,CAAC;AAEH,mDAAmD;AACnD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH,yEAAyE;AACzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;EAKjC,CAAC;AAEH,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;EAK/B,CAAC;AAMH,qDAAqD;AACrD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQvC,CAAC;AAMH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC9E,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * DryRunSimulationResult Zod SSoT schema.
3
+ *
4
+ * Defines the response structure for transaction dry-run simulation.
5
+ * Used by POST /v1/transactions/simulate REST API.
6
+ *
7
+ * Derivation: Zod -> TypeScript types -> OpenAPI (per CLAUDE.md SSoT principle).
8
+ *
9
+ * @see Phase 304 DESIGN-SPEC.md section 2 (SIM-01)
10
+ * @see Phase 309 Plan 01
11
+ */
12
+ import { z } from 'zod';
13
+ import { PolicyTierEnum } from '../enums/policy.js';
14
+ import { ChainTypeEnum, NetworkTypeEnum } from '../enums/chain.js';
15
+ // ---------------------------------------------------------------------------
16
+ // Warning codes (12 codes per design spec section 2.2)
17
+ // ---------------------------------------------------------------------------
18
+ export const SimulationWarningCodeEnum = z.enum([
19
+ 'INSUFFICIENT_BALANCE',
20
+ 'INSUFFICIENT_BALANCE_WITH_FEE',
21
+ 'ORACLE_PRICE_UNAVAILABLE',
22
+ 'SIMULATION_FAILED',
23
+ 'HIGH_FEE_RATIO',
24
+ 'APPROVAL_REQUIRED',
25
+ 'DELAY_REQUIRED',
26
+ 'CUMULATIVE_LIMIT_WARNING',
27
+ 'TOKEN_NOT_IN_ALLOWED_LIST',
28
+ 'CONTRACT_NOT_WHITELISTED',
29
+ 'NETWORK_NOT_ALLOWED',
30
+ 'DOWNGRADED_NO_OWNER',
31
+ ]);
32
+ // ---------------------------------------------------------------------------
33
+ // Sub-schemas
34
+ // ---------------------------------------------------------------------------
35
+ /** Policy evaluation result from dry-run. */
36
+ export const PolicyResultSchema = z.object({
37
+ tier: PolicyTierEnum,
38
+ allowed: z.boolean(),
39
+ reason: z.string().optional(),
40
+ delaySeconds: z.number().optional(),
41
+ approvalReason: z.string().optional(),
42
+ downgraded: z.boolean().optional(),
43
+ cumulativeWarning: z
44
+ .object({
45
+ type: z.enum(['daily', 'monthly']),
46
+ ratio: z.number(),
47
+ spent: z.number(),
48
+ limit: z.number(),
49
+ })
50
+ .optional(),
51
+ });
52
+ /** Estimated fee result (null when simulation/build fails). */
53
+ export const FeeEstimateResultSchema = z.object({
54
+ estimatedFee: z.string(),
55
+ feeSymbol: z.string(),
56
+ feeDecimals: z.number(),
57
+ feeUsd: z.number().nullable(),
58
+ needsAtaCreation: z.boolean().optional(),
59
+ ataRentCost: z.string().optional(),
60
+ });
61
+ /** Predicted balance change for a single asset. */
62
+ export const BalanceChangeSchema = z.object({
63
+ asset: z.string(),
64
+ symbol: z.string(),
65
+ decimals: z.number(),
66
+ currentBalance: z.string(),
67
+ changeAmount: z.string(),
68
+ afterBalance: z.string(),
69
+ });
70
+ /** Warning entry with machine code and human message. */
71
+ export const SimulationWarningSchema = z.object({
72
+ code: SimulationWarningCodeEnum,
73
+ message: z.string(),
74
+ severity: z.enum(['info', 'warning', 'error']),
75
+ });
76
+ /** On-chain simulation detail (wraps IChainAdapter SimulationResult). */
77
+ export const SimulationDetailSchema = z.object({
78
+ success: z.boolean(),
79
+ logs: z.array(z.string()),
80
+ unitsConsumed: z.string().nullable(),
81
+ error: z.string().nullable(),
82
+ });
83
+ /** Request metadata for the simulation. */
84
+ export const SimulationMetaSchema = z.object({
85
+ chain: ChainTypeEnum,
86
+ network: NetworkTypeEnum,
87
+ transactionType: z.string(),
88
+ durationMs: z.number(),
89
+ });
90
+ // ---------------------------------------------------------------------------
91
+ // Top-level schema
92
+ // ---------------------------------------------------------------------------
93
+ /** Complete dry-run simulation result (Zod SSoT). */
94
+ export const DryRunSimulationResultSchema = z.object({
95
+ success: z.boolean(),
96
+ policy: PolicyResultSchema,
97
+ fee: FeeEstimateResultSchema.nullable(),
98
+ balanceChanges: z.array(BalanceChangeSchema),
99
+ warnings: z.array(SimulationWarningSchema),
100
+ simulation: SimulationDetailSchema,
101
+ meta: SimulationMetaSchema,
102
+ });
103
+ //# sourceMappingURL=simulation.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation.schema.js","sourceRoot":"","sources":["../../src/schemas/simulation.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Webhook Outbound Zod SSoT schemas.
3
+ *
4
+ * Defines webhook CRUD request/response schemas, delivery log schemas,
5
+ * and event type reuse from audit event types.
6
+ *
7
+ * Derivation order: Zod -> TypeScript types -> OpenAPI (via @hono/zod-openapi)
8
+ *
9
+ * @see .planning/milestones/v30.0-phases/307/DESIGN-SPEC.md (OPS-04)
10
+ */
11
+ import { z } from 'zod';
12
+ export declare const WEBHOOK_EVENT_TYPES: readonly ["WALLET_CREATED", "WALLET_SUSPENDED", "SESSION_CREATED", "SESSION_REVOKED", "SESSION_ISSUED_VIA_TELEGRAM", "TX_SUBMITTED", "TX_CONFIRMED", "TX_FAILED", "TX_APPROVED_VIA_TELEGRAM", "TX_REJECTED_VIA_TELEGRAM", "TX_CANCELLED_VIA_TELEGRAM", "UNLISTED_TOKEN_TRANSFER", "POLICY_DENIED", "KILL_SWITCH_ACTIVATED", "KILL_SWITCH_ESCALATED", "KILL_SWITCH_RECOVERED", "AUTO_STOP_TRIGGERED", "MASTER_AUTH_FAILED", "OWNER_REGISTERED", "NOTIFICATION_TOTAL_FAILURE"];
13
+ export declare const WebhookEventTypeSchema: z.ZodEnum<["WALLET_CREATED", "WALLET_SUSPENDED", "SESSION_CREATED", "SESSION_REVOKED", "SESSION_ISSUED_VIA_TELEGRAM", "TX_SUBMITTED", "TX_CONFIRMED", "TX_FAILED", "TX_APPROVED_VIA_TELEGRAM", "TX_REJECTED_VIA_TELEGRAM", "TX_CANCELLED_VIA_TELEGRAM", "UNLISTED_TOKEN_TRANSFER", "POLICY_DENIED", "KILL_SWITCH_ACTIVATED", "KILL_SWITCH_ESCALATED", "KILL_SWITCH_RECOVERED", "AUTO_STOP_TRIGGERED", "MASTER_AUTH_FAILED", "OWNER_REGISTERED", "NOTIFICATION_TOTAL_FAILURE"]>;
14
+ export type WebhookEventType = z.infer<typeof WebhookEventTypeSchema>;
15
+ export declare const CreateWebhookRequestSchema: z.ZodObject<{
16
+ url: z.ZodString;
17
+ events: z.ZodDefault<z.ZodArray<z.ZodEnum<["WALLET_CREATED", "WALLET_SUSPENDED", "SESSION_CREATED", "SESSION_REVOKED", "SESSION_ISSUED_VIA_TELEGRAM", "TX_SUBMITTED", "TX_CONFIRMED", "TX_FAILED", "TX_APPROVED_VIA_TELEGRAM", "TX_REJECTED_VIA_TELEGRAM", "TX_CANCELLED_VIA_TELEGRAM", "UNLISTED_TOKEN_TRANSFER", "POLICY_DENIED", "KILL_SWITCH_ACTIVATED", "KILL_SWITCH_ESCALATED", "KILL_SWITCH_RECOVERED", "AUTO_STOP_TRIGGERED", "MASTER_AUTH_FAILED", "OWNER_REGISTERED", "NOTIFICATION_TOTAL_FAILURE"]>, "many">>;
18
+ description: z.ZodOptional<z.ZodString>;
19
+ }, "strip", z.ZodTypeAny, {
20
+ url: string;
21
+ events: ("TX_SUBMITTED" | "TX_CONFIRMED" | "TX_FAILED" | "WALLET_SUSPENDED" | "KILL_SWITCH_ACTIVATED" | "KILL_SWITCH_RECOVERED" | "KILL_SWITCH_ESCALATED" | "AUTO_STOP_TRIGGERED" | "SESSION_CREATED" | "WALLET_CREATED" | "SESSION_REVOKED" | "SESSION_ISSUED_VIA_TELEGRAM" | "TX_APPROVED_VIA_TELEGRAM" | "TX_REJECTED_VIA_TELEGRAM" | "TX_CANCELLED_VIA_TELEGRAM" | "UNLISTED_TOKEN_TRANSFER" | "POLICY_DENIED" | "MASTER_AUTH_FAILED" | "OWNER_REGISTERED" | "NOTIFICATION_TOTAL_FAILURE")[];
22
+ description?: string | undefined;
23
+ }, {
24
+ url: string;
25
+ events?: ("TX_SUBMITTED" | "TX_CONFIRMED" | "TX_FAILED" | "WALLET_SUSPENDED" | "KILL_SWITCH_ACTIVATED" | "KILL_SWITCH_RECOVERED" | "KILL_SWITCH_ESCALATED" | "AUTO_STOP_TRIGGERED" | "SESSION_CREATED" | "WALLET_CREATED" | "SESSION_REVOKED" | "SESSION_ISSUED_VIA_TELEGRAM" | "TX_APPROVED_VIA_TELEGRAM" | "TX_REJECTED_VIA_TELEGRAM" | "TX_CANCELLED_VIA_TELEGRAM" | "UNLISTED_TOKEN_TRANSFER" | "POLICY_DENIED" | "MASTER_AUTH_FAILED" | "OWNER_REGISTERED" | "NOTIFICATION_TOTAL_FAILURE")[] | undefined;
26
+ description?: string | undefined;
27
+ }>;
28
+ export type CreateWebhookRequest = z.infer<typeof CreateWebhookRequestSchema>;
29
+ export declare const WebhookResponseSchema: z.ZodObject<{
30
+ id: z.ZodString;
31
+ url: z.ZodString;
32
+ events: z.ZodArray<z.ZodString, "many">;
33
+ description: z.ZodNullable<z.ZodString>;
34
+ enabled: z.ZodBoolean;
35
+ createdAt: z.ZodNumber;
36
+ updatedAt: z.ZodNumber;
37
+ }, "strip", z.ZodTypeAny, {
38
+ id: string;
39
+ createdAt: number;
40
+ updatedAt: number;
41
+ enabled: boolean;
42
+ url: string;
43
+ events: string[];
44
+ description: string | null;
45
+ }, {
46
+ id: string;
47
+ createdAt: number;
48
+ updatedAt: number;
49
+ enabled: boolean;
50
+ url: string;
51
+ events: string[];
52
+ description: string | null;
53
+ }>;
54
+ export type WebhookResponse = z.infer<typeof WebhookResponseSchema>;
55
+ export declare const CreateWebhookResponseSchema: z.ZodObject<{
56
+ id: z.ZodString;
57
+ url: z.ZodString;
58
+ events: z.ZodArray<z.ZodString, "many">;
59
+ description: z.ZodNullable<z.ZodString>;
60
+ enabled: z.ZodBoolean;
61
+ createdAt: z.ZodNumber;
62
+ updatedAt: z.ZodNumber;
63
+ } & {
64
+ secret: z.ZodString;
65
+ }, "strip", z.ZodTypeAny, {
66
+ id: string;
67
+ createdAt: number;
68
+ updatedAt: number;
69
+ enabled: boolean;
70
+ url: string;
71
+ events: string[];
72
+ description: string | null;
73
+ secret: string;
74
+ }, {
75
+ id: string;
76
+ createdAt: number;
77
+ updatedAt: number;
78
+ enabled: boolean;
79
+ url: string;
80
+ events: string[];
81
+ description: string | null;
82
+ secret: string;
83
+ }>;
84
+ export type CreateWebhookResponse = z.infer<typeof CreateWebhookResponseSchema>;
85
+ export declare const WEBHOOK_LOG_STATUSES: readonly ["success", "failed"];
86
+ export declare const WebhookLogSchema: z.ZodObject<{
87
+ id: z.ZodString;
88
+ webhookId: z.ZodString;
89
+ eventType: z.ZodString;
90
+ status: z.ZodEnum<["success", "failed"]>;
91
+ httpStatus: z.ZodNullable<z.ZodNumber>;
92
+ attempt: z.ZodNumber;
93
+ error: z.ZodNullable<z.ZodString>;
94
+ requestDuration: z.ZodNullable<z.ZodNumber>;
95
+ createdAt: z.ZodNumber;
96
+ }, "strip", z.ZodTypeAny, {
97
+ status: "failed" | "success";
98
+ id: string;
99
+ createdAt: number;
100
+ error: string | null;
101
+ eventType: string;
102
+ webhookId: string;
103
+ httpStatus: number | null;
104
+ attempt: number;
105
+ requestDuration: number | null;
106
+ }, {
107
+ status: "failed" | "success";
108
+ id: string;
109
+ createdAt: number;
110
+ error: string | null;
111
+ eventType: string;
112
+ webhookId: string;
113
+ httpStatus: number | null;
114
+ attempt: number;
115
+ requestDuration: number | null;
116
+ }>;
117
+ export type WebhookLog = z.infer<typeof WebhookLogSchema>;
118
+ export declare const WebhookLogQuerySchema: z.ZodObject<{
119
+ status: z.ZodOptional<z.ZodEnum<["success", "failed"]>>;
120
+ event_type: z.ZodOptional<z.ZodEnum<["WALLET_CREATED", "WALLET_SUSPENDED", "SESSION_CREATED", "SESSION_REVOKED", "SESSION_ISSUED_VIA_TELEGRAM", "TX_SUBMITTED", "TX_CONFIRMED", "TX_FAILED", "TX_APPROVED_VIA_TELEGRAM", "TX_REJECTED_VIA_TELEGRAM", "TX_CANCELLED_VIA_TELEGRAM", "UNLISTED_TOKEN_TRANSFER", "POLICY_DENIED", "KILL_SWITCH_ACTIVATED", "KILL_SWITCH_ESCALATED", "KILL_SWITCH_RECOVERED", "AUTO_STOP_TRIGGERED", "MASTER_AUTH_FAILED", "OWNER_REGISTERED", "NOTIFICATION_TOTAL_FAILURE"]>>;
121
+ limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
122
+ }, "strip", z.ZodTypeAny, {
123
+ status?: "failed" | "success" | undefined;
124
+ limit?: number | undefined;
125
+ event_type?: "TX_SUBMITTED" | "TX_CONFIRMED" | "TX_FAILED" | "WALLET_SUSPENDED" | "KILL_SWITCH_ACTIVATED" | "KILL_SWITCH_RECOVERED" | "KILL_SWITCH_ESCALATED" | "AUTO_STOP_TRIGGERED" | "SESSION_CREATED" | "WALLET_CREATED" | "SESSION_REVOKED" | "SESSION_ISSUED_VIA_TELEGRAM" | "TX_APPROVED_VIA_TELEGRAM" | "TX_REJECTED_VIA_TELEGRAM" | "TX_CANCELLED_VIA_TELEGRAM" | "UNLISTED_TOKEN_TRANSFER" | "POLICY_DENIED" | "MASTER_AUTH_FAILED" | "OWNER_REGISTERED" | "NOTIFICATION_TOTAL_FAILURE" | undefined;
126
+ }, {
127
+ status?: "failed" | "success" | undefined;
128
+ limit?: number | undefined;
129
+ event_type?: "TX_SUBMITTED" | "TX_CONFIRMED" | "TX_FAILED" | "WALLET_SUSPENDED" | "KILL_SWITCH_ACTIVATED" | "KILL_SWITCH_RECOVERED" | "KILL_SWITCH_ESCALATED" | "AUTO_STOP_TRIGGERED" | "SESSION_CREATED" | "WALLET_CREATED" | "SESSION_REVOKED" | "SESSION_ISSUED_VIA_TELEGRAM" | "TX_APPROVED_VIA_TELEGRAM" | "TX_REJECTED_VIA_TELEGRAM" | "TX_CANCELLED_VIA_TELEGRAM" | "UNLISTED_TOKEN_TRANSFER" | "POLICY_DENIED" | "MASTER_AUTH_FAILED" | "OWNER_REGISTERED" | "NOTIFICATION_TOTAL_FAILURE" | undefined;
130
+ }>;
131
+ export type WebhookLogQuery = z.infer<typeof WebhookLogQuerySchema>;
132
+ //# sourceMappingURL=webhook.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/webhook.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,mBAAmB,8cAAoB,CAAC;AACrD,eAAO,MAAM,sBAAsB,gdAA8B,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;EAIrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAM9E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAMpE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAMhF,eAAO,MAAM,oBAAoB,gCAAiC,CAAC;AAEnE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAM1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAIhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}