@paraswap/dex-lib 4.0.13 → 4.0.14

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 (199) 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/{integral/relayer.json → wombat/pool.json} +474 -721
  10. package/build/dex/aave-v1/aave-v1.d.ts +2 -1
  11. package/build/dex/aave-v1/aave-v1.js +23 -0
  12. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  13. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  14. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  15. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  16. package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
  17. package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
  18. package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
  19. package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
  20. package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
  21. package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
  22. package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
  23. package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
  24. package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
  25. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
  26. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
  27. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
  28. package/build/dex/bebop/bebop.js +2 -2
  29. package/build/dex/bebop/bebop.js.map +1 -1
  30. package/build/dex/cables/cables.js +7 -3
  31. package/build/dex/cables/cables.js.map +1 -1
  32. package/build/dex/curve-v1-factory/curve-v1-factory.js +6 -2
  33. package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
  34. package/build/dex/curve-v1-factory/curve-v1-pool-manager.d.ts +1 -1
  35. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +8 -2
  36. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
  37. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.d.ts +3 -2
  38. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js +7 -5
  39. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js.map +1 -1
  40. package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.d.ts +7 -4
  41. package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js +23 -11
  42. package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js.map +1 -1
  43. package/build/dex/dexalot/constants.d.ts +2 -2
  44. package/build/dex/dexalot/constants.js +2 -2
  45. package/build/dex/dexalot/dexalot.js +8 -4
  46. package/build/dex/dexalot/dexalot.js.map +1 -1
  47. package/build/dex/dexalot/rate-fetcher.d.ts +1 -1
  48. package/build/dex/dexalot/rate-fetcher.js.map +1 -1
  49. package/build/dex/generic-rfq/rate-fetcher.js +5 -5
  50. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  51. package/build/dex/inception/config.d.ts +4 -0
  52. package/build/dex/inception/config.js +109 -0
  53. package/build/dex/inception/config.js.map +1 -0
  54. package/build/dex/inception/inception-event-pool.d.ts +16 -0
  55. package/build/dex/inception/inception-event-pool.js +49 -0
  56. package/build/dex/inception/inception-event-pool.js.map +1 -0
  57. package/build/dex/inception/inception.d.ts +43 -0
  58. package/build/dex/inception/inception.js +180 -0
  59. package/build/dex/inception/inception.js.map +1 -0
  60. package/build/dex/inception/tokens.d.ts +9 -0
  61. package/build/dex/inception/tokens.js +28 -0
  62. package/build/dex/inception/tokens.js.map +1 -0
  63. package/build/dex/inception/types.d.ts +22 -0
  64. package/build/dex/inception/types.js +3 -0
  65. package/build/dex/inception/types.js.map +1 -0
  66. package/build/dex/inception/utils.d.ts +7 -0
  67. package/build/dex/inception/utils.js +58 -0
  68. package/build/dex/inception/utils.js.map +1 -0
  69. package/build/dex/jarvis.d.ts +2 -1
  70. package/build/dex/jarvis.js +58 -0
  71. package/build/dex/jarvis.js.map +1 -1
  72. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  73. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  74. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  75. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  76. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  77. package/build/dex/platypus/platypus.d.ts +2 -1
  78. package/build/dex/platypus/platypus.js +45 -0
  79. package/build/dex/platypus/platypus.js.map +1 -1
  80. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  81. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  82. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  83. package/build/dex/stable-pool.js +1 -8
  84. package/build/dex/stable-pool.js.map +1 -1
  85. package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
  86. package/build/dex/swaap-v1/swaap-v1.js +14 -0
  87. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  88. package/build/dex/swaap-v2/swaap-v2.js +2 -2
  89. package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
  90. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  91. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  92. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  93. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  94. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  95. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  96. package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
  97. package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
  98. package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
  99. package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
  100. package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
  101. package/build/dex/uniswap-v3/uniswap-v3-worker.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-m-smart-m/config.d.ts +3 -0
  106. package/build/dex/usual-m-smart-m/config.js +13 -0
  107. package/build/dex/usual-m-smart-m/config.js.map +1 -0
  108. package/build/dex/usual-m-smart-m/types.d.ts +7 -0
  109. package/build/dex/usual-m-smart-m/types.js +3 -0
  110. package/build/dex/usual-m-smart-m/types.js.map +1 -0
  111. package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
  112. package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
  113. package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
  114. package/build/dex/usual-m-usd0/config.d.ts +3 -0
  115. package/build/dex/usual-m-usd0/config.js +14 -0
  116. package/build/dex/usual-m-usd0/config.js.map +1 -0
  117. package/build/dex/usual-m-usd0/types.d.ts +8 -0
  118. package/build/dex/usual-m-usd0/types.js +3 -0
  119. package/build/dex/usual-m-usd0/types.js.map +1 -0
  120. package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
  121. package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
  122. package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
  123. package/build/dex/zerox/index.d.ts +4 -26
  124. package/build/dex/zerox/index.js +50 -42
  125. package/build/dex/zerox/index.js.map +1 -1
  126. package/build/dex/zerox/types.d.ts +29 -0
  127. package/build/dex/zerox/types.js +8 -1
  128. package/build/dex/zerox/types.js.map +1 -1
  129. package/build/dex-helper/dummy-dex-helper.js +10 -0
  130. package/build/dex-helper/dummy-dex-helper.js.map +1 -1
  131. package/build/dex-helper/icache.d.ts +3 -0
  132. package/build/lib/pub-sub.d.ts +51 -0
  133. package/build/lib/pub-sub.js +199 -0
  134. package/build/lib/pub-sub.js.map +1 -0
  135. package/package.json +1 -1
  136. package/src/abi/fluid-dex/fluid-dex.abi.json +2 -4
  137. package/src/dex/bebop/bebop.ts +4 -2
  138. package/src/dex/cables/cables.ts +9 -3
  139. package/src/dex/curve-v1-factory/curve-v1-factory.ts +5 -1
  140. package/src/dex/curve-v1-factory/curve-v1-pool-manager.ts +17 -1
  141. package/src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts +4 -4
  142. package/src/dex/curve-v1-factory/state-polling-pools/polling-manager.ts +32 -21
  143. package/src/dex/dexalot/constants.ts +2 -2
  144. package/src/dex/dexalot/dexalot.ts +11 -4
  145. package/src/dex/dexalot/rate-fetcher.ts +6 -6
  146. package/src/dex/generic-rfq/rate-fetcher.ts +10 -5
  147. package/src/dex/swaap-v2/swaap-v2.ts +4 -2
  148. package/src/dex-helper/dummy-dex-helper.ts +21 -0
  149. package/src/dex-helper/icache.ts +6 -0
  150. package/src/lib/pub-sub.ts +252 -0
  151. package/.idea/aws.xml +0 -17
  152. package/.idea/codeStyles/Project.xml +0 -19
  153. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  154. package/.idea/misc.xml +0 -6
  155. package/.idea/modules.xml +0 -8
  156. package/.idea/paraswap-dex-lib.iml +0 -9
  157. package/.idea/prettier.xml +0 -7
  158. package/.idea/vcs.xml +0 -6
  159. package/build/abi/integral/factory.json +0 -333
  160. package/build/abi/integral/oracle.json +0 -501
  161. package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +0 -49
  162. package/build/dex/fluid-dex/fluid-dex-generate-pool.js +0 -104
  163. package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +0 -1
  164. package/build/dex/integral/config.d.ts +0 -4
  165. package/build/dex/integral/config.js +0 -20
  166. package/build/dex/integral/config.js.map +0 -1
  167. package/build/dex/integral/context.d.ts +0 -40
  168. package/build/dex/integral/context.js +0 -158
  169. package/build/dex/integral/context.js.map +0 -1
  170. package/build/dex/integral/integral-factory.d.ts +0 -24
  171. package/build/dex/integral/integral-factory.js +0 -95
  172. package/build/dex/integral/integral-factory.js.map +0 -1
  173. package/build/dex/integral/integral-pool.d.ts +0 -50
  174. package/build/dex/integral/integral-pool.js +0 -149
  175. package/build/dex/integral/integral-pool.js.map +0 -1
  176. package/build/dex/integral/integral-pricing.d.ts +0 -18
  177. package/build/dex/integral/integral-pricing.js +0 -114
  178. package/build/dex/integral/integral-pricing.js.map +0 -1
  179. package/build/dex/integral/integral-relayer.d.ts +0 -42
  180. package/build/dex/integral/integral-relayer.js +0 -192
  181. package/build/dex/integral/integral-relayer.js.map +0 -1
  182. package/build/dex/integral/integral-token.d.ts +0 -27
  183. package/build/dex/integral/integral-token.js +0 -59
  184. package/build/dex/integral/integral-token.js.map +0 -1
  185. package/build/dex/integral/integral.d.ts +0 -41
  186. package/build/dex/integral/integral.js +0 -376
  187. package/build/dex/integral/integral.js.map +0 -1
  188. package/build/dex/integral/types.d.ts +0 -85
  189. package/build/dex/integral/types.js +0 -9
  190. package/build/dex/integral/types.js.map +0 -1
  191. package/build/dex/integral/utils-e2e.d.ts +0 -9
  192. package/build/dex/integral/utils-e2e.js +0 -131
  193. package/build/dex/integral/utils-e2e.js.map +0 -1
  194. package/build/dex/integral/utils.d.ts +0 -17
  195. package/build/dex/integral/utils.js +0 -94
  196. package/build/dex/integral/utils.js.map +0 -1
  197. package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
  198. package/build/dex/trader-joe-v2.1/optimizer.js +0 -47
  199. package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
@@ -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
+ }];