@dzapio/sdk 2.0.6 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/dist/examples/chain-utils.d.ts +1 -0
  2. package/dist/examples/chain-utils.js +20 -0
  3. package/dist/examples/permit-utils.d.ts +1 -0
  4. package/dist/examples/permit-utils.js +90 -0
  5. package/dist/examples/token-utils.d.ts +1 -0
  6. package/dist/examples/token-utils.js +41 -0
  7. package/dist/examples/trade-operations.d.ts +1 -0
  8. package/dist/examples/trade-operations.js +89 -0
  9. package/dist/examples/zap-operations.d.ts +1 -0
  10. package/dist/examples/zap-operations.js +69 -0
  11. package/dist/src/api/index.d.ts +27 -0
  12. package/dist/src/api/index.js +146 -0
  13. package/dist/src/artifacts/ERC20Permit.d.ts +374 -0
  14. package/dist/src/artifacts/ERC20Permit.js +469 -0
  15. package/dist/src/artifacts/Permit2.d.ts +700 -0
  16. package/dist/src/artifacts/Permit2.js +904 -0
  17. package/dist/src/artifacts/Permit2Proxy.d.ts +416 -0
  18. package/dist/src/artifacts/Permit2Proxy.js +206 -0
  19. package/dist/src/artifacts/default/DZapCoreAbi.d.ts +2 -0
  20. package/dist/src/artifacts/default/DZapCoreAbi.js +3079 -0
  21. package/dist/src/artifacts/default/DZapCoreV2Abi.d.ts +2 -0
  22. package/dist/src/artifacts/default/DZapCoreV2Abi.js +3719 -0
  23. package/dist/src/artifacts/default/DZapDcaAbi.d.ts +2 -0
  24. package/dist/src/artifacts/default/DZapDcaAbi.js +1829 -0
  25. package/dist/src/artifacts/default/Permit2Abi.d.ts +700 -0
  26. package/dist/src/artifacts/default/Permit2Abi.js +904 -0
  27. package/dist/src/artifacts/default/erc20Abi.d.ts +165 -0
  28. package/dist/src/artifacts/default/erc20Abi.js +220 -0
  29. package/dist/src/artifacts/default/index.d.ts +6 -0
  30. package/dist/src/artifacts/default/index.js +13 -0
  31. package/dist/src/artifacts/index.d.ts +2 -0
  32. package/dist/src/artifacts/index.js +9 -0
  33. package/dist/src/artifacts/staging/DZapCoreSwapAbi.d.ts +2 -0
  34. package/dist/src/artifacts/staging/DZapCoreSwapAbi.js +3079 -0
  35. package/dist/src/artifacts/staging/index.d.ts +2 -0
  36. package/dist/src/artifacts/staging/index.js +5 -0
  37. package/dist/src/axios/baseClient.d.ts +2 -0
  38. package/dist/src/axios/baseClient.js +7 -0
  39. package/dist/src/axios/index.d.ts +8 -0
  40. package/dist/src/axios/index.js +34 -0
  41. package/dist/src/chains/definitions/arthera.d.ts +35 -0
  42. package/dist/src/chains/definitions/arthera.js +28 -0
  43. package/dist/src/chains/definitions/fiveIre.d.ts +35 -0
  44. package/dist/src/chains/definitions/fiveIre.js +28 -0
  45. package/dist/src/chains/definitions/hyperEvm.d.ts +35 -0
  46. package/dist/src/chains/definitions/hyperEvm.js +26 -0
  47. package/dist/src/chains/definitions/hyperliquid.d.ts +35 -0
  48. package/dist/src/chains/definitions/hyperliquid.js +26 -0
  49. package/dist/src/chains/definitions/stable.d.ts +36 -0
  50. package/dist/src/chains/definitions/stable.js +31 -0
  51. package/dist/src/chains/index.d.ts +179 -0
  52. package/dist/src/chains/index.js +24 -0
  53. package/dist/src/config/index.d.ts +36 -0
  54. package/dist/src/config/index.js +59 -0
  55. package/dist/src/constants/address.d.ts +13 -0
  56. package/dist/src/constants/address.js +29 -0
  57. package/dist/src/constants/approval.d.ts +7 -0
  58. package/dist/src/constants/approval.js +17 -0
  59. package/dist/src/constants/axios.d.ts +2 -0
  60. package/dist/src/constants/axios.js +5 -0
  61. package/dist/src/constants/chains.d.ts +31 -0
  62. package/dist/src/constants/chains.js +34 -0
  63. package/dist/src/constants/contract.d.ts +6 -0
  64. package/dist/src/constants/contract.js +18 -0
  65. package/dist/src/constants/erc20.d.ts +25 -0
  66. package/dist/src/constants/erc20.js +28 -0
  67. package/dist/src/constants/httpMethods.d.ts +2 -0
  68. package/dist/src/constants/httpMethods.js +5 -0
  69. package/dist/src/constants/index.d.ts +48 -0
  70. package/dist/src/constants/index.js +53 -0
  71. package/dist/src/constants/permit.d.ts +29 -0
  72. package/dist/src/constants/permit.js +33 -0
  73. package/dist/src/constants/permit2.d.ts +2 -0
  74. package/dist/src/constants/permit2.js +5 -0
  75. package/dist/src/constants/rpc.d.ts +2 -0
  76. package/dist/src/constants/rpc.js +5 -0
  77. package/dist/src/constants/urlConstants.d.ts +15 -0
  78. package/dist/src/constants/urlConstants.js +18 -0
  79. package/dist/src/dZapClient/index.d.ts +1015 -0
  80. package/dist/src/dZapClient/index.js +255 -0
  81. package/dist/src/enums/index.d.ts +46 -0
  82. package/dist/src/enums/index.js +57 -0
  83. package/dist/src/index.d.ts +17 -0
  84. package/dist/src/index.js +48 -0
  85. package/dist/src/service/cache/cacheProvider.d.ts +10 -0
  86. package/dist/src/service/cache/cacheProvider.js +72 -0
  87. package/dist/src/service/cache/constant.d.ts +2 -0
  88. package/dist/src/service/cache/constant.js +6 -0
  89. package/dist/src/service/price/index.d.ts +16 -0
  90. package/dist/src/service/price/index.js +80 -0
  91. package/dist/src/service/price/provider/coingecko/config.d.ts +6 -0
  92. package/dist/src/service/price/provider/coingecko/config.js +9 -0
  93. package/dist/src/service/price/provider/coingecko/index.d.ts +9 -0
  94. package/dist/src/service/price/provider/coingecko/index.js +66 -0
  95. package/dist/src/service/price/provider/defiLlama/config.d.ts +3 -0
  96. package/dist/src/service/price/provider/defiLlama/config.js +6 -0
  97. package/dist/src/service/price/provider/defiLlama/index.d.ts +9 -0
  98. package/dist/src/service/price/provider/defiLlama/index.js +60 -0
  99. package/dist/src/service/price/provider/defiLlama/types.d.ts +11 -0
  100. package/dist/src/service/price/provider/defiLlama/types.js +2 -0
  101. package/dist/src/service/price/provider/dzap/index.d.ts +6 -0
  102. package/dist/src/service/price/provider/dzap/index.js +22 -0
  103. package/dist/src/service/price/types/IPriceProvider.d.ts +14 -0
  104. package/dist/src/service/price/types/IPriceProvider.js +8 -0
  105. package/dist/src/transactionHandlers/generic.d.ts +24 -0
  106. package/dist/src/transactionHandlers/generic.js +48 -0
  107. package/dist/src/transactionHandlers/permit.d.ts +61 -0
  108. package/dist/src/transactionHandlers/permit.js +177 -0
  109. package/dist/src/transactionHandlers/trade.d.ts +24 -0
  110. package/dist/src/transactionHandlers/trade.js +263 -0
  111. package/dist/src/transactionHandlers/zap.d.ts +37 -0
  112. package/dist/src/transactionHandlers/zap.js +135 -0
  113. package/dist/src/types/axiosClient.d.ts +6 -0
  114. package/dist/src/types/axiosClient.js +2 -0
  115. package/dist/src/types/btc.d.ts +45 -0
  116. package/dist/src/types/btc.js +2 -0
  117. package/dist/src/types/chains.d.ts +3 -0
  118. package/dist/src/types/chains.js +2 -0
  119. package/dist/src/types/contract.d.ts +14 -0
  120. package/dist/src/types/contract.js +2 -0
  121. package/dist/src/types/eip-2612.d.ts +24 -0
  122. package/dist/src/types/eip-2612.js +58 -0
  123. package/dist/src/types/index.d.ts +489 -0
  124. package/dist/src/types/index.js +8 -0
  125. package/dist/src/types/permit.d.ts +191 -0
  126. package/dist/src/types/permit.js +54 -0
  127. package/dist/src/types/wallet.d.ts +2 -0
  128. package/dist/src/types/wallet.js +2 -0
  129. package/dist/src/types/zap/build.d.ts +44 -0
  130. package/dist/src/types/zap/build.js +2 -0
  131. package/dist/src/types/zap/index.d.ts +34 -0
  132. package/dist/src/types/zap/index.js +23 -0
  133. package/dist/src/types/zap/path.d.ts +33 -0
  134. package/dist/src/types/zap/path.js +2 -0
  135. package/dist/src/types/zap/pool.d.ts +39 -0
  136. package/dist/src/types/zap/pool.js +2 -0
  137. package/dist/src/types/zap/position.d.ts +27 -0
  138. package/dist/src/types/zap/position.js +2 -0
  139. package/dist/src/types/zap/quote.d.ts +7 -0
  140. package/dist/src/types/zap/quote.js +2 -0
  141. package/dist/src/types/zap/status.d.ts +28 -0
  142. package/dist/src/types/zap/status.js +2 -0
  143. package/dist/src/types/zap/step.d.ts +23 -0
  144. package/dist/src/types/zap/step.js +2 -0
  145. package/dist/src/utils/amount.d.ts +82 -0
  146. package/dist/src/utils/amount.js +71 -0
  147. package/dist/src/utils/axios.d.ts +13 -0
  148. package/dist/src/utils/axios.js +42 -0
  149. package/dist/src/utils/date.d.ts +1 -0
  150. package/dist/src/utils/date.js +8 -0
  151. package/dist/src/utils/decoder/swap/abis.d.ts +643 -0
  152. package/dist/src/utils/decoder/swap/abis.js +831 -0
  153. package/dist/src/utils/decoder/swap/inputDataDecoder.d.ts +14 -0
  154. package/dist/src/utils/decoder/swap/inputDataDecoder.js +124 -0
  155. package/dist/src/utils/eip-2612/eip2612Permit.d.ts +23 -0
  156. package/dist/src/utils/eip-2612/eip2612Permit.js +121 -0
  157. package/dist/src/utils/eip-5792/batchApproveTokens.d.ts +21 -0
  158. package/dist/src/utils/eip-5792/batchApproveTokens.js +49 -0
  159. package/dist/src/utils/eip-5792/index.d.ts +3 -0
  160. package/dist/src/utils/eip-5792/index.js +9 -0
  161. package/dist/src/utils/eip-5792/isBatchTxnSupportedByWallet.d.ts +6 -0
  162. package/dist/src/utils/eip-5792/isBatchTxnSupportedByWallet.js +22 -0
  163. package/dist/src/utils/eip-5792/sendBatchCalls.d.ts +10 -0
  164. package/dist/src/utils/eip-5792/sendBatchCalls.js +25 -0
  165. package/dist/src/utils/eip-5792/waitForBatchTransactionReceipt.d.ts +4 -0
  166. package/dist/src/utils/eip-5792/waitForBatchTransactionReceipt.js +26 -0
  167. package/dist/src/utils/encodeApproveCall.d.ts +6 -0
  168. package/dist/src/utils/encodeApproveCall.js +13 -0
  169. package/dist/src/utils/erc20.d.ts +65 -0
  170. package/dist/src/utils/erc20.js +153 -0
  171. package/dist/src/utils/errors.d.ts +17 -0
  172. package/dist/src/utils/errors.js +78 -0
  173. package/dist/src/utils/index.d.ts +4566 -0
  174. package/dist/src/utils/index.js +196 -0
  175. package/dist/src/utils/multicall.d.ts +14 -0
  176. package/dist/src/utils/multicall.js +25 -0
  177. package/dist/src/utils/permit2/domain.d.ts +2 -0
  178. package/dist/src/utils/permit2/domain.js +11 -0
  179. package/dist/src/utils/permit2/index.d.ts +4 -0
  180. package/dist/src/utils/permit2/index.js +97 -0
  181. package/dist/src/utils/permit2/nonce.d.ts +15 -0
  182. package/dist/src/utils/permit2/nonce.js +61 -0
  183. package/dist/src/utils/permit2/permitData.d.ts +23 -0
  184. package/dist/src/utils/permit2/permitData.js +85 -0
  185. package/dist/src/utils/permit2/values.d.ts +54 -0
  186. package/dist/src/utils/permit2/values.js +88 -0
  187. package/dist/src/utils/permit2/witnessData.d.ts +4 -0
  188. package/dist/src/utils/permit2/witnessData.js +48 -0
  189. package/dist/src/utils/signIntent/custom.d.ts +11 -0
  190. package/dist/src/utils/signIntent/custom.js +31 -0
  191. package/dist/src/utils/signIntent/gasless.d.ts +12 -0
  192. package/dist/src/utils/signIntent/gasless.js +101 -0
  193. package/dist/src/utils/signTypedData.d.ts +11 -0
  194. package/dist/src/utils/signTypedData.js +21 -0
  195. package/dist/src/utils/tokens.d.ts +8 -0
  196. package/dist/src/utils/tokens.js +73 -0
  197. package/dist/src/utils/updateQuotes.d.ts +3 -0
  198. package/dist/src/utils/updateQuotes.js +69 -0
  199. package/dist/src/zap/constants/index.d.ts +2 -0
  200. package/dist/src/zap/constants/index.js +18 -0
  201. package/dist/src/zap/constants/path.d.ts +8 -0
  202. package/dist/src/zap/constants/path.js +11 -0
  203. package/dist/src/zap/constants/step.d.ts +3 -0
  204. package/dist/src/zap/constants/step.js +6 -0
  205. package/dist/src/zap/constants/urls.d.ts +13 -0
  206. package/dist/src/zap/constants/urls.js +16 -0
  207. package/dist/test/build.test.d.ts +1 -0
  208. package/dist/test/build.test.js +65 -0
  209. package/dist/test/permit/permit2Nonce.test.d.ts +2 -0
  210. package/dist/test/permit/permit2Nonce.test.js +96 -0
  211. package/dist/test/quotes.test.d.ts +1 -0
  212. package/dist/test/quotes.test.js +59 -0
  213. package/dist/test/status.test.d.ts +1 -0
  214. package/dist/test/status.test.js +37 -0
  215. package/dist/tsconfig.tsbuildinfo +1 -0
  216. package/package.json +1 -1
