@paraswap/dex-lib 4.0.3-Cables.1 → 4.0.3

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 (216) hide show
  1. package/.vscode/launch.json +53 -0
  2. package/.vscode/settings.json +2 -0
  3. package/.vscode/tasks.json +15 -0
  4. package/build/abi/{integral/pool.json → inception/inception-ineth-pool.json} +558 -537
  5. package/build/abi/inception/inception-ratio-feed.json +329 -0
  6. package/build/abi/inception/inception-vault.json +991 -0
  7. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  8. package/build/abi/usual-m-smart-m/usualM.abi.json +483 -0
  9. package/build/abi/usual-m-usd0/usualCollateralDao.abi.json +681 -0
  10. package/build/abi/usual-m-wrapped-m/usualM.abi.json +509 -0
  11. package/build/abi/{integral/relayer.json → wombat/pool.json} +474 -721
  12. package/build/dex/aave-v1/aave-v1.d.ts +2 -1
  13. package/build/dex/aave-v1/aave-v1.js +23 -0
  14. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  15. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  16. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  17. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  18. package/build/dex/algebra/algebra.js +2 -31
  19. package/build/dex/algebra/algebra.js.map +1 -1
  20. package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
  21. package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
  22. package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
  23. package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
  24. package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
  25. package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
  26. package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
  27. package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
  28. package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
  29. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
  30. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
  31. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
  32. package/build/dex/bebop/bebop.js +1 -1
  33. package/build/dex/bebop/bebop.js.map +1 -1
  34. package/build/dex/cables/cables.d.ts +2 -4
  35. package/build/dex/cables/cables.js +154 -89
  36. package/build/dex/cables/cables.js.map +1 -1
  37. package/build/dex/cables/constants.js +1 -1
  38. package/build/dex/cables/constants.js.map +1 -1
  39. package/build/dex/cables/rate-fetcher.js +10 -26
  40. package/build/dex/cables/rate-fetcher.js.map +1 -1
  41. package/build/dex/cables/types.d.ts +28 -15
  42. package/build/dex/cables/types.js +13 -2
  43. package/build/dex/cables/types.js.map +1 -1
  44. package/build/dex/dexalot/dexalot.js.map +1 -1
  45. package/build/dex/inception/config.d.ts +4 -0
  46. package/build/dex/inception/config.js +109 -0
  47. package/build/dex/inception/config.js.map +1 -0
  48. package/build/dex/inception/inception-event-pool.d.ts +16 -0
  49. package/build/dex/inception/inception-event-pool.js +49 -0
  50. package/build/dex/inception/inception-event-pool.js.map +1 -0
  51. package/build/dex/inception/inception.d.ts +43 -0
  52. package/build/dex/inception/inception.js +180 -0
  53. package/build/dex/inception/inception.js.map +1 -0
  54. package/build/dex/inception/tokens.d.ts +9 -0
  55. package/build/dex/inception/tokens.js +28 -0
  56. package/build/dex/inception/tokens.js.map +1 -0
  57. package/build/dex/inception/types.d.ts +22 -0
  58. package/build/dex/inception/types.js +3 -0
  59. package/build/dex/inception/types.js.map +1 -0
  60. package/build/dex/inception/utils.d.ts +7 -0
  61. package/build/dex/inception/utils.js +58 -0
  62. package/build/dex/inception/utils.js.map +1 -0
  63. package/build/dex/index.js +0 -2
  64. package/build/dex/index.js.map +1 -1
  65. package/build/dex/jarvis.d.ts +2 -1
  66. package/build/dex/jarvis.js +58 -0
  67. package/build/dex/jarvis.js.map +1 -1
  68. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  69. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  70. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  71. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  72. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  73. package/build/dex/platypus/platypus.d.ts +2 -1
  74. package/build/dex/platypus/platypus.js +45 -0
  75. package/build/dex/platypus/platypus.js.map +1 -1
  76. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  77. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  78. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  79. package/build/dex/stable-pool.js +1 -8
  80. package/build/dex/stable-pool.js.map +1 -1
  81. package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
  82. package/build/dex/swaap-v1/swaap-v1.js +14 -0
  83. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  84. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  85. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  86. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  87. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  88. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  89. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  90. package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
  91. package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
  92. package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
  93. package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
  94. package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
  95. package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
  96. package/build/dex/usual/types.d.ts +13 -0
  97. package/build/dex/usual/types.js +3 -0
  98. package/build/dex/usual/types.js.map +1 -0
  99. package/build/dex/usual/usual-bond.d.ts +18 -0
  100. package/build/dex/usual/usual-bond.js +52 -0
  101. package/build/dex/usual/usual-bond.js.map +1 -0
  102. package/build/dex/usual/usual-m-smart-m.d.ts +17 -0
  103. package/build/dex/usual/usual-m-smart-m.js +50 -0
  104. package/build/dex/usual/usual-m-smart-m.js.map +1 -0
  105. package/build/dex/usual/usual-m-usd0.d.ts +17 -0
  106. package/build/dex/usual/usual-m-usd0.js +51 -0
  107. package/build/dex/usual/usual-m-usd0.js.map +1 -0
  108. package/build/dex/usual/usual-m-wrapped-m.d.ts +17 -0
  109. package/build/dex/usual/usual-m-wrapped-m.js +50 -0
  110. package/build/dex/usual/usual-m-wrapped-m.js.map +1 -0
  111. package/build/dex/usual/usual.d.ts +27 -0
  112. package/build/dex/usual/usual.js +125 -0
  113. package/build/dex/usual/usual.js.map +1 -0
  114. package/build/dex/usual-m-smart-m/config.d.ts +3 -0
  115. package/build/dex/usual-m-smart-m/config.js +13 -0
  116. package/build/dex/usual-m-smart-m/config.js.map +1 -0
  117. package/build/dex/usual-m-smart-m/types.d.ts +7 -0
  118. package/build/dex/usual-m-smart-m/types.js +3 -0
  119. package/build/dex/usual-m-smart-m/types.js.map +1 -0
  120. package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
  121. package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
  122. package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
  123. package/build/dex/usual-m-usd0/config.d.ts +3 -0
  124. package/build/dex/usual-m-usd0/config.js +14 -0
  125. package/build/dex/usual-m-usd0/config.js.map +1 -0
  126. package/build/dex/usual-m-usd0/types.d.ts +8 -0
  127. package/build/dex/usual-m-usd0/types.js +3 -0
  128. package/build/dex/usual-m-usd0/types.js.map +1 -0
  129. package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
  130. package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
  131. package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
  132. package/build/dex/zerox/index.d.ts +4 -26
  133. package/build/dex/zerox/index.js +50 -42
  134. package/build/dex/zerox/index.js.map +1 -1
  135. package/build/dex/zerox/types.d.ts +29 -0
  136. package/build/dex/zerox/types.js +8 -1
  137. package/build/dex/zerox/types.js.map +1 -1
  138. package/build/executor/Executor01BytecodeBuilder.js +6 -11
  139. package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
  140. package/build/executor/Executor02BytecodeBuilder.js +6 -11
  141. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  142. package/build/executor/Executor03BytecodeBuilder.js +6 -11
  143. package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
  144. package/build/lib/pub-sub.d.ts +35 -0
  145. package/build/lib/pub-sub.js +106 -0
  146. package/build/lib/pub-sub.js.map +1 -0
  147. package/build/types.d.ts +0 -1
  148. package/package.json +1 -1
  149. package/src/dex/algebra/algebra.ts +9 -48
  150. package/src/dex/bebop/bebop.ts +1 -1
  151. package/src/dex/dexalot/dexalot.ts +0 -1
  152. package/src/dex/index.ts +0 -2
  153. package/src/executor/Executor01BytecodeBuilder.ts +11 -15
  154. package/src/executor/Executor02BytecodeBuilder.ts +9 -13
  155. package/src/executor/Executor03BytecodeBuilder.ts +9 -16
  156. package/src/types.ts +0 -1
  157. package/tests/constants-e2e.ts +2 -2
  158. package/.idea/aws.xml +0 -17
  159. package/.idea/codeStyles/Project.xml +0 -19
  160. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  161. package/.idea/misc.xml +0 -6
  162. package/.idea/modules.xml +0 -8
  163. package/.idea/paraswap-dex-lib.iml +0 -9
  164. package/.idea/prettier.xml +0 -7
  165. package/.idea/vcs.xml +0 -6
  166. package/build/abi/integral/factory.json +0 -333
  167. package/build/abi/integral/oracle.json +0 -501
  168. package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +0 -49
  169. package/build/dex/fluid-dex/fluid-dex-generate-pool.js +0 -104
  170. package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +0 -1
  171. package/build/dex/integral/config.d.ts +0 -4
  172. package/build/dex/integral/config.js +0 -20
  173. package/build/dex/integral/config.js.map +0 -1
  174. package/build/dex/integral/context.d.ts +0 -40
  175. package/build/dex/integral/context.js +0 -158
  176. package/build/dex/integral/context.js.map +0 -1
  177. package/build/dex/integral/integral-factory.d.ts +0 -24
  178. package/build/dex/integral/integral-factory.js +0 -95
  179. package/build/dex/integral/integral-factory.js.map +0 -1
  180. package/build/dex/integral/integral-pool.d.ts +0 -50
  181. package/build/dex/integral/integral-pool.js +0 -149
  182. package/build/dex/integral/integral-pool.js.map +0 -1
  183. package/build/dex/integral/integral-pricing.d.ts +0 -18
  184. package/build/dex/integral/integral-pricing.js +0 -114
  185. package/build/dex/integral/integral-pricing.js.map +0 -1
  186. package/build/dex/integral/integral-relayer.d.ts +0 -42
  187. package/build/dex/integral/integral-relayer.js +0 -192
  188. package/build/dex/integral/integral-relayer.js.map +0 -1
  189. package/build/dex/integral/integral-token.d.ts +0 -27
  190. package/build/dex/integral/integral-token.js +0 -59
  191. package/build/dex/integral/integral-token.js.map +0 -1
  192. package/build/dex/integral/integral.d.ts +0 -41
  193. package/build/dex/integral/integral.js +0 -376
  194. package/build/dex/integral/integral.js.map +0 -1
  195. package/build/dex/integral/types.d.ts +0 -85
  196. package/build/dex/integral/types.js +0 -9
  197. package/build/dex/integral/types.js.map +0 -1
  198. package/build/dex/integral/utils-e2e.d.ts +0 -9
  199. package/build/dex/integral/utils-e2e.js +0 -131
  200. package/build/dex/integral/utils-e2e.js.map +0 -1
  201. package/build/dex/integral/utils.d.ts +0 -17
  202. package/build/dex/integral/utils.js +0 -94
  203. package/build/dex/integral/utils.js.map +0 -1
  204. package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
  205. package/build/dex/trader-joe-v2.1/optimizer.js +0 -47
  206. package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
  207. package/src/abi/cables/CablesMainnetRFQ.json +0 -1083
  208. package/src/dex/cables/cables-e2e.test.ts +0 -207
  209. package/src/dex/cables/cables-integration.test.ts +0 -391
  210. package/src/dex/cables/cables.ts +0 -824
  211. package/src/dex/cables/config.ts +0 -13
  212. package/src/dex/cables/constants.ts +0 -35
  213. package/src/dex/cables/rate-fetcher.ts +0 -212
  214. package/src/dex/cables/types.ts +0 -113
  215. package/src/dex/cables/validators.test.ts +0 -151
  216. package/src/dex/cables/validators.ts +0 -61
