@lit-protocol/vincent-ability-hyperliquid 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/CONTRIBUTING.md +5 -0
  3. package/README.md +922 -0
  4. package/dist/CHANGELOG.md +21 -0
  5. package/dist/CONTRIBUTING.md +5 -0
  6. package/dist/README.md +922 -0
  7. package/dist/package.json +35 -0
  8. package/dist/src/generated/lit-action.js +9 -0
  9. package/dist/src/generated/vincent-ability-metadata.json +3 -0
  10. package/dist/src/generated/vincent-bundled-ability.d.ts +483 -0
  11. package/dist/src/generated/vincent-bundled-ability.d.ts.map +1 -0
  12. package/dist/src/generated/vincent-bundled-ability.js +15 -0
  13. package/dist/src/generated/vincent-bundled-ability.js.map +1 -0
  14. package/dist/src/generated/vincent-bundled-ability.ts +13 -0
  15. package/dist/src/index.d.ts +13 -0
  16. package/dist/src/index.d.ts.map +1 -0
  17. package/dist/src/index.js +14 -0
  18. package/dist/src/index.js.map +1 -0
  19. package/dist/src/lib/ability-checks/cancel.d.ts +41 -0
  20. package/dist/src/lib/ability-checks/cancel.d.ts.map +1 -0
  21. package/dist/src/lib/ability-checks/cancel.js +58 -0
  22. package/dist/src/lib/ability-checks/cancel.js.map +1 -0
  23. package/dist/src/lib/ability-checks/deposit-usdc.d.ts +18 -0
  24. package/dist/src/lib/ability-checks/deposit-usdc.d.ts.map +1 -0
  25. package/dist/src/lib/ability-checks/deposit-usdc.js +40 -0
  26. package/dist/src/lib/ability-checks/deposit-usdc.js.map +1 -0
  27. package/dist/src/lib/ability-checks/hyperliquid-account-exists.d.ts +6 -0
  28. package/dist/src/lib/ability-checks/hyperliquid-account-exists.d.ts.map +1 -0
  29. package/dist/src/lib/ability-checks/hyperliquid-account-exists.js +22 -0
  30. package/dist/src/lib/ability-checks/hyperliquid-account-exists.js.map +1 -0
  31. package/dist/src/lib/ability-checks/index.d.ts +11 -0
  32. package/dist/src/lib/ability-checks/index.d.ts.map +1 -0
  33. package/dist/src/lib/ability-checks/index.js +25 -0
  34. package/dist/src/lib/ability-checks/index.js.map +1 -0
  35. package/dist/src/lib/ability-checks/is-builder-code-approved.d.ts +14 -0
  36. package/dist/src/lib/ability-checks/is-builder-code-approved.d.ts.map +1 -0
  37. package/dist/src/lib/ability-checks/is-builder-code-approved.js +29 -0
  38. package/dist/src/lib/ability-checks/is-builder-code-approved.js.map +1 -0
  39. package/dist/src/lib/ability-checks/perp.d.ts +23 -0
  40. package/dist/src/lib/ability-checks/perp.d.ts.map +1 -0
  41. package/dist/src/lib/ability-checks/perp.js +47 -0
  42. package/dist/src/lib/ability-checks/perp.js.map +1 -0
  43. package/dist/src/lib/ability-checks/send-perp-usdc.d.ts +26 -0
  44. package/dist/src/lib/ability-checks/send-perp-usdc.d.ts.map +1 -0
  45. package/dist/src/lib/ability-checks/send-perp-usdc.js +38 -0
  46. package/dist/src/lib/ability-checks/send-perp-usdc.js.map +1 -0
  47. package/dist/src/lib/ability-checks/send-spot-asset.d.ts +27 -0
  48. package/dist/src/lib/ability-checks/send-spot-asset.d.ts.map +1 -0
  49. package/dist/src/lib/ability-checks/send-spot-asset.js +59 -0
  50. package/dist/src/lib/ability-checks/send-spot-asset.js.map +1 -0
  51. package/dist/src/lib/ability-checks/spot.d.ts +24 -0
  52. package/dist/src/lib/ability-checks/spot.d.ts.map +1 -0
  53. package/dist/src/lib/ability-checks/spot.js +98 -0
  54. package/dist/src/lib/ability-checks/spot.js.map +1 -0
  55. package/dist/src/lib/ability-checks/transfer-usdc.d.ts +26 -0
  56. package/dist/src/lib/ability-checks/transfer-usdc.d.ts.map +1 -0
  57. package/dist/src/lib/ability-checks/transfer-usdc.js +64 -0
  58. package/dist/src/lib/ability-checks/transfer-usdc.js.map +1 -0
  59. package/dist/src/lib/ability-checks/withdraw-usdc.d.ts +25 -0
  60. package/dist/src/lib/ability-checks/withdraw-usdc.d.ts.map +1 -0
  61. package/dist/src/lib/ability-checks/withdraw-usdc.js +39 -0
  62. package/dist/src/lib/ability-checks/withdraw-usdc.js.map +1 -0
  63. package/dist/src/lib/ability-helpers/approve-builder-code.d.ts +22 -0
  64. package/dist/src/lib/ability-helpers/approve-builder-code.d.ts.map +1 -0
  65. package/dist/src/lib/ability-helpers/approve-builder-code.js +53 -0
  66. package/dist/src/lib/ability-helpers/approve-builder-code.js.map +1 -0
  67. package/dist/src/lib/ability-helpers/cancel-order/cancel-all-orders.d.ts +21 -0
  68. package/dist/src/lib/ability-helpers/cancel-order/cancel-all-orders.d.ts.map +1 -0
  69. package/dist/src/lib/ability-helpers/cancel-order/cancel-all-orders.js +69 -0
  70. package/dist/src/lib/ability-helpers/cancel-order/cancel-all-orders.js.map +1 -0
  71. package/dist/src/lib/ability-helpers/cancel-order/cancel-order.d.ts +25 -0
  72. package/dist/src/lib/ability-helpers/cancel-order/cancel-order.d.ts.map +1 -0
  73. package/dist/src/lib/ability-helpers/cancel-order/cancel-order.js +63 -0
  74. package/dist/src/lib/ability-helpers/cancel-order/cancel-order.js.map +1 -0
  75. package/dist/src/lib/ability-helpers/execute-perp-order.d.ts +65 -0
  76. package/dist/src/lib/ability-helpers/execute-perp-order.d.ts.map +1 -0
  77. package/dist/src/lib/ability-helpers/execute-perp-order.js +110 -0
  78. package/dist/src/lib/ability-helpers/execute-perp-order.js.map +1 -0
  79. package/dist/src/lib/ability-helpers/execute-spot-order.d.ts +50 -0
  80. package/dist/src/lib/ability-helpers/execute-spot-order.d.ts.map +1 -0
  81. package/dist/src/lib/ability-helpers/execute-spot-order.js +84 -0
  82. package/dist/src/lib/ability-helpers/execute-spot-order.js.map +1 -0
  83. package/dist/src/lib/ability-helpers/get-hyperliquid-chain-id.d.ts +3 -0
  84. package/dist/src/lib/ability-helpers/get-hyperliquid-chain-id.d.ts.map +1 -0
  85. package/dist/src/lib/ability-helpers/get-hyperliquid-chain-id.js +15 -0
  86. package/dist/src/lib/ability-helpers/get-hyperliquid-chain-id.js.map +1 -0
  87. package/dist/src/lib/ability-helpers/get-hyperliquid-nonce.d.ts +2 -0
  88. package/dist/src/lib/ability-helpers/get-hyperliquid-nonce.d.ts.map +1 -0
  89. package/dist/src/lib/ability-helpers/get-hyperliquid-nonce.js +10 -0
  90. package/dist/src/lib/ability-helpers/get-hyperliquid-nonce.js.map +1 -0
  91. package/dist/src/lib/ability-helpers/index.d.ts +12 -0
  92. package/dist/src/lib/ability-helpers/index.d.ts.map +1 -0
  93. package/dist/src/lib/ability-helpers/index.js +26 -0
  94. package/dist/src/lib/ability-helpers/index.js.map +1 -0
  95. package/dist/src/lib/ability-helpers/lit-action-pkp-ethers-wallet.d.ts +74 -0
  96. package/dist/src/lib/ability-helpers/lit-action-pkp-ethers-wallet.d.ts.map +1 -0
  97. package/dist/src/lib/ability-helpers/lit-action-pkp-ethers-wallet.js +192 -0
  98. package/dist/src/lib/ability-helpers/lit-action-pkp-ethers-wallet.js.map +1 -0
  99. package/dist/src/lib/ability-helpers/send-deposit-tx.d.ts +15 -0
  100. package/dist/src/lib/ability-helpers/send-deposit-tx.d.ts.map +1 -0
  101. package/dist/src/lib/ability-helpers/send-deposit-tx.js +82 -0
  102. package/dist/src/lib/ability-helpers/send-deposit-tx.js.map +1 -0
  103. package/dist/src/lib/ability-helpers/send-perp-usdc.d.ts +16 -0
  104. package/dist/src/lib/ability-helpers/send-perp-usdc.d.ts.map +1 -0
  105. package/dist/src/lib/ability-helpers/send-perp-usdc.js +49 -0
  106. package/dist/src/lib/ability-helpers/send-perp-usdc.js.map +1 -0
  107. package/dist/src/lib/ability-helpers/send-spot-asset.d.ts +17 -0
  108. package/dist/src/lib/ability-helpers/send-spot-asset.d.ts.map +1 -0
  109. package/dist/src/lib/ability-helpers/send-spot-asset.js +61 -0
  110. package/dist/src/lib/ability-helpers/send-spot-asset.js.map +1 -0
  111. package/dist/src/lib/ability-helpers/sign-tx.d.ts +3 -0
  112. package/dist/src/lib/ability-helpers/sign-tx.d.ts.map +1 -0
  113. package/dist/src/lib/ability-helpers/sign-tx.js +28 -0
  114. package/dist/src/lib/ability-helpers/sign-tx.js.map +1 -0
  115. package/dist/src/lib/ability-helpers/transfer-usdc-to.d.ts +16 -0
  116. package/dist/src/lib/ability-helpers/transfer-usdc-to.d.ts.map +1 -0
  117. package/dist/src/lib/ability-helpers/transfer-usdc-to.js +50 -0
  118. package/dist/src/lib/ability-helpers/transfer-usdc-to.js.map +1 -0
  119. package/dist/src/lib/ability-helpers/withdraw-usdc.d.ts +16 -0
  120. package/dist/src/lib/ability-helpers/withdraw-usdc.d.ts.map +1 -0
  121. package/dist/src/lib/ability-helpers/withdraw-usdc.js +49 -0
  122. package/dist/src/lib/ability-helpers/withdraw-usdc.js.map +1 -0
  123. package/dist/src/lib/constants.d.ts +3 -0
  124. package/dist/src/lib/constants.d.ts.map +1 -0
  125. package/dist/src/lib/constants.js +6 -0
  126. package/dist/src/lib/constants.js.map +1 -0
  127. package/dist/src/lib/lit-action.d.ts +2 -0
  128. package/dist/src/lib/lit-action.d.ts.map +1 -0
  129. package/dist/src/lib/lit-action.js +16 -0
  130. package/dist/src/lib/lit-action.js.map +1 -0
  131. package/dist/src/lib/schemas.d.ts +687 -0
  132. package/dist/src/lib/schemas.d.ts.map +1 -0
  133. package/dist/src/lib/schemas.js +233 -0
  134. package/dist/src/lib/schemas.js.map +1 -0
  135. package/dist/src/lib/types.d.ts +39 -0
  136. package/dist/src/lib/types.d.ts.map +1 -0
  137. package/dist/src/lib/types.js +45 -0
  138. package/dist/src/lib/types.js.map +1 -0
  139. package/dist/src/lib/vincent-ability.d.ts +480 -0
  140. package/dist/src/lib/vincent-ability.d.ts.map +1 -0
  141. package/dist/src/lib/vincent-ability.js +595 -0
  142. package/dist/src/lib/vincent-ability.js.map +1 -0
  143. package/package.json +34 -0
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeSuccessSchema = exports.executeFailSchema = exports.precheckFailSchema = exports.precheckSuccessSchema = exports.abilityParamsSchema = exports.perpTradeParamsSchema = exports.cancelAllOrdersForSymbolParamsSchema = exports.cancelOrderParamsSchema = exports.spotTradeParamsSchema = exports.orderTypeSchema = exports.sendPerpUsdcParamsSchema = exports.sendSpotAssetParamsSchema = exports.transferParamsSchema = exports.withdrawParamsSchema = exports.depositParamsSchema = exports.actionTypeSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.actionTypeSchema = zod_1.z.enum([
6
+ 'deposit',
7
+ 'withdraw',
8
+ 'sendSpotAsset',
9
+ 'sendPerpUsdc',
10
+ 'transferToSpot',
11
+ 'transferToPerp',
12
+ 'spotBuy',
13
+ 'spotSell',
14
+ 'perpLong',
15
+ 'perpShort',
16
+ 'cancelOrder',
17
+ 'cancelAllOrdersForSymbol',
18
+ 'approveBuilderCode',
19
+ ]);
20
+ exports.depositParamsSchema = zod_1.z.object({
21
+ amount: zod_1.z.string().describe('Amount of USDC to deposit (minimum 6 USDC: 5 USDC + 1 USDC fee)'),
22
+ });
23
+ exports.withdrawParamsSchema = zod_1.z.object({
24
+ amount: zod_1.z
25
+ .string()
26
+ .describe('Amount of USDC to withdraw from Hyperliquid to L1 (Arbitrum), specified in micro-units as a string (e.g., "1000000" means 1.0 USDC; 1 USDC = 1,000,000 micro-units).'),
27
+ destination: zod_1.z
28
+ .string()
29
+ .optional()
30
+ .describe('Destination address on L1 (Arbitrum) to receive the withdrawn USDC. If not provided, defaults to the Agent Wallet PKP ETH address.'),
31
+ });
32
+ exports.transferParamsSchema = zod_1.z.object({
33
+ amount: zod_1.z
34
+ .string()
35
+ .describe('Amount of USDC to transfer to spot or perp, specified in micro-units as a string (e.g., "1000000" means 1.0 USDC; 1 USDC = 1,000,000 micro-units).'),
36
+ });
37
+ exports.sendSpotAssetParamsSchema = zod_1.z.object({
38
+ destination: zod_1.z
39
+ .string()
40
+ .describe('Destination Hyperliquid spot account address to send assets to'),
41
+ token: zod_1.z.string().describe('Token symbol to send (e.g., "USDC", "PURR", etc.)'),
42
+ amount: zod_1.z
43
+ .string()
44
+ .describe('Amount to send, specified in Hyperliquid defined micro-units as a string (e.g., USDC generally has 6 decimals, but Hyperliquid defines it as having 8 decimals so "100000000" means 1.0 USDC).'),
45
+ });
46
+ exports.sendPerpUsdcParamsSchema = zod_1.z.object({
47
+ destination: zod_1.z.string().describe('Destination Hyperliquid perp account address to send USDC to'),
48
+ amount: zod_1.z
49
+ .string()
50
+ .describe('Amount of USDC to send, specified in micro-units as a string (e.g., "1000000" means 1.0 USDC; 1 USDC = 1,000,000 micro-units).'),
51
+ });
52
+ exports.orderTypeSchema = zod_1.z.discriminatedUnion('type', [
53
+ zod_1.z.object({
54
+ type: zod_1.z.literal('limit'),
55
+ tif: zod_1.z
56
+ .enum(['Gtc', 'Ioc', 'Alo'])
57
+ .describe('Time in force: Gtc (Good Till Canceled), Ioc (Immediate Or Cancel), Alo (Add Liquidity Only)'),
58
+ }),
59
+ zod_1.z.object({
60
+ type: zod_1.z.literal('market'),
61
+ }),
62
+ ]);
63
+ exports.spotTradeParamsSchema = zod_1.z
64
+ .object({
65
+ symbol: zod_1.z.string().describe('Trading pair symbol (e.g., "HYPE/USDC")'),
66
+ price: zod_1.z.string().describe('Limit price'),
67
+ size: zod_1.z.string().describe('Order size'),
68
+ orderType: exports.orderTypeSchema
69
+ .optional()
70
+ .describe('Order type: { type: "limit", tif: "Gtc" | "Ioc" | "Alo" } or { type: "market" }. Default: { type: "limit", tif: "Gtc" }'),
71
+ })
72
+ .refine((data) => {
73
+ const parts = data.symbol.split('/');
74
+ return parts.length === 2 && parts[0] && parts[1];
75
+ }, {
76
+ message: 'Invalid trading pair format. Expected format: BASE/QUOTE (e.g., BTC/USDC)',
77
+ });
78
+ exports.cancelOrderParamsSchema = zod_1.z
79
+ .object({
80
+ symbol: zod_1.z.string().describe('Trading pair symbol (e.g., "PURR/USDC")'),
81
+ orderId: zod_1.z.number().describe('Order ID to cancel'),
82
+ })
83
+ .refine((data) => {
84
+ const parts = data.symbol.split('/');
85
+ return parts.length === 2 && parts[0] && parts[1];
86
+ }, {
87
+ message: 'Invalid trading pair format. Expected format: BASE/QUOTE (e.g., BTC/USDC)',
88
+ });
89
+ exports.cancelAllOrdersForSymbolParamsSchema = zod_1.z
90
+ .object({
91
+ symbol: zod_1.z.string().describe('Trading pair symbol to cancel all orders for (e.g., "PURR/USDC")'),
92
+ })
93
+ .refine((data) => {
94
+ const parts = data.symbol.split('/');
95
+ return parts.length === 2 && parts[0] && parts[1];
96
+ }, {
97
+ message: 'Invalid trading pair format. Expected format: BASE/QUOTE (e.g., BTC/USDC)',
98
+ });
99
+ exports.perpTradeParamsSchema = zod_1.z.object({
100
+ symbol: zod_1.z.string().describe('Perpetual symbol (e.g., "ETH")'),
101
+ price: zod_1.z.string().describe('Limit price'),
102
+ size: zod_1.z.string().describe('Order size in base asset'),
103
+ leverage: zod_1.z.number().min(1).max(10).describe('Leverage multiplier (1-10x)'),
104
+ isCross: zod_1.z.boolean().optional().describe('Cross leverage (default: true)'),
105
+ reduceOnly: zod_1.z
106
+ .boolean()
107
+ .optional()
108
+ .describe('Reduce-only: if true, order will only reduce existing position and cannot increase it (default: false). Use this to close positions without worrying about exact size.'),
109
+ orderType: exports.orderTypeSchema
110
+ .optional()
111
+ .describe('Order type: { type: "limit", tif: "Gtc" | "Ioc" | "Alo" } or { type: "market" }. Default: { type: "limit", tif: "Gtc" }'),
112
+ });
113
+ exports.abilityParamsSchema = zod_1.z
114
+ .object({
115
+ action: exports.actionTypeSchema.describe('Action type to execute'),
116
+ // Network selection
117
+ useTestnet: zod_1.z
118
+ .boolean()
119
+ .optional()
120
+ .describe('Use Hyperliquid testnet instead of mainnet (default: false)'),
121
+ // Deposit-specific params
122
+ deposit: exports.depositParamsSchema
123
+ .optional()
124
+ .describe('Deposit parameters (required for deposit action)'),
125
+ // Withdraw-specific params
126
+ withdraw: exports.withdrawParamsSchema
127
+ .optional()
128
+ .describe('Withdraw parameters (required for withdraw action)'),
129
+ // Send spot asset params
130
+ sendSpotAsset: exports.sendSpotAssetParamsSchema
131
+ .optional()
132
+ .describe('Send spot asset parameters (required for sendSpotAsset action)'),
133
+ // Send perp USDC params
134
+ sendPerpUsdc: exports.sendPerpUsdcParamsSchema
135
+ .optional()
136
+ .describe('Send perp USDC parameters (required for sendPerpUsdc action)'),
137
+ // Transfer to spot or perps params
138
+ transfer: exports.transferParamsSchema
139
+ .optional()
140
+ .describe('Transfer to spot or perp parameters (required for transferToSpot/transferToPerp action)'),
141
+ // Spot trading params
142
+ spot: exports.spotTradeParamsSchema
143
+ .optional()
144
+ .describe('Spot trading parameters (required for spotBuy/spotSell)'),
145
+ // Perp trading params
146
+ perp: exports.perpTradeParamsSchema
147
+ .optional()
148
+ .describe('Perpetual trading parameters (required for perpLong/perpShort)'),
149
+ // Cancel order params
150
+ cancelOrder: exports.cancelOrderParamsSchema
151
+ .optional()
152
+ .describe('Cancel specific order (required for cancelOrder action)'),
153
+ // Cancel all orders for symbol params
154
+ cancelAllOrdersForSymbol: exports.cancelAllOrdersForSymbolParamsSchema
155
+ .optional()
156
+ .describe('Cancel all orders for a symbol (required for cancelAllOrdersForSymbol action)'),
157
+ // Arbitrum RPC URL
158
+ arbitrumRpcUrl: zod_1.z.string().optional().describe('Arbitrum RPC URL (required for precheck)'),
159
+ })
160
+ .refine((data) => {
161
+ if (data.action === 'deposit')
162
+ return !!data.deposit;
163
+ if (data.action === 'withdraw')
164
+ return !!data.withdraw;
165
+ if (data.action === 'sendSpotAsset')
166
+ return !!data.sendSpotAsset;
167
+ if (data.action === 'sendPerpUsdc')
168
+ return !!data.sendPerpUsdc;
169
+ if (data.action === 'transferToSpot' || data.action === 'transferToPerp')
170
+ return !!data.transfer;
171
+ if (data.action === 'spotBuy' || data.action === 'spotSell')
172
+ return !!data.spot;
173
+ if (data.action === 'perpLong' || data.action === 'perpShort')
174
+ return !!data.perp;
175
+ if (data.action === 'cancelOrder')
176
+ return !!data.cancelOrder;
177
+ if (data.action === 'cancelAllOrdersForSymbol')
178
+ return !!data.cancelAllOrdersForSymbol;
179
+ if (data.action === 'approveBuilderCode')
180
+ return true; // No params required
181
+ return false;
182
+ }, {
183
+ message: 'Missing required parameters for the specified action',
184
+ });
185
+ exports.precheckSuccessSchema = zod_1.z.object({
186
+ action: zod_1.z.string().describe('Action that was prechecked'),
187
+ availableBalance: zod_1.z
188
+ .string()
189
+ .optional()
190
+ .describe('The available balance of the asset in the Hyperliquid account'),
191
+ isBuilderApproved: zod_1.z
192
+ .boolean()
193
+ .optional()
194
+ .describe('Whether the Vincent builder code is already approved by the Agent Wallet'),
195
+ });
196
+ exports.precheckFailSchema = zod_1.z.object({
197
+ action: zod_1.z.string().describe('Action that was prechecked'),
198
+ reason: zod_1.z.string().describe('The reason the precheck failed'),
199
+ availableBalance: zod_1.z
200
+ .string()
201
+ .optional()
202
+ .describe('The available balance of the asset in the Hyperliquid account'),
203
+ requiredBalance: zod_1.z
204
+ .string()
205
+ .optional()
206
+ .describe('The required balance of the asset in the Hyperliquid account'),
207
+ balanceAsset: zod_1.z.string().optional().describe('The asset in the Hyperliquid account'),
208
+ isBuilderApproved: zod_1.z
209
+ .boolean()
210
+ .optional()
211
+ .describe('Whether the Vincent builder code is already approved by the Agent Wallet'),
212
+ });
213
+ exports.executeFailSchema = zod_1.z.object({
214
+ action: zod_1.z.string().describe('Action that was executed'),
215
+ reason: zod_1.z.string().describe('The reason the execution failed'),
216
+ });
217
+ exports.executeSuccessSchema = zod_1.z.object({
218
+ action: zod_1.z.string().describe('Action that was executed'),
219
+ txHash: zod_1.z.string().optional().describe('Transaction hash (for deposit action)'),
220
+ withdrawResult: zod_1.z.any().optional().describe('Withdraw result (for withdraw action)'),
221
+ sendResult: zod_1.z.any().optional().describe('Send result (for sendAsset action)'),
222
+ transferResult: zod_1.z.any().optional().describe('Transfer result (for transferToSpot action)'),
223
+ orderResult: zod_1.z.any().optional().describe('Order result (for spotBuy/spotSell action)'),
224
+ cancelResult: zod_1.z
225
+ .any()
226
+ .optional()
227
+ .describe('Cancel result (for spotCancelOrder/spotCancelAll action)'),
228
+ approveResult: zod_1.z
229
+ .any()
230
+ .optional()
231
+ .describe('Approve builder code result (for approveBuilderCode action)'),
232
+ });
233
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../src/lib/schemas.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAEX,QAAA,gBAAgB,GAAG,OAAC,CAAC,IAAI,CAAC;IACrC,SAAS;IACT,UAAU;IACV,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,gBAAgB;IAChB,SAAS;IACT,UAAU;IACV,UAAU;IACV,WAAW;IACX,aAAa;IACb,0BAA0B;IAC1B,oBAAoB;CACrB,CAAC,CAAC;AAEU,QAAA,mBAAmB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAC/F,CAAC,CAAC;AAEU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,OAAC;SACN,MAAM,EAAE;SACR,QAAQ,CACP,sKAAsK,CACvK;IACH,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,oIAAoI,CACrI;CACJ,CAAC,CAAC;AAEU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,OAAC;SACN,MAAM,EAAE;SACR,QAAQ,CACP,oJAAoJ,CACrJ;CACJ,CAAC,CAAC;AAEU,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,CAAC,gEAAgE,CAAC;IAC7E,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAC/E,MAAM,EAAE,OAAC;SACN,MAAM,EAAE;SACR,QAAQ,CACP,gMAAgM,CACjM;CACJ,CAAC,CAAC;AAEU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IAChG,MAAM,EAAE,OAAC;SACN,MAAM,EAAE;SACR,QAAQ,CACP,gIAAgI,CACjI;CACJ,CAAC,CAAC;AAEU,QAAA,eAAe,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC1D,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,GAAG,EAAE,OAAC;aACH,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;aAC3B,QAAQ,CACP,8FAA8F,CAC/F;KACJ,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC1B,CAAC;CACH,CAAC,CAAC;AAEU,QAAA,qBAAqB,GAAG,OAAC;KACnC,MAAM,CAAC;IACN,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACtE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IACzC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACvC,SAAS,EAAE,uBAAe;SACvB,QAAQ,EAAE;SACV,QAAQ,CACP,yHAAyH,CAC1H;CACJ,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,EACD;IACE,OAAO,EAAE,2EAA2E;CACrF,CACF,CAAC;AAES,QAAA,uBAAuB,GAAG,OAAC;KACrC,MAAM,CAAC;IACN,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACtE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CACnD,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,EACD;IACE,OAAO,EAAE,2EAA2E;CACrF,CACF,CAAC;AAES,QAAA,oCAAoC,GAAG,OAAC;KAClD,MAAM,CAAC;IACN,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;CAChG,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,EACD;IACE,OAAO,EAAE,2EAA2E;CACrF,CACF,CAAC;AAES,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC7D,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IACzC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACrD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC3E,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC1E,UAAU,EAAE,OAAC;SACV,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,wKAAwK,CACzK;IACH,SAAS,EAAE,uBAAe;SACvB,QAAQ,EAAE;SACV,QAAQ,CACP,yHAAyH,CAC1H;CACJ,CAAC,CAAC;AAEU,QAAA,mBAAmB,GAAG,OAAC;KACjC,MAAM,CAAC;IACN,MAAM,EAAE,wBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC3D,oBAAoB;IACpB,UAAU,EAAE,OAAC;SACV,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,0BAA0B;IAC1B,OAAO,EAAE,2BAAmB;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,2BAA2B;IAC3B,QAAQ,EAAE,4BAAoB;SAC3B,QAAQ,EAAE;SACV,QAAQ,CAAC,oDAAoD,CAAC;IACjE,yBAAyB;IACzB,aAAa,EAAE,iCAAyB;SACrC,QAAQ,EAAE;SACV,QAAQ,CAAC,gEAAgE,CAAC;IAC7E,wBAAwB;IACxB,YAAY,EAAE,gCAAwB;SACnC,QAAQ,EAAE;SACV,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,mCAAmC;IACnC,QAAQ,EAAE,4BAAoB;SAC3B,QAAQ,EAAE;SACV,QAAQ,CACP,yFAAyF,CAC1F;IACH,sBAAsB;IACtB,IAAI,EAAE,6BAAqB;SACxB,QAAQ,EAAE;SACV,QAAQ,CAAC,yDAAyD,CAAC;IACtE,sBAAsB;IACtB,IAAI,EAAE,6BAAqB;SACxB,QAAQ,EAAE;SACV,QAAQ,CAAC,gEAAgE,CAAC;IAC7E,sBAAsB;IACtB,WAAW,EAAE,+BAAuB;SACjC,QAAQ,EAAE;SACV,QAAQ,CAAC,yDAAyD,CAAC;IACtE,sCAAsC;IACtC,wBAAwB,EAAE,4CAAoC;SAC3D,QAAQ,EAAE;SACV,QAAQ,CAAC,+EAA+E,CAAC;IAC5F,mBAAmB;IACnB,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;CAC3F,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACrD,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACvD,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;IACjE,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;IAC/D,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB;QACtE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAChF,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAClF,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IAC7D,IAAI,IAAI,CAAC,MAAM,KAAK,0BAA0B;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC;IACvF,IAAI,IAAI,CAAC,MAAM,KAAK,oBAAoB;QAAE,OAAO,IAAI,CAAC,CAAC,qBAAqB;IAC5E,OAAO,KAAK,CAAC;AACf,CAAC,EACD;IACE,OAAO,EAAE,sDAAsD;CAChE,CACF,CAAC;AAES,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACzD,gBAAgB,EAAE,OAAC;SAChB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,iBAAiB,EAAE,OAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;CACxF,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACzD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC7D,gBAAgB,EAAE,OAAC;SAChB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,eAAe,EAAE,OAAC;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACpF,iBAAiB,EAAE,OAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;CACxF,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACvD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CAC/D,CAAC,CAAC;AAEU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACvD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IAC/E,cAAc,EAAE,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACpF,UAAU,EAAE,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC7E,cAAc,EAAE,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAC1F,WAAW,EAAE,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACtF,YAAY,EAAE,OAAC;SACZ,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,0DAA0D,CAAC;IACvE,aAAa,EAAE,OAAC;SACb,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;CAC3E,CAAC,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Action types for Hyperliquid ability
3
+ */
4
+ export declare enum HyperliquidAction {
5
+ DEPOSIT = "deposit",
6
+ WITHDRAW = "withdraw",
7
+ SEND_SPOT_ASSET = "sendSpotAsset",
8
+ SEND_PERP_USDC = "sendPerpUsdc",
9
+ TRANSFER_TO_SPOT = "transferToSpot",
10
+ TRANSFER_TO_PERP = "transferToPerp",
11
+ SPOT_BUY = "spotBuy",
12
+ SPOT_SELL = "spotSell",
13
+ PERP_LONG = "perpLong",
14
+ PERP_SHORT = "perpShort",
15
+ CANCEL_ORDER = "cancelOrder",
16
+ CANCEL_ALL_ORDERS_FOR_SYMBOL = "cancelAllOrdersForSymbol",
17
+ APPROVE_BUILDER_CODE = "approveBuilderCode"
18
+ }
19
+ /**
20
+ * Time-in-force options for limit orders
21
+ */
22
+ export declare enum TimeInForce {
23
+ /** Good Till Canceled - order stays active until filled or manually canceled */
24
+ GTC = "Gtc",
25
+ /** Immediate Or Cancel - order fills immediately or cancels */
26
+ IOC = "Ioc",
27
+ /** Add Liquidity Only - order only fills if it adds liquidity (maker only) */
28
+ ALO = "Alo"
29
+ }
30
+ /**
31
+ * Order type for trades
32
+ */
33
+ export declare enum OrderType {
34
+ LIMIT = "limit",
35
+ MARKET = "market"
36
+ }
37
+ export declare const HYPERLIQUID_BRIDGE_ADDRESS_MAINNET = "0x2Df1c51E09aECF9cacB7bc98cB1742757f163dF7";
38
+ export declare const ARBITRUM_USDC_ADDRESS_MAINNET = "0xaf88d065e77c8cC2239327C5EDb3A432268e5831";
39
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,eAAe,kBAAkB;IACjC,cAAc,iBAAiB;IAC/B,gBAAgB,mBAAmB;IACnC,gBAAgB,mBAAmB;IACnC,QAAQ,YAAY;IACpB,SAAS,aAAa;IACtB,SAAS,aAAa;IACtB,UAAU,cAAc;IACxB,YAAY,gBAAgB;IAC5B,4BAA4B,6BAA6B;IACzD,oBAAoB,uBAAuB;CAC5C;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB,gFAAgF;IAChF,GAAG,QAAQ;IACX,+DAA+D;IAC/D,GAAG,QAAQ;IACX,8EAA8E;IAC9E,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,kCAAkC,+CAA+C,CAAC;AAE/F,eAAO,MAAM,6BAA6B,+CAA+C,CAAC"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ARBITRUM_USDC_ADDRESS_MAINNET = exports.HYPERLIQUID_BRIDGE_ADDRESS_MAINNET = exports.OrderType = exports.TimeInForce = exports.HyperliquidAction = void 0;
4
+ /**
5
+ * Action types for Hyperliquid ability
6
+ */
7
+ var HyperliquidAction;
8
+ (function (HyperliquidAction) {
9
+ HyperliquidAction["DEPOSIT"] = "deposit";
10
+ HyperliquidAction["WITHDRAW"] = "withdraw";
11
+ HyperliquidAction["SEND_SPOT_ASSET"] = "sendSpotAsset";
12
+ HyperliquidAction["SEND_PERP_USDC"] = "sendPerpUsdc";
13
+ HyperliquidAction["TRANSFER_TO_SPOT"] = "transferToSpot";
14
+ HyperliquidAction["TRANSFER_TO_PERP"] = "transferToPerp";
15
+ HyperliquidAction["SPOT_BUY"] = "spotBuy";
16
+ HyperliquidAction["SPOT_SELL"] = "spotSell";
17
+ HyperliquidAction["PERP_LONG"] = "perpLong";
18
+ HyperliquidAction["PERP_SHORT"] = "perpShort";
19
+ HyperliquidAction["CANCEL_ORDER"] = "cancelOrder";
20
+ HyperliquidAction["CANCEL_ALL_ORDERS_FOR_SYMBOL"] = "cancelAllOrdersForSymbol";
21
+ HyperliquidAction["APPROVE_BUILDER_CODE"] = "approveBuilderCode";
22
+ })(HyperliquidAction || (exports.HyperliquidAction = HyperliquidAction = {}));
23
+ /**
24
+ * Time-in-force options for limit orders
25
+ */
26
+ var TimeInForce;
27
+ (function (TimeInForce) {
28
+ /** Good Till Canceled - order stays active until filled or manually canceled */
29
+ TimeInForce["GTC"] = "Gtc";
30
+ /** Immediate Or Cancel - order fills immediately or cancels */
31
+ TimeInForce["IOC"] = "Ioc";
32
+ /** Add Liquidity Only - order only fills if it adds liquidity (maker only) */
33
+ TimeInForce["ALO"] = "Alo";
34
+ })(TimeInForce || (exports.TimeInForce = TimeInForce = {}));
35
+ /**
36
+ * Order type for trades
37
+ */
38
+ var OrderType;
39
+ (function (OrderType) {
40
+ OrderType["LIMIT"] = "limit";
41
+ OrderType["MARKET"] = "market";
42
+ })(OrderType || (exports.OrderType = OrderType = {}));
43
+ exports.HYPERLIQUID_BRIDGE_ADDRESS_MAINNET = '0x2Df1c51E09aECF9cacB7bc98cB1742757f163dF7';
44
+ exports.ARBITRUM_USDC_ADDRESS_MAINNET = '0xaf88d065e77c8cC2239327C5EDb3A432268e5831';
45
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,iBAcX;AAdD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,sDAAiC,CAAA;IACjC,oDAA+B,CAAA;IAC/B,wDAAmC,CAAA;IACnC,wDAAmC,CAAA;IACnC,yCAAoB,CAAA;IACpB,2CAAsB,CAAA;IACtB,2CAAsB,CAAA;IACtB,6CAAwB,CAAA;IACxB,iDAA4B,CAAA;IAC5B,8EAAyD,CAAA;IACzD,gEAA2C,CAAA;AAC7C,CAAC,EAdW,iBAAiB,iCAAjB,iBAAiB,QAc5B;AAED;;GAEG;AACH,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,gFAAgF;IAChF,0BAAW,CAAA;IACX,+DAA+D;IAC/D,0BAAW,CAAA;IACX,8EAA8E;IAC9E,0BAAW,CAAA;AACb,CAAC,EAPW,WAAW,2BAAX,WAAW,QAOtB;AAED;;GAEG;AACH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,8BAAiB,CAAA;AACnB,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB;AAEY,QAAA,kCAAkC,GAAG,4CAA4C,CAAC;AAElF,QAAA,6BAA6B,GAAG,4CAA4C,CAAC"}