@@ -0,0 +1,3079 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.abi = void 0;
4
+ exports.abi = [
5
+ {
6
+ type: 'error',
7
+ name: 'CalldataEmptyButInitNotZero',
8
+ inputs: [],
9
+ },
10
+ {
11
+ type: 'error',
12
+ name: 'FacetAddressIsNotZero',
13
+ inputs: [],
14
+ },
15
+ {
16
+ type: 'error',
17
+ name: 'FacetAddressIsZero',
18
+ inputs: [],
19
+ },
20
+ {
21
+ type: 'error',
22
+ name: 'FacetContainsNoCode',
23
+ inputs: [],
24
+ },
25
+ {
26
+ type: 'error',
27
+ name: 'FunctionAlreadyExists',
28
+ inputs: [],
29
+ },
30
+ {
31
+ type: 'error',
32
+ name: 'FunctionDoesNotExist',
33
+ inputs: [],
34
+ },
35
+ {
36
+ type: 'error',
37
+ name: 'FunctionIsImmutable',
38
+ inputs: [],
39
+ },
40
+ {
41
+ type: 'error',
42
+ name: 'IncorrectFacetCutAction',
43
+ inputs: [],
44
+ },
45
+ {
46
+ type: 'error',
47
+ name: 'InitReverted',
48
+ inputs: [
49
+ {
50
+ type: 'bytes',
51
+ name: 'reason',
52
+ },
53
+ ],
54
+ },
55
+ {
56
+ type: 'error',
57
+ name: 'InitZeroButCalldataNotEmpty',
58
+ inputs: [],
59
+ },
60
+ {
61
+ type: 'error',
62
+ name: 'NoSelectorsInFace',
63
+ inputs: [],
64
+ },
65
+ {
66
+ type: 'error',
67
+ name: 'ZeroAddress',
68
+ inputs: [],
69
+ },
70
+ {
71
+ type: 'error',
72
+ name: 'OnlyContractOwner',
73
+ inputs: [],
74
+ },
75
+ {
76
+ type: 'event',
77
+ anonymous: false,
78
+ name: 'DiamondCut',
79
+ inputs: [
80
+ {
81
+ type: 'tuple[]',
82
+ name: '_diamondCut',
83
+ components: [
84
+ {
85
+ type: 'address',
86
+ name: 'facetAddress',
87
+ },
88
+ {
89
+ type: 'uint8',
90
+ name: 'action',
91
+ },
92
+ {
93
+ type: 'bytes4[]',
94
+ name: 'functionSelectors',
95
+ },
96
+ ],
97
+ },
98
+ {
99
+ type: 'address',
100
+ name: '_init',
101
+ indexed: false,
102
+ },
103
+ {
104
+ type: 'bytes',
105
+ name: '_calldata',
106
+ indexed: false,
107
+ },
108
+ ],
109
+ },
110
+ {
111
+ type: 'function',
112
+ name: 'diamondCut',
113
+ constant: false,
114
+ payable: false,
115
+ inputs: [
116
+ {
117
+ type: 'tuple[]',
118
+ name: '_diamondCut',
119
+ components: [
120
+ {
121
+ type: 'address',
122
+ name: 'facetAddress',
123
+ },
124
+ {
125
+ type: 'uint8',
126
+ name: 'action',
127
+ },
128
+ {
129
+ type: 'bytes4[]',
130
+ name: 'functionSelectors',
131
+ },
132
+ ],
133
+ },
134
+ {
135
+ type: 'address',
136
+ name: '_init',
137
+ },
138
+ {
139
+ type: 'bytes',
140
+ name: '_calldata',
141
+ },
142
+ ],
143
+ outputs: [],
144
+ },
145
+ {
146
+ type: 'error',
147
+ name: 'AlreadyInitialized',
148
+ inputs: [],
149
+ },
150
+ {
151
+ type: 'error',
152
+ name: 'CannotAuthorizeSelf',
153
+ inputs: [],
154
+ },
155
+ {
156
+ type: 'function',
157
+ name: 'initialize',
158
+ constant: false,
159
+ payable: false,
160
+ inputs: [
161
+ {
162
+ type: 'address',
163
+ name: '_protocolFeeVault',
164
+ },
165
+ {
166
+ type: 'address',
167
+ name: '_feeValidator',
168
+ },
169
+ {
170
+ type: 'address',
171
+ name: '_refundVault',
172
+ },
173
+ {
174
+ type: 'address',
175
+ name: '_permit2',
176
+ },
177
+ ],
178
+ outputs: [],
179
+ },
180
+ {
181
+ type: 'function',
182
+ name: 'facetAddress',
183
+ constant: true,
184
+ stateMutability: 'view',
185
+ payable: false,
186
+ inputs: [
187
+ {
188
+ type: 'bytes4',
189
+ name: '_functionSelector',
190
+ },
191
+ ],
192
+ outputs: [
193
+ {
194
+ type: 'address',
195
+ name: 'facetAddress_',
196
+ },
197
+ ],
198
+ },
199
+ {
200
+ type: 'function',
201
+ name: 'facetAddresses',
202
+ constant: true,
203
+ stateMutability: 'view',
204
+ payable: false,
205
+ inputs: [],
206
+ outputs: [
207
+ {
208
+ type: 'address[]',
209
+ name: 'facetAddresses_',
210
+ },
211
+ ],
212
+ },
213
+ {
214
+ type: 'function',
215
+ name: 'facetFunctionSelectors',
216
+ constant: true,
217
+ stateMutability: 'view',
218
+ payable: false,
219
+ inputs: [
220
+ {
221
+ type: 'address',
222
+ name: '_facet',
223
+ },
224
+ ],
225
+ outputs: [
226
+ {
227
+ type: 'bytes4[]',
228
+ name: 'facetFunctionSelectors_',
229
+ },
230
+ ],
231
+ },
232
+ {
233
+ type: 'function',
234
+ name: 'facets',
235
+ constant: true,
236
+ stateMutability: 'view',
237
+ payable: false,
238
+ inputs: [],
239
+ outputs: [
240
+ {
241
+ type: 'tuple[]',
242
+ name: 'facets_',
243
+ components: [
244
+ {
245
+ type: 'address',
246
+ name: 'facetAddress',
247
+ },
248
+ {
249
+ type: 'bytes4[]',
250
+ name: 'functionSelectors',
251
+ },
252
+ ],
253
+ },
254
+ ],
255
+ },
256
+ {
257
+ type: 'function',
258
+ name: 'supportsInterface',
259
+ constant: true,
260
+ stateMutability: 'view',
261
+ payable: false,
262
+ inputs: [
263
+ {
264
+ type: 'bytes4',
265
+ name: '_interfaceId',
266
+ },
267
+ ],
268
+ outputs: [
269
+ {
270
+ type: 'bool',
271
+ name: '',
272
+ },
273
+ ],
274
+ },
275
+ {
276
+ type: 'event',
277
+ anonymous: false,
278
+ name: 'OwnershipTransferred',
279
+ inputs: [
280
+ {
281
+ type: 'address',
282
+ name: 'previousOwner',
283
+ indexed: true,
284
+ },
285
+ {
286
+ type: 'address',
287
+ name: 'newOwner',
288
+ indexed: true,
289
+ },
290
+ ],
291
+ },
292
+ {
293
+ type: 'function',
294
+ name: 'owner',
295
+ constant: true,
296
+ stateMutability: 'view',
297
+ payable: false,
298
+ inputs: [],
299
+ outputs: [
300
+ {
301
+ type: 'address',
302
+ name: 'owner_',
303
+ },
304
+ ],
305
+ },
306
+ {
307
+ type: 'function',
308
+ name: 'transferOwnership',
309
+ constant: false,
310
+ payable: false,
311
+ inputs: [
312
+ {
313
+ type: 'address',
314
+ name: '_newOwner',
315
+ },
316
+ ],
317
+ outputs: [],
318
+ },
319
+ {
320
+ type: 'event',
321
+ anonymous: false,
322
+ name: 'ExecutionAllowed',
323
+ inputs: [
324
+ {
325
+ type: 'address',
326
+ name: 'account',
327
+ indexed: true,
328
+ },
329
+ {
330
+ type: 'bytes4',
331
+ name: 'method',
332
+ indexed: true,
333
+ },
334
+ ],
335
+ },
336
+ {
337
+ type: 'event',
338
+ anonymous: false,
339
+ name: 'ExecutionDenied',
340
+ inputs: [
341
+ {
342
+ type: 'address',
343
+ name: 'account',
344
+ indexed: true,
345
+ },
346
+ {
347
+ type: 'bytes4',
348
+ name: 'method',
349
+ indexed: true,
350
+ },
351
+ ],
352
+ },
353
+ {
354
+ type: 'function',
355
+ name: 'addressCanExecuteMethod',
356
+ constant: true,
357
+ stateMutability: 'view',
358
+ payable: false,
359
+ inputs: [
360
+ {
361
+ type: 'bytes4',
362
+ name: '_selector',
363
+ },
364
+ {
365
+ type: 'address',
366
+ name: '_executor',
367
+ },
368
+ ],
369
+ outputs: [
370
+ {
371
+ type: 'bool',
372
+ name: '',
373
+ },
374
+ ],
375
+ },
376
+ {
377
+ type: 'function',
378
+ name: 'setBatchCanExecute',
379
+ constant: false,
380
+ payable: false,
381
+ inputs: [
382
+ {
383
+ type: 'bytes4[]',
384
+ name: '_selector',
385
+ },
386
+ {
387
+ type: 'address[]',
388
+ name: '_executor',
389
+ },
390
+ {
391
+ type: 'bool[]',
392
+ name: '_canExecute',
393
+ },
394
+ ],
395
+ outputs: [],
396
+ },
397
+ {
398
+ type: 'function',
399
+ name: 'setCanExecute',
400
+ constant: false,
401
+ payable: false,
402
+ inputs: [
403
+ {
404
+ type: 'bytes4',
405
+ name: '_selector',
406
+ },
407
+ {
408
+ type: 'address',
409
+ name: '_executor',
410
+ },
411
+ {
412
+ type: 'bool',
413
+ name: '_canExecute',
414
+ },
415
+ ],
416
+ outputs: [],
417
+ },
418
+ {
419
+ type: 'error',
420
+ name: 'UnAuthorized',
421
+ inputs: [],
422
+ },
423
+ {
424
+ type: 'event',
425
+ anonymous: false,
426
+ name: 'ProtocolFeeVaultUpdated',
427
+ inputs: [
428
+ {
429
+ type: 'address',
430
+ name: 'protocolFeeVault',
431
+ indexed: true,
432
+ },
433
+ ],
434
+ },
435
+ {
436
+ type: 'event',
437
+ anonymous: false,
438
+ name: 'RefundVaultUpdated',
439
+ inputs: [
440
+ {
441
+ type: 'address',
442
+ name: 'refundVault',
443
+ indexed: true,
444
+ },
445
+ ],
446
+ },
447
+ {
448
+ type: 'function',
449
+ name: 'getProtocolFeeVault',
450
+ constant: true,
451
+ stateMutability: 'view',
452
+ payable: false,
453
+ inputs: [],
454
+ outputs: [
455
+ {
456
+ type: 'address',
457
+ name: '',
458
+ },
459
+ ],
460
+ },
461
+ {
462
+ type: 'function',
463
+ name: 'getRefundVault',
464
+ constant: true,
465
+ stateMutability: 'view',
466
+ payable: false,
467
+ inputs: [],
468
+ outputs: [
469
+ {
470
+ type: 'address',
471
+ name: '',
472
+ },
473
+ ],
474
+ },
475
+ {
476
+ type: 'function',
477
+ name: 'setProtocolFeeVault',
478
+ constant: false,
479
+ payable: false,
480
+ inputs: [
481
+ {
482
+ type: 'address',
483
+ name: '_protocolFeeVault',
484
+ },
485
+ ],
486
+ outputs: [],
487
+ },
488
+ {
489
+ type: 'function',
490
+ name: 'setRefundVault',
491
+ constant: false,
492
+ payable: false,
493
+ inputs: [
494
+ {
495
+ type: 'address',
496
+ name: '_refundVault',
497
+ },
498
+ ],
499
+ outputs: [],
500
+ },
501
+ {
502
+ type: 'event',
503
+ anonymous: false,
504
+ name: 'FeeValidatorUpdated',
505
+ inputs: [
506
+ {
507
+ type: 'address',
508
+ name: 'feeValidator',
509
+ indexed: true,
510
+ },
511
+ ],
512
+ },
513
+ {
514
+ type: 'function',
515
+ name: 'getFeeValidator',
516
+ constant: true,
517
+ stateMutability: 'view',
518
+ payable: false,
519
+ inputs: [],
520
+ outputs: [
521
+ {
522
+ type: 'address',
523
+ name: '',
524
+ },
525
+ ],
526
+ },
527
+ {
528
+ type: 'function',
529
+ name: 'getNonce',
530
+ constant: true,
531
+ stateMutability: 'view',
532
+ payable: false,
533
+ inputs: [
534
+ {
535
+ type: 'address',
536
+ name: '_user',
537
+ },
538
+ ],
539
+ outputs: [
540
+ {
541
+ type: 'uint256',
542
+ name: '',
543
+ },
544
+ ],
545
+ },
546
+ {
547
+ type: 'function',
548
+ name: 'setFeeValidator',
549
+ constant: false,
550
+ payable: false,
551
+ inputs: [
552
+ {
553
+ type: 'address',
554
+ name: '_feeValidator',
555
+ },
556
+ ],
557
+ outputs: [],
558
+ },
559
+ {
560
+ type: 'error',
561
+ name: 'AdapterNotWhitelisted',
562
+ inputs: [
563
+ {
564
+ type: 'address',
565
+ name: 'adapter',
566
+ },
567
+ ],
568
+ },
569
+ {
570
+ type: 'error',
571
+ name: 'BridgeNotWhitelisted',
572
+ inputs: [
573
+ {
574
+ type: 'address',
575
+ name: 'bridge',
576
+ },
577
+ ],
578
+ },
579
+ {
580
+ type: 'error',
581
+ name: 'DexNotWhitelised',
582
+ inputs: [
583
+ {
584
+ type: 'address',
585
+ name: 'dex',
586
+ },
587
+ ],
588
+ },
589
+ {
590
+ type: 'error',
591
+ name: 'NotAContract',
592
+ inputs: [],
593
+ },
594
+ {
595
+ type: 'event',
596
+ anonymous: false,
597
+ name: 'AdapterAdded',
598
+ inputs: [
599
+ {
600
+ type: 'address',
601
+ name: 'adapter',
602
+ indexed: true,
603
+ },
604
+ ],
605
+ },
606
+ {
607
+ type: 'event',
608
+ anonymous: false,
609
+ name: 'AdapterRemoved',
610
+ inputs: [
611
+ {
612
+ type: 'address',
613
+ name: 'adapter',
614
+ indexed: true,
615
+ },
616
+ ],
617
+ },
618
+ {
619
+ type: 'event',
620
+ anonymous: false,
621
+ name: 'AdaptersAdded',
622
+ inputs: [
623
+ {
624
+ type: 'address[]',
625
+ name: 'adapters',
626
+ },
627
+ ],
628
+ },
629
+ {
630
+ type: 'event',
631
+ anonymous: false,
632
+ name: 'AdaptersRemoved',
633
+ inputs: [
634
+ {
635
+ type: 'address[]',
636
+ name: 'adapters',
637
+ },
638
+ ],
639
+ },
640
+ {
641
+ type: 'event',
642
+ anonymous: false,
643
+ name: 'BridgeAdded',
644
+ inputs: [
645
+ {
646
+ type: 'address',
647
+ name: 'bridge',
648
+ indexed: true,
649
+ },
650
+ ],
651
+ },
652
+ {
653
+ type: 'event',
654
+ anonymous: false,
655
+ name: 'BridgeRemoved',
656
+ inputs: [
657
+ {
658
+ type: 'address',
659
+ name: 'bridge',
660
+ indexed: true,
661
+ },
662
+ ],
663
+ },
664
+ {
665
+ type: 'event',
666
+ anonymous: false,
667
+ name: 'BridgesAdded',
668
+ inputs: [
669
+ {
670
+ type: 'address[]',
671
+ name: 'bridges',
672
+ },
673
+ ],
674
+ },
675
+ {
676
+ type: 'event',
677
+ anonymous: false,
678
+ name: 'BridgesRemoved',
679
+ inputs: [
680
+ {
681
+ type: 'address[]',
682
+ name: 'bridges',
683
+ },
684
+ ],
685
+ },
686
+ {
687
+ type: 'event',
688
+ anonymous: false,
689
+ name: 'DexAdded',
690
+ inputs: [
691
+ {
692
+ type: 'address',
693
+ name: 'dex',
694
+ indexed: true,
695
+ },
696
+ ],
697
+ },
698
+ {
699
+ type: 'event',
700
+ anonymous: false,
701
+ name: 'DexRemoved',
702
+ inputs: [
703
+ {
704
+ type: 'address',
705
+ name: 'dex',
706
+ indexed: true,
707
+ },
708
+ ],
709
+ },
710
+ {
711
+ type: 'event',
712
+ anonymous: false,
713
+ name: 'DexesAdded',
714
+ inputs: [
715
+ {
716
+ type: 'address[]',
717
+ name: 'dexes',
718
+ },
719
+ ],
720
+ },
721
+ {
722
+ type: 'event',
723
+ anonymous: false,
724
+ name: 'DexesRemoved',
725
+ inputs: [
726
+ {
727
+ type: 'address[]',
728
+ name: 'dexes',
729
+ },
730
+ ],
731
+ },
732
+ {
733
+ type: 'function',
734
+ name: 'addAdapter',
735
+ constant: false,
736
+ payable: false,
737
+ inputs: [
738
+ {
739
+ type: 'address',
740
+ name: '_adapter',
741
+ },
742
+ ],
743
+ outputs: [],
744
+ },
745
+ {
746
+ type: 'function',
747
+ name: 'addAdapters',
748
+ constant: false,
749
+ payable: false,
750
+ inputs: [
751
+ {
752
+ type: 'address[]',
753
+ name: '_adapters',
754
+ },
755
+ ],
756
+ outputs: [],
757
+ },
758
+ {
759
+ type: 'function',
760
+ name: 'addBridge',
761
+ constant: false,
762
+ payable: false,
763
+ inputs: [
764
+ {
765
+ type: 'address',
766
+ name: '_bridge',
767
+ },
768
+ ],
769
+ outputs: [],
770
+ },
771
+ {
772
+ type: 'function',
773
+ name: 'addBridges',
774
+ constant: false,
775
+ payable: false,
776
+ inputs: [
777
+ {
778
+ type: 'address[]',
779
+ name: '_bridges',
780
+ },
781
+ ],
782
+ outputs: [],
783
+ },
784
+ {
785
+ type: 'function',
786
+ name: 'addDex',
787
+ constant: false,
788
+ payable: false,
789
+ inputs: [
790
+ {
791
+ type: 'address',
792
+ name: '_dex',
793
+ },
794
+ ],
795
+ outputs: [],
796
+ },
797
+ {
798
+ type: 'function',
799
+ name: 'addDexesAndBridges',
800
+ constant: false,
801
+ payable: false,
802
+ inputs: [
803
+ {
804
+ type: 'address[]',
805
+ name: '_dexs',
806
+ },
807
+ {
808
+ type: 'address[]',
809
+ name: '_bridges',
810
+ },
811
+ ],
812
+ outputs: [],
813
+ },
814
+ {
815
+ type: 'function',
816
+ name: 'addDexs',
817
+ constant: false,
818
+ payable: false,
819
+ inputs: [
820
+ {
821
+ type: 'address[]',
822
+ name: '_dexs',
823
+ },
824
+ ],
825
+ outputs: [],
826
+ },
827
+ {
828
+ type: 'function',
829
+ name: 'isAdapterWhitelisted',
830
+ constant: true,
831
+ stateMutability: 'view',
832
+ payable: false,
833
+ inputs: [
834
+ {
835
+ type: 'address',
836
+ name: '_adapter',
837
+ },
838
+ ],
839
+ outputs: [
840
+ {
841
+ type: 'bool',
842
+ name: '',
843
+ },
844
+ ],
845
+ },
846
+ {
847
+ type: 'function',
848
+ name: 'isBridgeWhitelisted',
849
+ constant: true,
850
+ stateMutability: 'view',
851
+ payable: false,
852
+ inputs: [
853
+ {
854
+ type: 'address',
855
+ name: '_bridge',
856
+ },
857
+ ],
858
+ outputs: [
859
+ {
860
+ type: 'bool',
861
+ name: '',
862
+ },
863
+ ],
864
+ },
865
+ {
866
+ type: 'function',
867
+ name: 'isDexWhitelisted',
868
+ constant: true,
869
+ stateMutability: 'view',
870
+ payable: false,
871
+ inputs: [
872
+ {
873
+ type: 'address',
874
+ name: '_dex',
875
+ },
876
+ ],
877
+ outputs: [
878
+ {
879
+ type: 'bool',
880
+ name: '',
881
+ },
882
+ ],
883
+ },
884
+ {
885
+ type: 'function',
886
+ name: 'removeAdapter',
887
+ constant: false,
888
+ payable: false,
889
+ inputs: [
890
+ {
891
+ type: 'address',
892
+ name: '_adapter',
893
+ },
894
+ ],
895
+ outputs: [],
896
+ },
897
+ {
898
+ type: 'function',
899
+ name: 'removeAdapters',
900
+ constant: false,
901
+ payable: false,
902
+ inputs: [
903
+ {
904
+ type: 'address[]',
905
+ name: '_adapters',
906
+ },
907
+ ],
908
+ outputs: [],
909
+ },
910
+ {
911
+ type: 'function',
912
+ name: 'removeBridge',
913
+ constant: false,
914
+ payable: false,
915
+ inputs: [
916
+ {
917
+ type: 'address',
918
+ name: '_bridge',
919
+ },
920
+ ],
921
+ outputs: [],
922
+ },
923
+ {
924
+ type: 'function',
925
+ name: 'removeBridges',
926
+ constant: false,
927
+ payable: false,
928
+ inputs: [
929
+ {
930
+ type: 'address[]',
931
+ name: '_bridges',
932
+ },
933
+ ],
934
+ outputs: [],
935
+ },
936
+ {
937
+ type: 'function',
938
+ name: 'removeDex',
939
+ constant: false,
940
+ payable: false,
941
+ inputs: [
942
+ {
943
+ type: 'address',
944
+ name: '_dex',
945
+ },
946
+ ],
947
+ outputs: [],
948
+ },
949
+ {
950
+ type: 'function',
951
+ name: 'removeDexesAndBridges',
952
+ constant: false,
953
+ payable: false,
954
+ inputs: [
955
+ {
956
+ type: 'address[]',
957
+ name: '_dexs',
958
+ },
959
+ {
960
+ type: 'address[]',
961
+ name: '_bridges',
962
+ },
963
+ ],
964
+ outputs: [],
965
+ },
966
+ {
967
+ type: 'function',
968
+ name: 'removeDexs',
969
+ constant: false,
970
+ payable: false,
971
+ inputs: [
972
+ {
973
+ type: 'address[]',
974
+ name: '_dexs',
975
+ },
976
+ ],
977
+ outputs: [],
978
+ },
979
+ {
980
+ type: 'error',
981
+ name: 'InsufficientBalance',
982
+ inputs: [
983
+ {
984
+ type: 'uint256',
985
+ name: 'amount',
986
+ },
987
+ {
988
+ type: 'uint256',
989
+ name: 'contractBalance',
990
+ },
991
+ ],
992
+ },
993
+ {
994
+ type: 'error',
995
+ name: 'NativeTransferFailed',
996
+ inputs: [],
997
+ },
998
+ {
999
+ type: 'error',
1000
+ name: 'NoTransferToNullAddress',
1001
+ inputs: [],
1002
+ },
1003
+ {
1004
+ type: 'error',
1005
+ name: 'ReentrancyError',
1006
+ inputs: [],
1007
+ },
1008
+ {
1009
+ type: 'error',
1010
+ name: 'WithdrawFailed',
1011
+ inputs: [],
1012
+ },
1013
+ {
1014
+ type: 'event',
1015
+ anonymous: false,
1016
+ name: 'LogWithdraw',
1017
+ inputs: [
1018
+ {
1019
+ type: 'address',
1020
+ name: 'tokenAddress',
1021
+ indexed: true,
1022
+ },
1023
+ {
1024
+ type: 'address',
1025
+ name: 'to',
1026
+ indexed: false,
1027
+ },
1028
+ {
1029
+ type: 'uint256',
1030
+ name: 'amount',
1031
+ indexed: false,
1032
+ },
1033
+ ],
1034
+ },
1035
+ {
1036
+ type: 'function',
1037
+ name: 'executeCallAndWithdraw',
1038
+ constant: false,
1039
+ payable: false,
1040
+ inputs: [
1041
+ {
1042
+ type: 'address',
1043
+ name: '_callTo',
1044
+ },
1045
+ {
1046
+ type: 'bytes',
1047
+ name: '_callData',
1048
+ },
1049
+ {
1050
+ type: 'address',
1051
+ name: '_token',
1052
+ },
1053
+ {
1054
+ type: 'address',
1055
+ name: '_to',
1056
+ },
1057
+ {
1058
+ type: 'uint256',
1059
+ name: '_amount',
1060
+ },
1061
+ ],
1062
+ outputs: [],
1063
+ },
1064
+ {
1065
+ type: 'function',
1066
+ name: 'withdraw',
1067
+ constant: false,
1068
+ payable: false,
1069
+ inputs: [
1070
+ {
1071
+ type: 'address',
1072
+ name: '_token',
1073
+ },
1074
+ {
1075
+ type: 'address',
1076
+ name: '_to',
1077
+ },
1078
+ {
1079
+ type: 'uint256',
1080
+ name: '_amount',
1081
+ },
1082
+ ],
1083
+ outputs: [],
1084
+ },
1085
+ {
1086
+ type: 'error',
1087
+ name: 'InvalidPermit',
1088
+ inputs: [
1089
+ {
1090
+ type: 'string',
1091
+ name: '',
1092
+ },
1093
+ ],
1094
+ },
1095
+ {
1096
+ type: 'error',
1097
+ name: 'InvalidPermitType',
1098
+ inputs: [],
1099
+ },
1100
+ {
1101
+ type: 'error',
1102
+ name: 'NoSwapFromZeroAmount',
1103
+ inputs: [],
1104
+ },
1105
+ {
1106
+ type: 'error',
1107
+ name: 'NullAddrIsNotAValidRecipient',
1108
+ inputs: [],
1109
+ },
1110
+ {
1111
+ type: 'error',
1112
+ name: 'NullAddrIsNotAValidSpender',
1113
+ inputs: [],
1114
+ },
1115
+ {
1116
+ type: 'error',
1117
+ name: 'SlippageTooHigh',
1118
+ inputs: [
1119
+ {
1120
+ type: 'uint256',
1121
+ name: 'minAmount',
1122
+ },
1123
+ {
1124
+ type: 'uint256',
1125
+ name: 'returnAmount',
1126
+ },
1127
+ ],
1128
+ },
1129
+ {
1130
+ type: 'error',
1131
+ name: 'SwapCallFailed',
1132
+ inputs: [
1133
+ {
1134
+ type: 'address',
1135
+ name: 'target',
1136
+ },
1137
+ {
1138
+ type: 'bytes4',
1139
+ name: 'funSig',
1140
+ },
1141
+ {
1142
+ type: 'bytes',
1143
+ name: 'reason',
1144
+ },
1145
+ ],
1146
+ },
1147
+ {
1148
+ type: 'event',
1149
+ anonymous: false,
1150
+ name: 'DZapBatchTokenSwapped',
1151
+ inputs: [
1152
+ {
1153
+ type: 'bytes',
1154
+ name: 'transactionId',
1155
+ indexed: true,
1156
+ },
1157
+ {
1158
+ type: 'address',
1159
+ name: 'sender',
1160
+ indexed: true,
1161
+ },
1162
+ {
1163
+ type: 'tuple[]',
1164
+ name: 'swapInfo',
1165
+ components: [
1166
+ {
1167
+ type: 'string',
1168
+ name: 'dex',
1169
+ },
1170
+ {
1171
+ type: 'address',
1172
+ name: 'callTo',
1173
+ },
1174
+ {
1175
+ type: 'address',
1176
+ name: 'recipient',
1177
+ },
1178
+ {
1179
+ type: 'address',
1180
+ name: 'fromToken',
1181
+ },
1182
+ {
1183
+ type: 'address',
1184
+ name: 'toToken',
1185
+ },
1186
+ {
1187
+ type: 'uint256',
1188
+ name: 'fromAmount',
1189
+ },
1190
+ {
1191
+ type: 'uint256',
1192
+ name: 'returnToAmount',
1193
+ },
1194
+ ],
1195
+ },
1196
+ ],
1197
+ },
1198
+ {
1199
+ type: 'event',
1200
+ anonymous: false,
1201
+ name: 'DZapTokenSwapped',
1202
+ inputs: [
1203
+ {
1204
+ type: 'bytes',
1205
+ name: 'transactionId',
1206
+ indexed: true,
1207
+ },
1208
+ {
1209
+ type: 'address',
1210
+ name: 'sender',
1211
+ indexed: true,
1212
+ },
1213
+ {
1214
+ type: 'tuple',
1215
+ name: 'swapInfo',
1216
+ indexed: false,
1217
+ components: [
1218
+ {
1219
+ type: 'string',
1220
+ name: 'dex',
1221
+ },
1222
+ {
1223
+ type: 'address',
1224
+ name: 'callTo',
1225
+ },
1226
+ {
1227
+ type: 'address',
1228
+ name: 'recipient',
1229
+ },
1230
+ {
1231
+ type: 'address',
1232
+ name: 'fromToken',
1233
+ },
1234
+ {
1235
+ type: 'address',
1236
+ name: 'toToken',
1237
+ },
1238
+ {
1239
+ type: 'uint256',
1240
+ name: 'fromAmount',
1241
+ },
1242
+ {
1243
+ type: 'uint256',
1244
+ name: 'returnToAmount',
1245
+ },
1246
+ ],
1247
+ },
1248
+ ],
1249
+ },
1250
+ {
1251
+ type: 'function',
1252
+ name: 'swap',
1253
+ constant: false,
1254
+ stateMutability: 'payable',
1255
+ payable: true,
1256
+ inputs: [
1257
+ {
1258
+ type: 'bytes',
1259
+ name: '_transactionId',
1260
+ },
1261
+ {
1262
+ type: 'bytes',
1263
+ name: '_batchDepositSignature',
1264
+ },
1265
+ {
1266
+ type: 'tuple',
1267
+ name: '_tokenDepositDetails',
1268
+ components: [
1269
+ {
1270
+ type: 'tuple[]',
1271
+ name: 'permitted',
1272
+ components: [
1273
+ {
1274
+ type: 'address',
1275
+ name: 'token',
1276
+ },
1277
+ {
1278
+ type: 'uint256',
1279
+ name: 'amount',
1280
+ },
1281
+ ],
1282
+ },
1283
+ {
1284
+ type: 'uint256',
1285
+ name: 'nonce',
1286
+ },
1287
+ {
1288
+ type: 'uint256',
1289
+ name: 'deadline',
1290
+ },
1291
+ ],
1292
+ },
1293
+ {
1294
+ type: 'tuple[]',
1295
+ name: '_swapData',
1296
+ components: [
1297
+ {
1298
+ type: 'address',
1299
+ name: 'recipient',
1300
+ },
1301
+ {
1302
+ type: 'address',
1303
+ name: 'from',
1304
+ },
1305
+ {
1306
+ type: 'address',
1307
+ name: 'to',
1308
+ },
1309
+ {
1310
+ type: 'uint256',
1311
+ name: 'fromAmount',
1312
+ },
1313
+ {
1314
+ type: 'uint256',
1315
+ name: 'minToAmount',
1316
+ },
1317
+ ],
1318
+ },
1319
+ {
1320
+ type: 'tuple[]',
1321
+ name: '_swapExecutionData',
1322
+ components: [
1323
+ {
1324
+ type: 'string',
1325
+ name: 'dex',
1326
+ },
1327
+ {
1328
+ type: 'address',
1329
+ name: 'callTo',
1330
+ },
1331
+ {
1332
+ type: 'address',
1333
+ name: 'approveTo',
1334
+ },
1335
+ {
1336
+ type: 'bytes',
1337
+ name: 'swapCallData',
1338
+ },
1339
+ {
1340
+ type: 'bool',
1341
+ name: 'isDirectTransfer',
1342
+ },
1343
+ ],
1344
+ },
1345
+ {
1346
+ type: 'bool',
1347
+ name: 'withoutRevert',
1348
+ },
1349
+ ],
1350
+ outputs: [],
1351
+ },
1352
+ {
1353
+ type: 'function',
1354
+ name: 'swap',
1355
+ constant: false,
1356
+ stateMutability: 'payable',
1357
+ payable: true,
1358
+ inputs: [
1359
+ {
1360
+ type: 'bytes',
1361
+ name: '_transactionId',
1362
+ },
1363
+ {
1364
+ type: 'tuple[]',
1365
+ name: '_inputTokens',
1366
+ components: [
1367
+ {
1368
+ type: 'address',
1369
+ name: 'token',
1370
+ },
1371
+ {
1372
+ type: 'uint256',
1373
+ name: 'amount',
1374
+ },
1375
+ {
1376
+ type: 'bytes',
1377
+ name: 'permit',
1378
+ },
1379
+ ],
1380
+ },
1381
+ {
1382
+ type: 'tuple[]',
1383
+ name: '_swapData',
1384
+ components: [
1385
+ {
1386
+ type: 'address',
1387
+ name: 'recipient',
1388
+ },
1389
+ {
1390
+ type: 'address',
1391
+ name: 'from',
1392
+ },
1393
+ {
1394
+ type: 'address',
1395
+ name: 'to',
1396
+ },
1397
+ {
1398
+ type: 'uint256',
1399
+ name: 'fromAmount',
1400
+ },
1401
+ {
1402
+ type: 'uint256',
1403
+ name: 'minToAmount',
1404
+ },
1405
+ ],
1406
+ },
1407
+ {
1408
+ type: 'tuple[]',
1409
+ name: '_swapExecutionData',
1410
+ components: [
1411
+ {
1412
+ type: 'string',
1413
+ name: 'dex',
1414
+ },
1415
+ {
1416
+ type: 'address',
1417
+ name: 'callTo',
1418
+ },
1419
+ {
1420
+ type: 'address',
1421
+ name: 'approveTo',
1422
+ },
1423
+ {
1424
+ type: 'bytes',
1425
+ name: 'swapCallData',
1426
+ },
1427
+ {
1428
+ type: 'bool',
1429
+ name: 'isDirectTransfer',
1430
+ },
1431
+ ],
1432
+ },
1433
+ {
1434
+ type: 'bool',
1435
+ name: 'withoutRevert',
1436
+ },
1437
+ ],
1438
+ outputs: [],
1439
+ },
1440
+ {
1441
+ type: 'function',
1442
+ name: 'swap',
1443
+ constant: false,
1444
+ stateMutability: 'payable',
1445
+ payable: true,
1446
+ inputs: [
1447
+ {
1448
+ type: 'bytes',
1449
+ name: '_transactionId',
1450
+ },
1451
+ {
1452
+ type: 'bytes',
1453
+ name: '_tokenApprovalData',
1454
+ },
1455
+ {
1456
+ type: 'tuple',
1457
+ name: '_swapData',
1458
+ components: [
1459
+ {
1460
+ type: 'address',
1461
+ name: 'recipient',
1462
+ },
1463
+ {
1464
+ type: 'address',
1465
+ name: 'from',
1466
+ },
1467
+ {
1468
+ type: 'address',
1469
+ name: 'to',
1470
+ },
1471
+ {
1472
+ type: 'uint256',
1473
+ name: 'fromAmount',
1474
+ },
1475
+ {
1476
+ type: 'uint256',
1477
+ name: 'minToAmount',
1478
+ },
1479
+ ],
1480
+ },
1481
+ {
1482
+ type: 'tuple',
1483
+ name: '_swapExecutionData',
1484
+ components: [
1485
+ {
1486
+ type: 'string',
1487
+ name: 'dex',
1488
+ },
1489
+ {
1490
+ type: 'address',
1491
+ name: 'callTo',
1492
+ },
1493
+ {
1494
+ type: 'address',
1495
+ name: 'approveTo',
1496
+ },
1497
+ {
1498
+ type: 'bytes',
1499
+ name: 'swapCallData',
1500
+ },
1501
+ {
1502
+ type: 'bool',
1503
+ name: 'isDirectTransfer',
1504
+ },
1505
+ ],
1506
+ },
1507
+ ],
1508
+ outputs: [],
1509
+ },
1510
+ {
1511
+ type: 'error',
1512
+ name: 'AdapterCallFailed',
1513
+ inputs: [
1514
+ {
1515
+ type: 'address',
1516
+ name: 'adapter',
1517
+ },
1518
+ {
1519
+ type: 'bytes',
1520
+ name: 'res',
1521
+ },
1522
+ ],
1523
+ },
1524
+ {
1525
+ type: 'error',
1526
+ name: 'SigDeadlineExpired',
1527
+ inputs: [],
1528
+ },
1529
+ {
1530
+ type: 'error',
1531
+ name: 'UnauthorizedSigner',
1532
+ inputs: [],
1533
+ },
1534
+ {
1535
+ type: 'event',
1536
+ anonymous: false,
1537
+ name: 'BridgeStarted',
1538
+ inputs: [
1539
+ {
1540
+ type: 'bytes',
1541
+ name: 'transactionId',
1542
+ indexed: true,
1543
+ },
1544
+ {
1545
+ type: 'address',
1546
+ name: 'user',
1547
+ indexed: true,
1548
+ },
1549
+ {
1550
+ type: 'bytes',
1551
+ name: 'receiver',
1552
+ indexed: false,
1553
+ },
1554
+ {
1555
+ type: 'string',
1556
+ name: 'bridge',
1557
+ indexed: false,
1558
+ },
1559
+ {
1560
+ type: 'address',
1561
+ name: 'bridgeAddress',
1562
+ indexed: false,
1563
+ },
1564
+ {
1565
+ type: 'address',
1566
+ name: 'from',
1567
+ indexed: false,
1568
+ },
1569
+ {
1570
+ type: 'bytes',
1571
+ name: 'to',
1572
+ indexed: false,
1573
+ },
1574
+ {
1575
+ type: 'uint256',
1576
+ name: 'amount',
1577
+ indexed: false,
1578
+ },
1579
+ {
1580
+ type: 'uint256',
1581
+ name: 'destinationChainId',
1582
+ indexed: false,
1583
+ },
1584
+ {
1585
+ type: 'bool',
1586
+ name: 'hasDestinationCall',
1587
+ indexed: false,
1588
+ },
1589
+ ],
1590
+ },
1591
+ {
1592
+ type: 'event',
1593
+ anonymous: false,
1594
+ name: 'DZapBridgeStarted',
1595
+ inputs: [
1596
+ {
1597
+ type: 'bytes',
1598
+ name: 'transactionId',
1599
+ indexed: true,
1600
+ },
1601
+ {
1602
+ type: 'address',
1603
+ name: 'user',
1604
+ indexed: true,
1605
+ },
1606
+ {
1607
+ type: 'address',
1608
+ name: 'integrator',
1609
+ indexed: true,
1610
+ },
1611
+ ],
1612
+ },
1613
+ {
1614
+ type: 'function',
1615
+ name: 'bridge',
1616
+ constant: false,
1617
+ stateMutability: 'payable',
1618
+ payable: true,
1619
+ inputs: [
1620
+ {
1621
+ type: 'bytes',
1622
+ name: '_transactionId',
1623
+ },
1624
+ {
1625
+ type: 'bytes',
1626
+ name: '_feeData',
1627
+ },
1628
+ {
1629
+ type: 'bytes',
1630
+ name: '_feeVerificationSignature',
1631
+ },
1632
+ {
1633
+ type: 'uint256',
1634
+ name: '_deadline',
1635
+ },
1636
+ {
1637
+ type: 'tuple[]',
1638
+ name: '_erc20Token',
1639
+ components: [
1640
+ {
1641
+ type: 'address',
1642
+ name: 'token',
1643
+ },
1644
+ {
1645
+ type: 'uint256',
1646
+ name: 'amount',
1647
+ },
1648
+ {
1649
+ type: 'bytes',
1650
+ name: 'permit',
1651
+ },
1652
+ ],
1653
+ },
1654
+ {
1655
+ type: 'tuple[]',
1656
+ name: '_swapData',
1657
+ components: [
1658
+ {
1659
+ type: 'address',
1660
+ name: 'recipient',
1661
+ },
1662
+ {
1663
+ type: 'address',
1664
+ name: 'from',
1665
+ },
1666
+ {
1667
+ type: 'address',
1668
+ name: 'to',
1669
+ },
1670
+ {
1671
+ type: 'uint256',
1672
+ name: 'fromAmount',
1673
+ },
1674
+ {
1675
+ type: 'uint256',
1676
+ name: 'minToAmount',
1677
+ },
1678
+ {
1679
+ type: 'bool',
1680
+ name: 'updateBridgeInAmount',
1681
+ },
1682
+ ],
1683
+ },
1684
+ {
1685
+ type: 'tuple[]',
1686
+ name: '_swapExecutionData',
1687
+ components: [
1688
+ {
1689
+ type: 'string',
1690
+ name: 'dex',
1691
+ },
1692
+ {
1693
+ type: 'address',
1694
+ name: 'callTo',
1695
+ },
1696
+ {
1697
+ type: 'address',
1698
+ name: 'approveTo',
1699
+ },
1700
+ {
1701
+ type: 'bytes',
1702
+ name: 'swapCallData',
1703
+ },
1704
+ {
1705
+ type: 'bool',
1706
+ name: 'isDirectTransfer',
1707
+ },
1708
+ ],
1709
+ },
1710
+ {
1711
+ type: 'tuple[]',
1712
+ name: '_adapterInfo',
1713
+ components: [
1714
+ {
1715
+ type: 'address',
1716
+ name: 'adapter',
1717
+ },
1718
+ {
1719
+ type: 'bytes',
1720
+ name: 'adapterData',
1721
+ },
1722
+ ],
1723
+ },
1724
+ ],
1725
+ outputs: [],
1726
+ },
1727
+ {
1728
+ type: 'function',
1729
+ name: 'bridge',
1730
+ constant: false,
1731
+ stateMutability: 'payable',
1732
+ payable: true,
1733
+ inputs: [
1734
+ {
1735
+ type: 'bytes',
1736
+ name: '_transactionId',
1737
+ },
1738
+ {
1739
+ type: 'bytes',
1740
+ name: '_feeData',
1741
+ },
1742
+ {
1743
+ type: 'bytes',
1744
+ name: '_feeVerificationSignature',
1745
+ },
1746
+ {
1747
+ type: 'bytes',
1748
+ name: '_batchDepositSignature',
1749
+ },
1750
+ {
1751
+ type: 'uint256',
1752
+ name: '_deadline',
1753
+ },
1754
+ {
1755
+ type: 'tuple',
1756
+ name: '_tokenDepositDetails',
1757
+ components: [
1758
+ {
1759
+ type: 'tuple[]',
1760
+ name: 'permitted',
1761
+ components: [
1762
+ {
1763
+ type: 'address',
1764
+ name: 'token',
1765
+ },
1766
+ {
1767
+ type: 'uint256',
1768
+ name: 'amount',
1769
+ },
1770
+ ],
1771
+ },
1772
+ {
1773
+ type: 'uint256',
1774
+ name: 'nonce',
1775
+ },
1776
+ {
1777
+ type: 'uint256',
1778
+ name: 'deadline',
1779
+ },
1780
+ ],
1781
+ },
1782
+ {
1783
+ type: 'tuple[]',
1784
+ name: '_swapData',
1785
+ components: [
1786
+ {
1787
+ type: 'address',
1788
+ name: 'recipient',
1789
+ },
1790
+ {
1791
+ type: 'address',
1792
+ name: 'from',
1793
+ },
1794
+ {
1795
+ type: 'address',
1796
+ name: 'to',
1797
+ },
1798
+ {
1799
+ type: 'uint256',
1800
+ name: 'fromAmount',
1801
+ },
1802
+ {
1803
+ type: 'uint256',
1804
+ name: 'minToAmount',
1805
+ },
1806
+ {
1807
+ type: 'bool',
1808
+ name: 'updateBridgeInAmount',
1809
+ },
1810
+ ],
1811
+ },
1812
+ {
1813
+ type: 'tuple[]',
1814
+ name: '_swapExecutionData',
1815
+ components: [
1816
+ {
1817
+ type: 'string',
1818
+ name: 'dex',
1819
+ },
1820
+ {
1821
+ type: 'address',
1822
+ name: 'callTo',
1823
+ },
1824
+ {
1825
+ type: 'address',
1826
+ name: 'approveTo',
1827
+ },
1828
+ {
1829
+ type: 'bytes',
1830
+ name: 'swapCallData',
1831
+ },
1832
+ {
1833
+ type: 'bool',
1834
+ name: 'isDirectTransfer',
1835
+ },
1836
+ ],
1837
+ },
1838
+ {
1839
+ type: 'tuple[]',
1840
+ name: '_adapterInfo',
1841
+ components: [
1842
+ {
1843
+ type: 'address',
1844
+ name: 'adapter',
1845
+ },
1846
+ {
1847
+ type: 'bytes',
1848
+ name: 'adapterData',
1849
+ },
1850
+ ],
1851
+ },
1852
+ ],
1853
+ outputs: [],
1854
+ },
1855
+ {
1856
+ type: 'function',
1857
+ name: 'bridge',
1858
+ constant: false,
1859
+ stateMutability: 'payable',
1860
+ payable: true,
1861
+ inputs: [
1862
+ {
1863
+ type: 'bytes',
1864
+ name: '_transactionId',
1865
+ },
1866
+ {
1867
+ type: 'bytes',
1868
+ name: '_feeData',
1869
+ },
1870
+ {
1871
+ type: 'bytes',
1872
+ name: '_feeVerificationSignature',
1873
+ },
1874
+ {
1875
+ type: 'uint256',
1876
+ name: '_deadline',
1877
+ },
1878
+ {
1879
+ type: 'tuple',
1880
+ name: '_intputTokens',
1881
+ components: [
1882
+ {
1883
+ type: 'address',
1884
+ name: 'token',
1885
+ },
1886
+ {
1887
+ type: 'uint256',
1888
+ name: 'amount',
1889
+ },
1890
+ {
1891
+ type: 'bytes',
1892
+ name: 'permit',
1893
+ },
1894
+ ],
1895
+ },
1896
+ {
1897
+ type: 'tuple',
1898
+ name: '_swapData',
1899
+ components: [
1900
+ {
1901
+ type: 'address',
1902
+ name: 'recipient',
1903
+ },
1904
+ {
1905
+ type: 'address',
1906
+ name: 'from',
1907
+ },
1908
+ {
1909
+ type: 'address',
1910
+ name: 'to',
1911
+ },
1912
+ {
1913
+ type: 'uint256',
1914
+ name: 'fromAmount',
1915
+ },
1916
+ {
1917
+ type: 'uint256',
1918
+ name: 'minToAmount',
1919
+ },
1920
+ {
1921
+ type: 'bool',
1922
+ name: 'updateBridgeInAmount',
1923
+ },
1924
+ ],
1925
+ },
1926
+ {
1927
+ type: 'tuple',
1928
+ name: '_swapExecutionData',
1929
+ components: [
1930
+ {
1931
+ type: 'string',
1932
+ name: 'dex',
1933
+ },
1934
+ {
1935
+ type: 'address',
1936
+ name: 'callTo',
1937
+ },
1938
+ {
1939
+ type: 'address',
1940
+ name: 'approveTo',
1941
+ },
1942
+ {
1943
+ type: 'bytes',
1944
+ name: 'swapCallData',
1945
+ },
1946
+ {
1947
+ type: 'bool',
1948
+ name: 'isDirectTransfer',
1949
+ },
1950
+ ],
1951
+ },
1952
+ {
1953
+ type: 'tuple',
1954
+ name: '_adapterInfo',
1955
+ components: [
1956
+ {
1957
+ type: 'address',
1958
+ name: 'adapter',
1959
+ },
1960
+ {
1961
+ type: 'bytes',
1962
+ name: 'adapterData',
1963
+ },
1964
+ ],
1965
+ },
1966
+ ],
1967
+ outputs: [],
1968
+ },
1969
+ {
1970
+ type: 'function',
1971
+ name: 'bridge',
1972
+ constant: false,
1973
+ stateMutability: 'payable',
1974
+ payable: true,
1975
+ inputs: [
1976
+ {
1977
+ type: 'bytes',
1978
+ name: '_transactionId',
1979
+ },
1980
+ {
1981
+ type: 'bytes',
1982
+ name: '_feeData',
1983
+ },
1984
+ {
1985
+ type: 'bytes',
1986
+ name: '_feeVerificationSignature',
1987
+ },
1988
+ {
1989
+ type: 'uint256',
1990
+ name: '_deadline',
1991
+ },
1992
+ {
1993
+ type: 'tuple',
1994
+ name: '_intputTokens',
1995
+ components: [
1996
+ {
1997
+ type: 'address',
1998
+ name: 'token',
1999
+ },
2000
+ {
2001
+ type: 'uint256',
2002
+ name: 'amount',
2003
+ },
2004
+ {
2005
+ type: 'bytes',
2006
+ name: 'permit',
2007
+ },
2008
+ ],
2009
+ },
2010
+ {
2011
+ type: 'tuple',
2012
+ name: '_adapterInfo',
2013
+ components: [
2014
+ {
2015
+ type: 'address',
2016
+ name: 'adapter',
2017
+ },
2018
+ {
2019
+ type: 'bytes',
2020
+ name: 'adapterData',
2021
+ },
2022
+ ],
2023
+ },
2024
+ ],
2025
+ outputs: [],
2026
+ },
2027
+ {
2028
+ type: 'event',
2029
+ anonymous: false,
2030
+ name: 'DZapGasLessStarted',
2031
+ inputs: [
2032
+ {
2033
+ type: 'bytes',
2034
+ name: '_transactionId',
2035
+ indexed: true,
2036
+ },
2037
+ {
2038
+ type: 'address',
2039
+ name: 'executor',
2040
+ indexed: true,
2041
+ },
2042
+ {
2043
+ type: 'address',
2044
+ name: '_user',
2045
+ indexed: true,
2046
+ },
2047
+ ],
2048
+ },
2049
+ {
2050
+ type: 'function',
2051
+ name: 'executeBridge',
2052
+ constant: false,
2053
+ stateMutability: 'payable',
2054
+ payable: true,
2055
+ inputs: [
2056
+ {
2057
+ type: 'bytes',
2058
+ name: '_transactionId',
2059
+ },
2060
+ {
2061
+ type: 'bytes',
2062
+ name: '_bridgeFeeData',
2063
+ },
2064
+ {
2065
+ type: 'bytes',
2066
+ name: '_userIntentSignature',
2067
+ },
2068
+ {
2069
+ type: 'bytes',
2070
+ name: '_feeVerificationSignature',
2071
+ },
2072
+ {
2073
+ type: 'uint256',
2074
+ name: '_userIntentDeadline',
2075
+ },
2076
+ {
2077
+ type: 'uint256',
2078
+ name: '_bridgeFeeDeadline',
2079
+ },
2080
+ {
2081
+ type: 'address',
2082
+ name: '_user',
2083
+ },
2084
+ {
2085
+ type: 'tuple',
2086
+ name: '_inputToken',
2087
+ components: [
2088
+ {
2089
+ type: 'address',
2090
+ name: 'token',
2091
+ },
2092
+ {
2093
+ type: 'uint256',
2094
+ name: 'amount',
2095
+ },
2096
+ {
2097
+ type: 'bytes',
2098
+ name: 'permit',
2099
+ },
2100
+ ],
2101
+ },
2102
+ {
2103
+ type: 'tuple',
2104
+ name: '_executorFeeInfo',
2105
+ components: [
2106
+ {
2107
+ type: 'address',
2108
+ name: 'token',
2109
+ },
2110
+ {
2111
+ type: 'uint256',
2112
+ name: 'amount',
2113
+ },
2114
+ ],
2115
+ },
2116
+ {
2117
+ type: 'tuple',
2118
+ name: '_adapterInfo',
2119
+ components: [
2120
+ {
2121
+ type: 'address',
2122
+ name: 'adapter',
2123
+ },
2124
+ {
2125
+ type: 'bytes',
2126
+ name: 'adapterData',
2127
+ },
2128
+ ],
2129
+ },
2130
+ ],
2131
+ outputs: [],
2132
+ },
2133
+ {
2134
+ type: 'function',
2135
+ name: 'executeMultiBridge',
2136
+ constant: false,
2137
+ stateMutability: 'payable',
2138
+ payable: true,
2139
+ inputs: [
2140
+ {
2141
+ type: 'bytes',
2142
+ name: '_transactionId',
2143
+ },
2144
+ {
2145
+ type: 'bytes',
2146
+ name: '_bridgeFeeData',
2147
+ },
2148
+ {
2149
+ type: 'bytes',
2150
+ name: '_userIntentSignature',
2151
+ },
2152
+ {
2153
+ type: 'bytes',
2154
+ name: '_feeVerificationSignature',
2155
+ },
2156
+ {
2157
+ type: 'uint256',
2158
+ name: '_userIntentDeadline',
2159
+ },
2160
+ {
2161
+ type: 'uint256',
2162
+ name: '_bridgeFeeDeadline',
2163
+ },
2164
+ {
2165
+ type: 'address',
2166
+ name: '_user',
2167
+ },
2168
+ {
2169
+ type: 'tuple[]',
2170
+ name: '_inputTokens',
2171
+ components: [
2172
+ {
2173
+ type: 'address',
2174
+ name: 'token',
2175
+ },
2176
+ {
2177
+ type: 'uint256',
2178
+ name: 'amount',
2179
+ },
2180
+ {
2181
+ type: 'bytes',
2182
+ name: 'permit',
2183
+ },
2184
+ ],
2185
+ },
2186
+ {
2187
+ type: 'tuple[]',
2188
+ name: '_executorFeeInfo',
2189
+ components: [
2190
+ {
2191
+ type: 'address',
2192
+ name: 'token',
2193
+ },
2194
+ {
2195
+ type: 'uint256',
2196
+ name: 'amount',
2197
+ },
2198
+ ],
2199
+ },
2200
+ {
2201
+ type: 'tuple[]',
2202
+ name: '_swapData',
2203
+ components: [
2204
+ {
2205
+ type: 'address',
2206
+ name: 'recipient',
2207
+ },
2208
+ {
2209
+ type: 'address',
2210
+ name: 'from',
2211
+ },
2212
+ {
2213
+ type: 'address',
2214
+ name: 'to',
2215
+ },
2216
+ {
2217
+ type: 'uint256',
2218
+ name: 'fromAmount',
2219
+ },
2220
+ {
2221
+ type: 'uint256',
2222
+ name: 'minToAmount',
2223
+ },
2224
+ {
2225
+ type: 'bool',
2226
+ name: 'updateBridgeInAmount',
2227
+ },
2228
+ ],
2229
+ },
2230
+ {
2231
+ type: 'tuple[]',
2232
+ name: '_swapExecutionData',
2233
+ components: [
2234
+ {
2235
+ type: 'string',
2236
+ name: 'dex',
2237
+ },
2238
+ {
2239
+ type: 'address',
2240
+ name: 'callTo',
2241
+ },
2242
+ {
2243
+ type: 'address',
2244
+ name: 'approveTo',
2245
+ },
2246
+ {
2247
+ type: 'bytes',
2248
+ name: 'swapCallData',
2249
+ },
2250
+ {
2251
+ type: 'bool',
2252
+ name: 'isDirectTransfer',
2253
+ },
2254
+ ],
2255
+ },
2256
+ {
2257
+ type: 'tuple[]',
2258
+ name: '_adapterInfo',
2259
+ components: [
2260
+ {
2261
+ type: 'address',
2262
+ name: 'adapter',
2263
+ },
2264
+ {
2265
+ type: 'bytes',
2266
+ name: 'adapterData',
2267
+ },
2268
+ ],
2269
+ },
2270
+ ],
2271
+ outputs: [],
2272
+ },
2273
+ {
2274
+ type: 'function',
2275
+ name: 'executeMultiBridgeBatchWithPermit2Witness',
2276
+ constant: false,
2277
+ stateMutability: 'payable',
2278
+ payable: true,
2279
+ inputs: [
2280
+ {
2281
+ type: 'bytes',
2282
+ name: '_transactionId',
2283
+ },
2284
+ {
2285
+ type: 'bytes',
2286
+ name: '_bridgeFeeData',
2287
+ },
2288
+ {
2289
+ type: 'bytes',
2290
+ name: '_userIntentSignature',
2291
+ },
2292
+ {
2293
+ type: 'bytes',
2294
+ name: '_feeVerificationSignature',
2295
+ },
2296
+ {
2297
+ type: 'uint256',
2298
+ name: '_bridgeFeeDeadline',
2299
+ },
2300
+ {
2301
+ type: 'address',
2302
+ name: '_user',
2303
+ },
2304
+ {
2305
+ type: 'tuple',
2306
+ name: '_tokenDepositDetails',
2307
+ components: [
2308
+ {
2309
+ type: 'tuple[]',
2310
+ name: 'permitted',
2311
+ components: [
2312
+ {
2313
+ type: 'address',
2314
+ name: 'token',
2315
+ },
2316
+ {
2317
+ type: 'uint256',
2318
+ name: 'amount',
2319
+ },
2320
+ ],
2321
+ },
2322
+ {
2323
+ type: 'uint256',
2324
+ name: 'nonce',
2325
+ },
2326
+ {
2327
+ type: 'uint256',
2328
+ name: 'deadline',
2329
+ },
2330
+ ],
2331
+ },
2332
+ {
2333
+ type: 'tuple[]',
2334
+ name: '_executorFeeInfo',
2335
+ components: [
2336
+ {
2337
+ type: 'address',
2338
+ name: 'token',
2339
+ },
2340
+ {
2341
+ type: 'uint256',
2342
+ name: 'amount',
2343
+ },
2344
+ ],
2345
+ },
2346
+ {
2347
+ type: 'tuple[]',
2348
+ name: '_swapData',
2349
+ components: [
2350
+ {
2351
+ type: 'address',
2352
+ name: 'recipient',
2353
+ },
2354
+ {
2355
+ type: 'address',
2356
+ name: 'from',
2357
+ },
2358
+ {
2359
+ type: 'address',
2360
+ name: 'to',
2361
+ },
2362
+ {
2363
+ type: 'uint256',
2364
+ name: 'fromAmount',
2365
+ },
2366
+ {
2367
+ type: 'uint256',
2368
+ name: 'minToAmount',
2369
+ },
2370
+ {
2371
+ type: 'bool',
2372
+ name: 'updateBridgeInAmount',
2373
+ },
2374
+ ],
2375
+ },
2376
+ {
2377
+ type: 'tuple[]',
2378
+ name: '_swapExecutionData',
2379
+ components: [
2380
+ {
2381
+ type: 'string',
2382
+ name: 'dex',
2383
+ },
2384
+ {
2385
+ type: 'address',
2386
+ name: 'callTo',
2387
+ },
2388
+ {
2389
+ type: 'address',
2390
+ name: 'approveTo',
2391
+ },
2392
+ {
2393
+ type: 'bytes',
2394
+ name: 'swapCallData',
2395
+ },
2396
+ {
2397
+ type: 'bool',
2398
+ name: 'isDirectTransfer',
2399
+ },
2400
+ ],
2401
+ },
2402
+ {
2403
+ type: 'tuple[]',
2404
+ name: '_adapterInfo',
2405
+ components: [
2406
+ {
2407
+ type: 'address',
2408
+ name: 'adapter',
2409
+ },
2410
+ {
2411
+ type: 'bytes',
2412
+ name: 'adapterData',
2413
+ },
2414
+ ],
2415
+ },
2416
+ ],
2417
+ outputs: [],
2418
+ },
2419
+ {
2420
+ type: 'function',
2421
+ name: 'executeMultiSwap',
2422
+ constant: false,
2423
+ payable: false,
2424
+ inputs: [
2425
+ {
2426
+ type: 'bytes',
2427
+ name: '_transactionId',
2428
+ },
2429
+ {
2430
+ type: 'bytes',
2431
+ name: '_userIntentSignature',
2432
+ },
2433
+ {
2434
+ type: 'uint256',
2435
+ name: '_userIntentDeadline',
2436
+ },
2437
+ {
2438
+ type: 'address',
2439
+ name: '_user',
2440
+ },
2441
+ {
2442
+ type: 'tuple[]',
2443
+ name: '_inputTokens',
2444
+ components: [
2445
+ {
2446
+ type: 'address',
2447
+ name: 'token',
2448
+ },
2449
+ {
2450
+ type: 'uint256',
2451
+ name: 'amount',
2452
+ },
2453
+ {
2454
+ type: 'bytes',
2455
+ name: 'permit',
2456
+ },
2457
+ ],
2458
+ },
2459
+ {
2460
+ type: 'tuple[]',
2461
+ name: '_executorFeeInfo',
2462
+ components: [
2463
+ {
2464
+ type: 'address',
2465
+ name: 'token',
2466
+ },
2467
+ {
2468
+ type: 'uint256',
2469
+ name: 'amount',
2470
+ },
2471
+ ],
2472
+ },
2473
+ {
2474
+ type: 'tuple[]',
2475
+ name: '_swapData',
2476
+ components: [
2477
+ {
2478
+ type: 'address',
2479
+ name: 'recipient',
2480
+ },
2481
+ {
2482
+ type: 'address',
2483
+ name: 'from',
2484
+ },
2485
+ {
2486
+ type: 'address',
2487
+ name: 'to',
2488
+ },
2489
+ {
2490
+ type: 'uint256',
2491
+ name: 'fromAmount',
2492
+ },
2493
+ {
2494
+ type: 'uint256',
2495
+ name: 'minToAmount',
2496
+ },
2497
+ ],
2498
+ },
2499
+ {
2500
+ type: 'tuple[]',
2501
+ name: '_swapExecutionData',
2502
+ components: [
2503
+ {
2504
+ type: 'string',
2505
+ name: 'dex',
2506
+ },
2507
+ {
2508
+ type: 'address',
2509
+ name: 'callTo',
2510
+ },
2511
+ {
2512
+ type: 'address',
2513
+ name: 'approveTo',
2514
+ },
2515
+ {
2516
+ type: 'bytes',
2517
+ name: 'swapCallData',
2518
+ },
2519
+ {
2520
+ type: 'bool',
2521
+ name: 'isDirectTransfer',
2522
+ },
2523
+ ],
2524
+ },
2525
+ ],
2526
+ outputs: [],
2527
+ },
2528
+ {
2529
+ type: 'function',
2530
+ name: 'executeMultiSwapWithPermit2Witness',
2531
+ constant: false,
2532
+ payable: false,
2533
+ inputs: [
2534
+ {
2535
+ type: 'bytes',
2536
+ name: '_transactionId',
2537
+ },
2538
+ {
2539
+ type: 'bytes',
2540
+ name: '_userIntentSignature',
2541
+ },
2542
+ {
2543
+ type: 'address',
2544
+ name: '_user',
2545
+ },
2546
+ {
2547
+ type: 'tuple',
2548
+ name: '_tokenDepositDetails',
2549
+ components: [
2550
+ {
2551
+ type: 'tuple[]',
2552
+ name: 'permitted',
2553
+ components: [
2554
+ {
2555
+ type: 'address',
2556
+ name: 'token',
2557
+ },
2558
+ {
2559
+ type: 'uint256',
2560
+ name: 'amount',
2561
+ },
2562
+ ],
2563
+ },
2564
+ {
2565
+ type: 'uint256',
2566
+ name: 'nonce',
2567
+ },
2568
+ {
2569
+ type: 'uint256',
2570
+ name: 'deadline',
2571
+ },
2572
+ ],
2573
+ },
2574
+ {
2575
+ type: 'tuple[]',
2576
+ name: '_executorFeeInfo',
2577
+ components: [
2578
+ {
2579
+ type: 'address',
2580
+ name: 'token',
2581
+ },
2582
+ {
2583
+ type: 'uint256',
2584
+ name: 'amount',
2585
+ },
2586
+ ],
2587
+ },
2588
+ {
2589
+ type: 'tuple[]',
2590
+ name: '_swapData',
2591
+ components: [
2592
+ {
2593
+ type: 'address',
2594
+ name: 'recipient',
2595
+ },
2596
+ {
2597
+ type: 'address',
2598
+ name: 'from',
2599
+ },
2600
+ {
2601
+ type: 'address',
2602
+ name: 'to',
2603
+ },
2604
+ {
2605
+ type: 'uint256',
2606
+ name: 'fromAmount',
2607
+ },
2608
+ {
2609
+ type: 'uint256',
2610
+ name: 'minToAmount',
2611
+ },
2612
+ ],
2613
+ },
2614
+ {
2615
+ type: 'tuple[]',
2616
+ name: '_swapExecutionData',
2617
+ components: [
2618
+ {
2619
+ type: 'string',
2620
+ name: 'dex',
2621
+ },
2622
+ {
2623
+ type: 'address',
2624
+ name: 'callTo',
2625
+ },
2626
+ {
2627
+ type: 'address',
2628
+ name: 'approveTo',
2629
+ },
2630
+ {
2631
+ type: 'bytes',
2632
+ name: 'swapCallData',
2633
+ },
2634
+ {
2635
+ type: 'bool',
2636
+ name: 'isDirectTransfer',
2637
+ },
2638
+ ],
2639
+ },
2640
+ ],
2641
+ outputs: [],
2642
+ },
2643
+ {
2644
+ type: 'function',
2645
+ name: 'executeSwap',
2646
+ constant: false,
2647
+ payable: false,
2648
+ inputs: [
2649
+ {
2650
+ type: 'bytes',
2651
+ name: '_transactionId',
2652
+ },
2653
+ {
2654
+ type: 'bytes',
2655
+ name: '_userIntentSignature',
2656
+ },
2657
+ {
2658
+ type: 'bytes',
2659
+ name: '_tokenApprovalData',
2660
+ },
2661
+ {
2662
+ type: 'uint256',
2663
+ name: '_userIntentDeadline',
2664
+ },
2665
+ {
2666
+ type: 'address',
2667
+ name: '_user',
2668
+ },
2669
+ {
2670
+ type: 'tuple',
2671
+ name: '_executorFeeInfo',
2672
+ components: [
2673
+ {
2674
+ type: 'address',
2675
+ name: 'token',
2676
+ },
2677
+ {
2678
+ type: 'uint256',
2679
+ name: 'amount',
2680
+ },
2681
+ ],
2682
+ },
2683
+ {
2684
+ type: 'tuple',
2685
+ name: '_swapData',
2686
+ components: [
2687
+ {
2688
+ type: 'address',
2689
+ name: 'recipient',
2690
+ },
2691
+ {
2692
+ type: 'address',
2693
+ name: 'from',
2694
+ },
2695
+ {
2696
+ type: 'address',
2697
+ name: 'to',
2698
+ },
2699
+ {
2700
+ type: 'uint256',
2701
+ name: 'fromAmount',
2702
+ },
2703
+ {
2704
+ type: 'uint256',
2705
+ name: 'minToAmount',
2706
+ },
2707
+ ],
2708
+ },
2709
+ {
2710
+ type: 'tuple',
2711
+ name: '_swapExecutionData',
2712
+ components: [
2713
+ {
2714
+ type: 'string',
2715
+ name: 'dex',
2716
+ },
2717
+ {
2718
+ type: 'address',
2719
+ name: 'callTo',
2720
+ },
2721
+ {
2722
+ type: 'address',
2723
+ name: 'approveTo',
2724
+ },
2725
+ {
2726
+ type: 'bytes',
2727
+ name: 'swapCallData',
2728
+ },
2729
+ {
2730
+ type: 'bool',
2731
+ name: 'isDirectTransfer',
2732
+ },
2733
+ ],
2734
+ },
2735
+ ],
2736
+ outputs: [],
2737
+ },
2738
+ {
2739
+ type: 'error',
2740
+ name: 'CannotBridgeToSameNetwork',
2741
+ inputs: [],
2742
+ },
2743
+ {
2744
+ type: 'error',
2745
+ name: 'Erc20CallFailed',
2746
+ inputs: [
2747
+ {
2748
+ type: 'bytes',
2749
+ name: 'reason',
2750
+ },
2751
+ ],
2752
+ },
2753
+ {
2754
+ type: 'error',
2755
+ name: 'InvalidEncodedAddress',
2756
+ inputs: [],
2757
+ },
2758
+ {
2759
+ type: 'error',
2760
+ name: 'NativeCallFailed',
2761
+ inputs: [
2762
+ {
2763
+ type: 'bytes',
2764
+ name: 'reason',
2765
+ },
2766
+ ],
2767
+ },
2768
+ {
2769
+ type: 'error',
2770
+ name: 'NoBridgeFromZeroAmount',
2771
+ inputs: [],
2772
+ },
2773
+ {
2774
+ type: 'event',
2775
+ anonymous: false,
2776
+ name: 'RelayBridgeTransferStarted',
2777
+ inputs: [
2778
+ {
2779
+ type: 'bytes',
2780
+ name: 'transactionId',
2781
+ indexed: true,
2782
+ },
2783
+ {
2784
+ type: 'address',
2785
+ name: 'user',
2786
+ indexed: true,
2787
+ },
2788
+ {
2789
+ type: 'bytes',
2790
+ name: 'reciever',
2791
+ indexed: false,
2792
+ },
2793
+ {
2794
+ type: 'address',
2795
+ name: 'from',
2796
+ indexed: false,
2797
+ },
2798
+ {
2799
+ type: 'bytes',
2800
+ name: 'to',
2801
+ indexed: false,
2802
+ },
2803
+ {
2804
+ type: 'tuple',
2805
+ name: 'relayData',
2806
+ indexed: false,
2807
+ components: [
2808
+ {
2809
+ type: 'uint256',
2810
+ name: 'amountIn',
2811
+ },
2812
+ {
2813
+ type: 'bytes32',
2814
+ name: 'requestId',
2815
+ },
2816
+ ],
2817
+ },
2818
+ {
2819
+ type: 'uint256',
2820
+ name: 'destinationChainId',
2821
+ indexed: false,
2822
+ },
2823
+ {
2824
+ type: 'bool',
2825
+ name: 'hasDestinationCall',
2826
+ indexed: false,
2827
+ },
2828
+ ],
2829
+ },
2830
+ {
2831
+ type: 'function',
2832
+ name: '_RELAY_RECEIVER',
2833
+ constant: true,
2834
+ stateMutability: 'view',
2835
+ payable: false,
2836
+ inputs: [],
2837
+ outputs: [
2838
+ {
2839
+ type: 'address',
2840
+ name: '',
2841
+ },
2842
+ ],
2843
+ },
2844
+ {
2845
+ type: 'function',
2846
+ name: '_RELAY_SOLVER',
2847
+ constant: true,
2848
+ stateMutability: 'view',
2849
+ payable: false,
2850
+ inputs: [],
2851
+ outputs: [
2852
+ {
2853
+ type: 'address',
2854
+ name: '',
2855
+ },
2856
+ ],
2857
+ },
2858
+ {
2859
+ type: 'function',
2860
+ name: 'bridgeViaRelay',
2861
+ constant: false,
2862
+ stateMutability: 'payable',
2863
+ payable: true,
2864
+ inputs: [
2865
+ {
2866
+ type: 'bool',
2867
+ name: '_updateAmountIn',
2868
+ },
2869
+ {
2870
+ type: 'address',
2871
+ name: '_from',
2872
+ },
2873
+ {
2874
+ type: 'bytes',
2875
+ name: '_transactionId',
2876
+ },
2877
+ {
2878
+ type: 'bytes',
2879
+ name: '_receiver',
2880
+ },
2881
+ {
2882
+ type: 'bytes',
2883
+ name: '_to',
2884
+ },
2885
+ {
2886
+ type: 'tuple',
2887
+ name: '_relayData',
2888
+ components: [
2889
+ {
2890
+ type: 'uint256',
2891
+ name: 'amountIn',
2892
+ },
2893
+ {
2894
+ type: 'bytes32',
2895
+ name: 'requestId',
2896
+ },
2897
+ ],
2898
+ },
2899
+ {
2900
+ type: 'uint256',
2901
+ name: '_destinationChainId',
2902
+ },
2903
+ {
2904
+ type: 'address',
2905
+ name: '_user',
2906
+ },
2907
+ {
2908
+ type: 'bool',
2909
+ name: '_hasDestinationCall',
2910
+ },
2911
+ ],
2912
+ outputs: [],
2913
+ },
2914
+ {
2915
+ type: 'function',
2916
+ name: 'getRelayAddress',
2917
+ constant: true,
2918
+ stateMutability: 'view',
2919
+ payable: false,
2920
+ inputs: [],
2921
+ outputs: [
2922
+ {
2923
+ type: 'address',
2924
+ name: 'receiver',
2925
+ },
2926
+ {
2927
+ type: 'address',
2928
+ name: 'solver',
2929
+ },
2930
+ ],
2931
+ },
2932
+ {
2933
+ type: 'error',
2934
+ name: 'BridgeCallFailed',
2935
+ inputs: [
2936
+ {
2937
+ type: 'address',
2938
+ name: 'target',
2939
+ },
2940
+ {
2941
+ type: 'bytes4',
2942
+ name: 'funSig',
2943
+ },
2944
+ {
2945
+ type: 'bytes',
2946
+ name: 'reason',
2947
+ },
2948
+ ],
2949
+ },
2950
+ {
2951
+ type: 'function',
2952
+ name: 'bridgeViaGeneric',
2953
+ constant: false,
2954
+ stateMutability: 'payable',
2955
+ payable: true,
2956
+ inputs: [
2957
+ {
2958
+ type: 'bool',
2959
+ name: '_updateAmountIn',
2960
+ },
2961
+ {
2962
+ type: 'address',
2963
+ name: '_from',
2964
+ },
2965
+ {
2966
+ type: 'bytes',
2967
+ name: '_transactionId',
2968
+ },
2969
+ {
2970
+ type: 'bytes',
2971
+ name: '_callData',
2972
+ },
2973
+ {
2974
+ type: 'bytes',
2975
+ name: '_receiver',
2976
+ },
2977
+ {
2978
+ type: 'bytes',
2979
+ name: '_to',
2980
+ },
2981
+ {
2982
+ type: 'string',
2983
+ name: '_bridge',
2984
+ },
2985
+ {
2986
+ type: 'uint256',
2987
+ name: '_amountIn',
2988
+ },
2989
+ {
2990
+ type: 'uint256',
2991
+ name: '_offset',
2992
+ },
2993
+ {
2994
+ type: 'uint256',
2995
+ name: '_extraNative',
2996
+ },
2997
+ {
2998
+ type: 'uint256',
2999
+ name: '_destinationChainId',
3000
+ },
3001
+ {
3002
+ type: 'address',
3003
+ name: '_user',
3004
+ },
3005
+ {
3006
+ type: 'address',
3007
+ name: '_callTo',
3008
+ },
3009
+ {
3010
+ type: 'address',
3011
+ name: '_approveTo',
3012
+ },
3013
+ {
3014
+ type: 'bool',
3015
+ name: '_hasDestinationCall',
3016
+ },
3017
+ ],
3018
+ outputs: [],
3019
+ },
3020
+ {
3021
+ type: 'error',
3022
+ name: 'TransferAmountMismatch',
3023
+ inputs: [],
3024
+ },
3025
+ {
3026
+ type: 'function',
3027
+ name: 'bridgeViaTransfer',
3028
+ constant: false,
3029
+ stateMutability: 'payable',
3030
+ payable: true,
3031
+ inputs: [
3032
+ {
3033
+ type: 'bool',
3034
+ name: '_updateAmountIn',
3035
+ },
3036
+ {
3037
+ type: 'address',
3038
+ name: '_from',
3039
+ },
3040
+ {
3041
+ type: 'bytes',
3042
+ name: '_transactionId',
3043
+ },
3044
+ {
3045
+ type: 'bytes',
3046
+ name: '_receiver',
3047
+ },
3048
+ {
3049
+ type: 'bytes',
3050
+ name: '_to',
3051
+ },
3052
+ {
3053
+ type: 'string',
3054
+ name: '_bridge',
3055
+ },
3056
+ {
3057
+ type: 'uint256',
3058
+ name: '_amountIn',
3059
+ },
3060
+ {
3061
+ type: 'uint256',
3062
+ name: '_destinationChainId',
3063
+ },
3064
+ {
3065
+ type: 'address',
3066
+ name: '_user',
3067
+ },
3068
+ {
3069
+ type: 'address',
3070
+ name: '_transferTo',
3071
+ },
3072
+ {
3073
+ type: 'bool',
3074
+ name: '_hasDestinationCall',
3075
+ },
3076
+ ],
3077
+ outputs: [],
3078
+ },
3079
+ ];