@@ -0,0 +1,729 @@
1
+ export declare const balancerBatchRouterAbi: readonly [{
2
+ readonly inputs: readonly [{
3
+ readonly internalType: "contract IVault";
4
+ readonly name: "vault";
5
+ readonly type: "address";
6
+ }, {
7
+ readonly internalType: "contract IWETH";
8
+ readonly name: "weth";
9
+ readonly type: "address";
10
+ }, {
11
+ readonly internalType: "contract IPermit2";
12
+ readonly name: "permit2";
13
+ readonly type: "address";
14
+ }];
15
+ readonly stateMutability: "nonpayable";
16
+ readonly type: "constructor";
17
+ }, {
18
+ readonly inputs: readonly [{
19
+ readonly internalType: "address";
20
+ readonly name: "target";
21
+ readonly type: "address";
22
+ }];
23
+ readonly name: "AddressEmptyCode";
24
+ readonly type: "error";
25
+ }, {
26
+ readonly inputs: readonly [{
27
+ readonly internalType: "address";
28
+ readonly name: "account";
29
+ readonly type: "address";
30
+ }];
31
+ readonly name: "AddressInsufficientBalance";
32
+ readonly type: "error";
33
+ }, {
34
+ readonly inputs: readonly [];
35
+ readonly name: "EthTransfer";
36
+ readonly type: "error";
37
+ }, {
38
+ readonly inputs: readonly [];
39
+ readonly name: "FailedInnerCall";
40
+ readonly type: "error";
41
+ }, {
42
+ readonly inputs: readonly [];
43
+ readonly name: "InsufficientEth";
44
+ readonly type: "error";
45
+ }, {
46
+ readonly inputs: readonly [];
47
+ readonly name: "ReentrancyGuardReentrantCall";
48
+ readonly type: "error";
49
+ }, {
50
+ readonly inputs: readonly [{
51
+ readonly internalType: "uint8";
52
+ readonly name: "bits";
53
+ readonly type: "uint8";
54
+ }, {
55
+ readonly internalType: "uint256";
56
+ readonly name: "value";
57
+ readonly type: "uint256";
58
+ }];
59
+ readonly name: "SafeCastOverflowedUintDowncast";
60
+ readonly type: "error";
61
+ }, {
62
+ readonly inputs: readonly [{
63
+ readonly internalType: "address";
64
+ readonly name: "token";
65
+ readonly type: "address";
66
+ }];
67
+ readonly name: "SafeERC20FailedOperation";
68
+ readonly type: "error";
69
+ }, {
70
+ readonly inputs: readonly [{
71
+ readonly internalType: "address";
72
+ readonly name: "sender";
73
+ readonly type: "address";
74
+ }];
75
+ readonly name: "SenderIsNotVault";
76
+ readonly type: "error";
77
+ }, {
78
+ readonly inputs: readonly [];
79
+ readonly name: "SwapDeadline";
80
+ readonly type: "error";
81
+ }, {
82
+ readonly inputs: readonly [];
83
+ readonly name: "TransientIndexOutOfBounds";
84
+ readonly type: "error";
85
+ }, {
86
+ readonly inputs: readonly [];
87
+ readonly name: "getSender";
88
+ readonly outputs: readonly [{
89
+ readonly internalType: "address";
90
+ readonly name: "";
91
+ readonly type: "address";
92
+ }];
93
+ readonly stateMutability: "view";
94
+ readonly type: "function";
95
+ }, {
96
+ readonly inputs: readonly [{
97
+ readonly internalType: "bytes[]";
98
+ readonly name: "data";
99
+ readonly type: "bytes[]";
100
+ }];
101
+ readonly name: "multicall";
102
+ readonly outputs: readonly [{
103
+ readonly internalType: "bytes[]";
104
+ readonly name: "results";
105
+ readonly type: "bytes[]";
106
+ }];
107
+ readonly stateMutability: "payable";
108
+ readonly type: "function";
109
+ }, {
110
+ readonly inputs: readonly [{
111
+ readonly components: readonly [{
112
+ readonly internalType: "address";
113
+ readonly name: "token";
114
+ readonly type: "address";
115
+ }, {
116
+ readonly internalType: "address";
117
+ readonly name: "owner";
118
+ readonly type: "address";
119
+ }, {
120
+ readonly internalType: "address";
121
+ readonly name: "spender";
122
+ readonly type: "address";
123
+ }, {
124
+ readonly internalType: "uint256";
125
+ readonly name: "amount";
126
+ readonly type: "uint256";
127
+ }, {
128
+ readonly internalType: "uint256";
129
+ readonly name: "nonce";
130
+ readonly type: "uint256";
131
+ }, {
132
+ readonly internalType: "uint256";
133
+ readonly name: "deadline";
134
+ readonly type: "uint256";
135
+ }];
136
+ readonly internalType: "struct IRouterCommon.PermitApproval[]";
137
+ readonly name: "permitBatch";
138
+ readonly type: "tuple[]";
139
+ }, {
140
+ readonly internalType: "bytes[]";
141
+ readonly name: "permitSignatures";
142
+ readonly type: "bytes[]";
143
+ }, {
144
+ readonly components: readonly [{
145
+ readonly components: readonly [{
146
+ readonly internalType: "address";
147
+ readonly name: "token";
148
+ readonly type: "address";
149
+ }, {
150
+ readonly internalType: "uint160";
151
+ readonly name: "amount";
152
+ readonly type: "uint160";
153
+ }, {
154
+ readonly internalType: "uint48";
155
+ readonly name: "expiration";
156
+ readonly type: "uint48";
157
+ }, {
158
+ readonly internalType: "uint48";
159
+ readonly name: "nonce";
160
+ readonly type: "uint48";
161
+ }];
162
+ readonly internalType: "struct IAllowanceTransfer.PermitDetails[]";
163
+ readonly name: "details";
164
+ readonly type: "tuple[]";
165
+ }, {
166
+ readonly internalType: "address";
167
+ readonly name: "spender";
168
+ readonly type: "address";
169
+ }, {
170
+ readonly internalType: "uint256";
171
+ readonly name: "sigDeadline";
172
+ readonly type: "uint256";
173
+ }];
174
+ readonly internalType: "struct IAllowanceTransfer.PermitBatch";
175
+ readonly name: "permit2Batch";
176
+ readonly type: "tuple";
177
+ }, {
178
+ readonly internalType: "bytes";
179
+ readonly name: "permit2Signature";
180
+ readonly type: "bytes";
181
+ }, {
182
+ readonly internalType: "bytes[]";
183
+ readonly name: "multicallData";
184
+ readonly type: "bytes[]";
185
+ }];
186
+ readonly name: "permitBatchAndCall";
187
+ readonly outputs: readonly [{
188
+ readonly internalType: "bytes[]";
189
+ readonly name: "results";
190
+ readonly type: "bytes[]";
191
+ }];
192
+ readonly stateMutability: "payable";
193
+ readonly type: "function";
194
+ }, {
195
+ readonly inputs: readonly [{
196
+ readonly components: readonly [{
197
+ readonly internalType: "contract IERC20";
198
+ readonly name: "tokenIn";
199
+ readonly type: "address";
200
+ }, {
201
+ readonly components: readonly [{
202
+ readonly internalType: "address";
203
+ readonly name: "pool";
204
+ readonly type: "address";
205
+ }, {
206
+ readonly internalType: "contract IERC20";
207
+ readonly name: "tokenOut";
208
+ readonly type: "address";
209
+ }, {
210
+ readonly internalType: "bool";
211
+ readonly name: "isBuffer";
212
+ readonly type: "bool";
213
+ }];
214
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
215
+ readonly name: "steps";
216
+ readonly type: "tuple[]";
217
+ }, {
218
+ readonly internalType: "uint256";
219
+ readonly name: "exactAmountIn";
220
+ readonly type: "uint256";
221
+ }, {
222
+ readonly internalType: "uint256";
223
+ readonly name: "minAmountOut";
224
+ readonly type: "uint256";
225
+ }];
226
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountIn[]";
227
+ readonly name: "paths";
228
+ readonly type: "tuple[]";
229
+ }, {
230
+ readonly internalType: "bytes";
231
+ readonly name: "userData";
232
+ readonly type: "bytes";
233
+ }];
234
+ readonly name: "querySwapExactIn";
235
+ readonly outputs: readonly [{
236
+ readonly internalType: "uint256[]";
237
+ readonly name: "pathAmountsOut";
238
+ readonly type: "uint256[]";
239
+ }, {
240
+ readonly internalType: "address[]";
241
+ readonly name: "tokensOut";
242
+ readonly type: "address[]";
243
+ }, {
244
+ readonly internalType: "uint256[]";
245
+ readonly name: "amountsOut";
246
+ readonly type: "uint256[]";
247
+ }];
248
+ readonly stateMutability: "nonpayable";
249
+ readonly type: "function";
250
+ }, {
251
+ readonly inputs: readonly [{
252
+ readonly components: readonly [{
253
+ readonly internalType: "address";
254
+ readonly name: "sender";
255
+ readonly type: "address";
256
+ }, {
257
+ readonly components: readonly [{
258
+ readonly internalType: "contract IERC20";
259
+ readonly name: "tokenIn";
260
+ readonly type: "address";
261
+ }, {
262
+ readonly components: readonly [{
263
+ readonly internalType: "address";
264
+ readonly name: "pool";
265
+ readonly type: "address";
266
+ }, {
267
+ readonly internalType: "contract IERC20";
268
+ readonly name: "tokenOut";
269
+ readonly type: "address";
270
+ }, {
271
+ readonly internalType: "bool";
272
+ readonly name: "isBuffer";
273
+ readonly type: "bool";
274
+ }];
275
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
276
+ readonly name: "steps";
277
+ readonly type: "tuple[]";
278
+ }, {
279
+ readonly internalType: "uint256";
280
+ readonly name: "exactAmountIn";
281
+ readonly type: "uint256";
282
+ }, {
283
+ readonly internalType: "uint256";
284
+ readonly name: "minAmountOut";
285
+ readonly type: "uint256";
286
+ }];
287
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountIn[]";
288
+ readonly name: "paths";
289
+ readonly type: "tuple[]";
290
+ }, {
291
+ readonly internalType: "uint256";
292
+ readonly name: "deadline";
293
+ readonly type: "uint256";
294
+ }, {
295
+ readonly internalType: "bool";
296
+ readonly name: "wethIsEth";
297
+ readonly type: "bool";
298
+ }, {
299
+ readonly internalType: "bytes";
300
+ readonly name: "userData";
301
+ readonly type: "bytes";
302
+ }];
303
+ readonly internalType: "struct IBatchRouter.SwapExactInHookParams";
304
+ readonly name: "params";
305
+ readonly type: "tuple";
306
+ }];
307
+ readonly name: "querySwapExactInHook";
308
+ readonly outputs: readonly [{
309
+ readonly internalType: "uint256[]";
310
+ readonly name: "pathAmountsOut";
311
+ readonly type: "uint256[]";
312
+ }, {
313
+ readonly internalType: "address[]";
314
+ readonly name: "tokensOut";
315
+ readonly type: "address[]";
316
+ }, {
317
+ readonly internalType: "uint256[]";
318
+ readonly name: "amountsOut";
319
+ readonly type: "uint256[]";
320
+ }];
321
+ readonly stateMutability: "nonpayable";
322
+ readonly type: "function";
323
+ }, {
324
+ readonly inputs: readonly [{
325
+ readonly components: readonly [{
326
+ readonly internalType: "contract IERC20";
327
+ readonly name: "tokenIn";
328
+ readonly type: "address";
329
+ }, {
330
+ readonly components: readonly [{
331
+ readonly internalType: "address";
332
+ readonly name: "pool";
333
+ readonly type: "address";
334
+ }, {
335
+ readonly internalType: "contract IERC20";
336
+ readonly name: "tokenOut";
337
+ readonly type: "address";
338
+ }, {
339
+ readonly internalType: "bool";
340
+ readonly name: "isBuffer";
341
+ readonly type: "bool";
342
+ }];
343
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
344
+ readonly name: "steps";
345
+ readonly type: "tuple[]";
346
+ }, {
347
+ readonly internalType: "uint256";
348
+ readonly name: "maxAmountIn";
349
+ readonly type: "uint256";
350
+ }, {
351
+ readonly internalType: "uint256";
352
+ readonly name: "exactAmountOut";
353
+ readonly type: "uint256";
354
+ }];
355
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountOut[]";
356
+ readonly name: "paths";
357
+ readonly type: "tuple[]";
358
+ }, {
359
+ readonly internalType: "bytes";
360
+ readonly name: "userData";
361
+ readonly type: "bytes";
362
+ }];
363
+ readonly name: "querySwapExactOut";
364
+ readonly outputs: readonly [{
365
+ readonly internalType: "uint256[]";
366
+ readonly name: "pathAmountsIn";
367
+ readonly type: "uint256[]";
368
+ }, {
369
+ readonly internalType: "address[]";
370
+ readonly name: "tokensIn";
371
+ readonly type: "address[]";
372
+ }, {
373
+ readonly internalType: "uint256[]";
374
+ readonly name: "amountsIn";
375
+ readonly type: "uint256[]";
376
+ }];
377
+ readonly stateMutability: "nonpayable";
378
+ readonly type: "function";
379
+ }, {
380
+ readonly inputs: readonly [{
381
+ readonly components: readonly [{
382
+ readonly internalType: "address";
383
+ readonly name: "sender";
384
+ readonly type: "address";
385
+ }, {
386
+ readonly components: readonly [{
387
+ readonly internalType: "contract IERC20";
388
+ readonly name: "tokenIn";
389
+ readonly type: "address";
390
+ }, {
391
+ readonly components: readonly [{
392
+ readonly internalType: "address";
393
+ readonly name: "pool";
394
+ readonly type: "address";
395
+ }, {
396
+ readonly internalType: "contract IERC20";
397
+ readonly name: "tokenOut";
398
+ readonly type: "address";
399
+ }, {
400
+ readonly internalType: "bool";
401
+ readonly name: "isBuffer";
402
+ readonly type: "bool";
403
+ }];
404
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
405
+ readonly name: "steps";
406
+ readonly type: "tuple[]";
407
+ }, {
408
+ readonly internalType: "uint256";
409
+ readonly name: "maxAmountIn";
410
+ readonly type: "uint256";
411
+ }, {
412
+ readonly internalType: "uint256";
413
+ readonly name: "exactAmountOut";
414
+ readonly type: "uint256";
415
+ }];
416
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountOut[]";
417
+ readonly name: "paths";
418
+ readonly type: "tuple[]";
419
+ }, {
420
+ readonly internalType: "uint256";
421
+ readonly name: "deadline";
422
+ readonly type: "uint256";
423
+ }, {
424
+ readonly internalType: "bool";
425
+ readonly name: "wethIsEth";
426
+ readonly type: "bool";
427
+ }, {
428
+ readonly internalType: "bytes";
429
+ readonly name: "userData";
430
+ readonly type: "bytes";
431
+ }];
432
+ readonly internalType: "struct IBatchRouter.SwapExactOutHookParams";
433
+ readonly name: "params";
434
+ readonly type: "tuple";
435
+ }];
436
+ readonly name: "querySwapExactOutHook";
437
+ readonly outputs: readonly [{
438
+ readonly internalType: "uint256[]";
439
+ readonly name: "pathAmountsIn";
440
+ readonly type: "uint256[]";
441
+ }, {
442
+ readonly internalType: "address[]";
443
+ readonly name: "tokensIn";
444
+ readonly type: "address[]";
445
+ }, {
446
+ readonly internalType: "uint256[]";
447
+ readonly name: "amountsIn";
448
+ readonly type: "uint256[]";
449
+ }];
450
+ readonly stateMutability: "nonpayable";
451
+ readonly type: "function";
452
+ }, {
453
+ readonly inputs: readonly [{
454
+ readonly components: readonly [{
455
+ readonly internalType: "contract IERC20";
456
+ readonly name: "tokenIn";
457
+ readonly type: "address";
458
+ }, {
459
+ readonly components: readonly [{
460
+ readonly internalType: "address";
461
+ readonly name: "pool";
462
+ readonly type: "address";
463
+ }, {
464
+ readonly internalType: "contract IERC20";
465
+ readonly name: "tokenOut";
466
+ readonly type: "address";
467
+ }, {
468
+ readonly internalType: "bool";
469
+ readonly name: "isBuffer";
470
+ readonly type: "bool";
471
+ }];
472
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
473
+ readonly name: "steps";
474
+ readonly type: "tuple[]";
475
+ }, {
476
+ readonly internalType: "uint256";
477
+ readonly name: "exactAmountIn";
478
+ readonly type: "uint256";
479
+ }, {
480
+ readonly internalType: "uint256";
481
+ readonly name: "minAmountOut";
482
+ readonly type: "uint256";
483
+ }];
484
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountIn[]";
485
+ readonly name: "paths";
486
+ readonly type: "tuple[]";
487
+ }, {
488
+ readonly internalType: "uint256";
489
+ readonly name: "deadline";
490
+ readonly type: "uint256";
491
+ }, {
492
+ readonly internalType: "bool";
493
+ readonly name: "wethIsEth";
494
+ readonly type: "bool";
495
+ }, {
496
+ readonly internalType: "bytes";
497
+ readonly name: "userData";
498
+ readonly type: "bytes";
499
+ }];
500
+ readonly name: "swapExactIn";
501
+ readonly outputs: readonly [{
502
+ readonly internalType: "uint256[]";
503
+ readonly name: "pathAmountsOut";
504
+ readonly type: "uint256[]";
505
+ }, {
506
+ readonly internalType: "address[]";
507
+ readonly name: "tokensOut";
508
+ readonly type: "address[]";
509
+ }, {
510
+ readonly internalType: "uint256[]";
511
+ readonly name: "amountsOut";
512
+ readonly type: "uint256[]";
513
+ }];
514
+ readonly stateMutability: "payable";
515
+ readonly type: "function";
516
+ }, {
517
+ readonly inputs: readonly [{
518
+ readonly components: readonly [{
519
+ readonly internalType: "address";
520
+ readonly name: "sender";
521
+ readonly type: "address";
522
+ }, {
523
+ readonly components: readonly [{
524
+ readonly internalType: "contract IERC20";
525
+ readonly name: "tokenIn";
526
+ readonly type: "address";
527
+ }, {
528
+ readonly components: readonly [{
529
+ readonly internalType: "address";
530
+ readonly name: "pool";
531
+ readonly type: "address";
532
+ }, {
533
+ readonly internalType: "contract IERC20";
534
+ readonly name: "tokenOut";
535
+ readonly type: "address";
536
+ }, {
537
+ readonly internalType: "bool";
538
+ readonly name: "isBuffer";
539
+ readonly type: "bool";
540
+ }];
541
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
542
+ readonly name: "steps";
543
+ readonly type: "tuple[]";
544
+ }, {
545
+ readonly internalType: "uint256";
546
+ readonly name: "exactAmountIn";
547
+ readonly type: "uint256";
548
+ }, {
549
+ readonly internalType: "uint256";
550
+ readonly name: "minAmountOut";
551
+ readonly type: "uint256";
552
+ }];
553
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountIn[]";
554
+ readonly name: "paths";
555
+ readonly type: "tuple[]";
556
+ }, {
557
+ readonly internalType: "uint256";
558
+ readonly name: "deadline";
559
+ readonly type: "uint256";
560
+ }, {
561
+ readonly internalType: "bool";
562
+ readonly name: "wethIsEth";
563
+ readonly type: "bool";
564
+ }, {
565
+ readonly internalType: "bytes";
566
+ readonly name: "userData";
567
+ readonly type: "bytes";
568
+ }];
569
+ readonly internalType: "struct IBatchRouter.SwapExactInHookParams";
570
+ readonly name: "params";
571
+ readonly type: "tuple";
572
+ }];
573
+ readonly name: "swapExactInHook";
574
+ readonly outputs: readonly [{
575
+ readonly internalType: "uint256[]";
576
+ readonly name: "pathAmountsOut";
577
+ readonly type: "uint256[]";
578
+ }, {
579
+ readonly internalType: "address[]";
580
+ readonly name: "tokensOut";
581
+ readonly type: "address[]";
582
+ }, {
583
+ readonly internalType: "uint256[]";
584
+ readonly name: "amountsOut";
585
+ readonly type: "uint256[]";
586
+ }];
587
+ readonly stateMutability: "nonpayable";
588
+ readonly type: "function";
589
+ }, {
590
+ readonly inputs: readonly [{
591
+ readonly components: readonly [{
592
+ readonly internalType: "contract IERC20";
593
+ readonly name: "tokenIn";
594
+ readonly type: "address";
595
+ }, {
596
+ readonly components: readonly [{
597
+ readonly internalType: "address";
598
+ readonly name: "pool";
599
+ readonly type: "address";
600
+ }, {
601
+ readonly internalType: "contract IERC20";
602
+ readonly name: "tokenOut";
603
+ readonly type: "address";
604
+ }, {
605
+ readonly internalType: "bool";
606
+ readonly name: "isBuffer";
607
+ readonly type: "bool";
608
+ }];
609
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
610
+ readonly name: "steps";
611
+ readonly type: "tuple[]";
612
+ }, {
613
+ readonly internalType: "uint256";
614
+ readonly name: "maxAmountIn";
615
+ readonly type: "uint256";
616
+ }, {
617
+ readonly internalType: "uint256";
618
+ readonly name: "exactAmountOut";
619
+ readonly type: "uint256";
620
+ }];
621
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountOut[]";
622
+ readonly name: "paths";
623
+ readonly type: "tuple[]";
624
+ }, {
625
+ readonly internalType: "uint256";
626
+ readonly name: "deadline";
627
+ readonly type: "uint256";
628
+ }, {
629
+ readonly internalType: "bool";
630
+ readonly name: "wethIsEth";
631
+ readonly type: "bool";
632
+ }, {
633
+ readonly internalType: "bytes";
634
+ readonly name: "userData";
635
+ readonly type: "bytes";
636
+ }];
637
+ readonly name: "swapExactOut";
638
+ readonly outputs: readonly [{
639
+ readonly internalType: "uint256[]";
640
+ readonly name: "pathAmountsIn";
641
+ readonly type: "uint256[]";
642
+ }, {
643
+ readonly internalType: "address[]";
644
+ readonly name: "tokensIn";
645
+ readonly type: "address[]";
646
+ }, {
647
+ readonly internalType: "uint256[]";
648
+ readonly name: "amountsIn";
649
+ readonly type: "uint256[]";
650
+ }];
651
+ readonly stateMutability: "payable";
652
+ readonly type: "function";
653
+ }, {
654
+ readonly inputs: readonly [{
655
+ readonly components: readonly [{
656
+ readonly internalType: "address";
657
+ readonly name: "sender";
658
+ readonly type: "address";
659
+ }, {
660
+ readonly components: readonly [{
661
+ readonly internalType: "contract IERC20";
662
+ readonly name: "tokenIn";
663
+ readonly type: "address";
664
+ }, {
665
+ readonly components: readonly [{
666
+ readonly internalType: "address";
667
+ readonly name: "pool";
668
+ readonly type: "address";
669
+ }, {
670
+ readonly internalType: "contract IERC20";
671
+ readonly name: "tokenOut";
672
+ readonly type: "address";
673
+ }, {
674
+ readonly internalType: "bool";
675
+ readonly name: "isBuffer";
676
+ readonly type: "bool";
677
+ }];
678
+ readonly internalType: "struct IBatchRouter.SwapPathStep[]";
679
+ readonly name: "steps";
680
+ readonly type: "tuple[]";
681
+ }, {
682
+ readonly internalType: "uint256";
683
+ readonly name: "maxAmountIn";
684
+ readonly type: "uint256";
685
+ }, {
686
+ readonly internalType: "uint256";
687
+ readonly name: "exactAmountOut";
688
+ readonly type: "uint256";
689
+ }];
690
+ readonly internalType: "struct IBatchRouter.SwapPathExactAmountOut[]";
691
+ readonly name: "paths";
692
+ readonly type: "tuple[]";
693
+ }, {
694
+ readonly internalType: "uint256";
695
+ readonly name: "deadline";
696
+ readonly type: "uint256";
697
+ }, {
698
+ readonly internalType: "bool";
699
+ readonly name: "wethIsEth";
700
+ readonly type: "bool";
701
+ }, {
702
+ readonly internalType: "bytes";
703
+ readonly name: "userData";
704
+ readonly type: "bytes";
705
+ }];
706
+ readonly internalType: "struct IBatchRouter.SwapExactOutHookParams";
707
+ readonly name: "params";
708
+ readonly type: "tuple";
709
+ }];
710
+ readonly name: "swapExactOutHook";
711
+ readonly outputs: readonly [{
712
+ readonly internalType: "uint256[]";
713
+ readonly name: "pathAmountsIn";
714
+ readonly type: "uint256[]";
715
+ }, {
716
+ readonly internalType: "address[]";
717
+ readonly name: "tokensIn";
718
+ readonly type: "address[]";
719
+ }, {
720
+ readonly internalType: "uint256[]";
721
+ readonly name: "amountsIn";
722
+ readonly type: "uint256[]";
723
+ }];
724
+ readonly stateMutability: "nonpayable";
725
+ readonly type: "function";
726
+ }, {
727
+ readonly stateMutability: "payable";
728
+ readonly type: "receive";
729
+ }];