@gearbox-protocol/sdk 9.12.14 → 9.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/dist/cjs/abi/310/configure/creditSuiteParams.js +130 -0
  2. package/dist/cjs/abi/310/configure/iCreditConfigureActions.js +181 -0
  3. package/dist/cjs/abi/310/configure/iPoolConfigureActions.js +80 -0
  4. package/dist/cjs/abi/310/configure/iPriceOracleConfigureActions.js +49 -0
  5. package/dist/cjs/abi/310/crossChainMultisig.js +540 -0
  6. package/dist/cjs/abi/{v310.js → 310/generated.js} +3 -3
  7. package/dist/cjs/abi/310/iBytecodeRepository.js +897 -0
  8. package/dist/cjs/abi/310/iMarketConfiguratorFactory.js +189 -0
  9. package/dist/cjs/abi/310/iPriceFeedStore.js +417 -0
  10. package/dist/cjs/abi/310/iTreasurySplitter.js +36 -0
  11. package/dist/cjs/abi/310/instanceManager.js +274 -0
  12. package/dist/cjs/abi/compressors/creditAccountCompressor.js +456 -0
  13. package/dist/cjs/abi/compressors/creditSuiteCompressor.js +774 -0
  14. package/dist/cjs/abi/compressors/defillamaCompressor.js +183 -0
  15. package/dist/cjs/abi/compressors/gaugeCompressor.js +184 -0
  16. package/dist/cjs/abi/compressors/marketCompressor.js +2477 -0
  17. package/dist/cjs/abi/compressors/peripheryCompressor.js +202 -0
  18. package/dist/cjs/abi/compressors/priceFeedCompressor.js +581 -0
  19. package/dist/cjs/abi/compressors/rewardsCompressor.js +82 -0
  20. package/dist/cjs/abi/compressors/subcompressors/infinifiWithdrawalSubcompressor.js +187 -0
  21. package/dist/cjs/abi/compressors/subcompressors/mellowWithdrawalSubcompressor.js +187 -0
  22. package/dist/cjs/abi/compressors/subcompressors/midasWithdrawalSubcompressor.js +187 -0
  23. package/dist/cjs/abi/compressors/subcompressors/upshiftWithdrawalSubcompressor.js +187 -0
  24. package/dist/cjs/abi/compressors/tokenCompressor.js +95 -0
  25. package/dist/cjs/abi/compressors/withdrawalCompressor.js +272 -0
  26. package/dist/cjs/abi/governance/batchesChain.js +68 -0
  27. package/dist/cjs/abi/governance/governor.js +472 -0
  28. package/dist/cjs/abi/governance/iTimeLock.js +257 -0
  29. package/dist/cjs/abi/router/balancerV2Worker.js +730 -0
  30. package/dist/cjs/abi/router/balancerV3Worker.js +734 -0
  31. package/dist/cjs/abi/router/camelotV3Worker.js +558 -0
  32. package/dist/cjs/abi/router/convexWorker.js +541 -0
  33. package/dist/cjs/abi/router/curveWorker.js +718 -0
  34. package/dist/cjs/abi/router/daiUsdsWorker.js +541 -0
  35. package/dist/cjs/abi/router/equalizerRouterWorker.js +541 -0
  36. package/dist/cjs/abi/router/erc4626Worker.js +572 -0
  37. package/dist/cjs/abi/router/fluidDexWorker.js +551 -0
  38. package/dist/cjs/abi/router/gearboxRouter.js +651 -0
  39. package/dist/cjs/abi/router/infraredVaultWorker.js +541 -0
  40. package/dist/cjs/abi/router/kodiakWorker.js +732 -0
  41. package/dist/cjs/abi/router/lidoWorker.js +541 -0
  42. package/dist/cjs/abi/router/mellow4626Worker.js +541 -0
  43. package/dist/cjs/abi/router/mellowDVVWorker.js +541 -0
  44. package/dist/cjs/abi/router/mellowVaultWorker.js +551 -0
  45. package/dist/cjs/abi/router/pendleRouterWorker.js +567 -0
  46. package/dist/cjs/abi/router/routingManager.js +397 -0
  47. package/dist/cjs/abi/router/stakingRewardsWorker.js +541 -0
  48. package/dist/cjs/abi/router/traderJoeWorker.js +541 -0
  49. package/dist/cjs/abi/router/uniswapV2Worker.js +541 -0
  50. package/dist/cjs/abi/router/uniswapV3Worker.js +568 -0
  51. package/dist/cjs/abi/router/upshiftWorker.js +541 -0
  52. package/dist/cjs/abi/router/velodromeV2Worker.js +541 -0
  53. package/dist/cjs/abi/router/wstETHWorker.js +541 -0
  54. package/dist/cjs/abi/router/yearnV2Worker.js +541 -0
  55. package/dist/cjs/dev/migrateFaucet.js +6 -6
  56. package/dist/cjs/plugins/accounts-counter/AccountsCounterPlugin.js +3 -3
  57. package/dist/cjs/plugins/bots/BotsPlugin.js +2 -2
  58. package/dist/cjs/plugins/pools-history/Pools7DAgoPlugin.js +2 -2
  59. package/dist/cjs/plugins/zappers/ZappersPlugin.js +2 -2
  60. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +11 -9
  61. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +2 -2
  62. package/dist/cjs/sdk/chain/detectNetwork.js +2 -2
  63. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +2 -2
  64. package/dist/cjs/sdk/gauges/GaugeStakingService.js +2 -2
  65. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +2 -2
  66. package/dist/cjs/sdk/market/MarketRegister.js +3 -3
  67. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +2 -2
  68. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +3 -3
  69. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +2 -2
  70. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +2 -2
  71. package/dist/cjs/sdk/market/oracle/PriceOracleV310Contract.js +3 -3
  72. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  73. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +2 -2
  74. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  75. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -3
  76. package/dist/cjs/sdk/router/RouterV310Contract.js +2 -2
  77. package/dist/cjs/sdk/utils/viem/simulateWithPriceUpdates.js +3 -2
  78. package/dist/esm/abi/310/configure/creditSuiteParams.js +104 -0
  79. package/dist/esm/abi/310/configure/iCreditConfigureActions.js +157 -0
  80. package/dist/esm/abi/310/configure/iPoolConfigureActions.js +56 -0
  81. package/dist/esm/abi/310/configure/iPriceOracleConfigureActions.js +25 -0
  82. package/dist/esm/abi/310/crossChainMultisig.js +516 -0
  83. package/dist/esm/abi/310/iBytecodeRepository.js +873 -0
  84. package/dist/esm/abi/310/iMarketConfiguratorFactory.js +165 -0
  85. package/dist/esm/abi/310/iPriceFeedStore.js +393 -0
  86. package/dist/esm/abi/310/iTreasurySplitter.js +12 -0
  87. package/dist/esm/abi/310/instanceManager.js +250 -0
  88. package/dist/esm/abi/compressors/creditAccountCompressor.js +432 -0
  89. package/dist/esm/abi/compressors/creditSuiteCompressor.js +750 -0
  90. package/dist/esm/abi/compressors/defillamaCompressor.js +159 -0
  91. package/dist/esm/abi/compressors/gaugeCompressor.js +160 -0
  92. package/dist/esm/abi/compressors/marketCompressor.js +2453 -0
  93. package/dist/esm/abi/compressors/peripheryCompressor.js +178 -0
  94. package/dist/esm/abi/compressors/priceFeedCompressor.js +557 -0
  95. package/dist/esm/abi/compressors/rewardsCompressor.js +58 -0
  96. package/dist/esm/abi/compressors/subcompressors/infinifiWithdrawalSubcompressor.js +163 -0
  97. package/dist/esm/abi/compressors/subcompressors/mellowWithdrawalSubcompressor.js +163 -0
  98. package/dist/esm/abi/compressors/subcompressors/midasWithdrawalSubcompressor.js +163 -0
  99. package/dist/esm/abi/compressors/subcompressors/upshiftWithdrawalSubcompressor.js +163 -0
  100. package/dist/esm/abi/compressors/tokenCompressor.js +71 -0
  101. package/dist/esm/abi/compressors/withdrawalCompressor.js +248 -0
  102. package/dist/esm/abi/governance/batchesChain.js +44 -0
  103. package/dist/esm/abi/governance/governor.js +448 -0
  104. package/dist/esm/abi/governance/iTimeLock.js +233 -0
  105. package/dist/esm/abi/router/balancerV2Worker.js +706 -0
  106. package/dist/esm/abi/router/balancerV3Worker.js +710 -0
  107. package/dist/esm/abi/router/camelotV3Worker.js +534 -0
  108. package/dist/esm/abi/router/convexWorker.js +517 -0
  109. package/dist/esm/abi/router/curveWorker.js +694 -0
  110. package/dist/esm/abi/router/daiUsdsWorker.js +517 -0
  111. package/dist/esm/abi/router/equalizerRouterWorker.js +517 -0
  112. package/dist/esm/abi/router/erc4626Worker.js +548 -0
  113. package/dist/esm/abi/router/fluidDexWorker.js +527 -0
  114. package/dist/esm/abi/router/gearboxRouter.js +627 -0
  115. package/dist/esm/abi/router/infraredVaultWorker.js +517 -0
  116. package/dist/esm/abi/router/kodiakWorker.js +708 -0
  117. package/dist/esm/abi/router/lidoWorker.js +517 -0
  118. package/dist/esm/abi/router/mellow4626Worker.js +517 -0
  119. package/dist/esm/abi/router/mellowDVVWorker.js +517 -0
  120. package/dist/esm/abi/router/mellowVaultWorker.js +527 -0
  121. package/dist/esm/abi/router/pendleRouterWorker.js +543 -0
  122. package/dist/esm/abi/router/routingManager.js +373 -0
  123. package/dist/esm/abi/router/stakingRewardsWorker.js +517 -0
  124. package/dist/esm/abi/router/traderJoeWorker.js +517 -0
  125. package/dist/esm/abi/router/uniswapV2Worker.js +517 -0
  126. package/dist/esm/abi/router/uniswapV3Worker.js +544 -0
  127. package/dist/esm/abi/router/upshiftWorker.js +517 -0
  128. package/dist/esm/abi/router/velodromeV2Worker.js +517 -0
  129. package/dist/esm/abi/router/wstETHWorker.js +517 -0
  130. package/dist/esm/abi/router/yearnV2Worker.js +517 -0
  131. package/dist/esm/dev/migrateFaucet.js +1 -1
  132. package/dist/esm/plugins/accounts-counter/AccountsCounterPlugin.js +3 -3
  133. package/dist/esm/plugins/bots/BotsPlugin.js +2 -2
  134. package/dist/esm/plugins/pools-history/Pools7DAgoPlugin.js +2 -2
  135. package/dist/esm/plugins/zappers/ZappersPlugin.js +2 -2
  136. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +10 -12
  137. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +1 -1
  138. package/dist/esm/sdk/chain/detectNetwork.js +1 -1
  139. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +1 -1
  140. package/dist/esm/sdk/gauges/GaugeStakingService.js +2 -2
  141. package/dist/esm/sdk/market/MarketConfiguratorContract.js +1 -1
  142. package/dist/esm/sdk/market/MarketRegister.js +3 -3
  143. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +1 -1
  144. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +2 -2
  145. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +1 -1
  146. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +2 -2
  147. package/dist/esm/sdk/market/oracle/PriceOracleV310Contract.js +1 -1
  148. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +1 -1
  149. package/dist/esm/sdk/market/pool/PoolV310Contract.js +1 -1
  150. package/dist/esm/sdk/market/pool/TumblerContract.js +1 -1
  151. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -3
  152. package/dist/esm/sdk/router/RouterV310Contract.js +2 -2
  153. package/dist/esm/sdk/utils/viem/simulateWithPriceUpdates.js +2 -1
  154. package/dist/types/abi/310/configure/creditSuiteParams.d.ts +92 -0
  155. package/dist/types/abi/310/configure/iCreditConfigureActions.d.ts +187 -0
  156. package/dist/types/abi/310/configure/iPoolConfigureActions.d.ts +65 -0
  157. package/dist/types/abi/310/configure/iPriceOracleConfigureActions.d.ts +29 -0
  158. package/dist/types/abi/310/crossChainMultisig.d.ts +709 -0
  159. package/dist/types/abi/310/iBytecodeRepository.d.ts +1139 -0
  160. package/dist/types/abi/310/iMarketConfiguratorFactory.d.ts +218 -0
  161. package/dist/types/abi/310/iPriceFeedStore.d.ts +526 -0
  162. package/dist/types/abi/310/iTreasurySplitter.d.ts +11 -0
  163. package/dist/types/abi/{iPriceFeedStore.d.ts → 310/instanceManager.d.ts} +183 -143
  164. package/dist/types/abi/compressors/creditAccountCompressor.d.ts +828 -0
  165. package/dist/types/abi/compressors/creditSuiteCompressor.d.ts +829 -0
  166. package/dist/types/abi/compressors/defillamaCompressor.d.ts +201 -0
  167. package/dist/types/abi/compressors/gaugeCompressor.d.ts +228 -0
  168. package/dist/types/abi/{compressors.d.ts → compressors/marketCompressor.d.ts} +1322 -4121
  169. package/dist/types/abi/compressors/peripheryCompressor.d.ts +217 -0
  170. package/dist/types/abi/compressors/priceFeedCompressor.d.ts +684 -0
  171. package/dist/types/abi/compressors/rewardsCompressor.d.ts +70 -0
  172. package/dist/types/abi/compressors/subcompressors/infinifiWithdrawalSubcompressor.d.ts +220 -0
  173. package/dist/types/abi/compressors/subcompressors/mellowWithdrawalSubcompressor.d.ts +220 -0
  174. package/dist/types/abi/compressors/subcompressors/midasWithdrawalSubcompressor.d.ts +220 -0
  175. package/dist/types/abi/compressors/subcompressors/upshiftWithdrawalSubcompressor.d.ts +220 -0
  176. package/dist/types/abi/compressors/tokenCompressor.d.ts +101 -0
  177. package/dist/types/abi/{routerV310.d.ts → compressors/withdrawalCompressor.d.ts} +175 -253
  178. package/dist/types/abi/governance/batchesChain.d.ts +31 -0
  179. package/dist/types/abi/governance/governor.d.ts +584 -0
  180. package/dist/types/abi/governance/iTimeLock.d.ts +328 -0
  181. package/dist/types/abi/router/balancerV2Worker.d.ts +961 -0
  182. package/dist/types/abi/router/balancerV3Worker.d.ts +961 -0
  183. package/dist/types/abi/router/camelotV3Worker.d.ts +754 -0
  184. package/dist/types/abi/router/convexWorker.d.ts +726 -0
  185. package/dist/types/abi/router/curveWorker.d.ts +947 -0
  186. package/dist/types/abi/router/daiUsdsWorker.d.ts +726 -0
  187. package/dist/types/abi/router/equalizerRouterWorker.d.ts +726 -0
  188. package/dist/types/abi/router/erc4626Worker.d.ts +769 -0
  189. package/dist/types/abi/router/fluidDexWorker.d.ts +740 -0
  190. package/dist/types/abi/router/gearboxRouter.d.ts +881 -0
  191. package/dist/types/abi/router/infraredVaultWorker.d.ts +726 -0
  192. package/dist/types/abi/router/kodiakWorker.d.ts +967 -0
  193. package/dist/types/abi/router/lidoWorker.d.ts +726 -0
  194. package/dist/types/abi/router/mellow4626Worker.d.ts +726 -0
  195. package/dist/types/abi/router/mellowDVVWorker.d.ts +726 -0
  196. package/dist/types/abi/router/mellowVaultWorker.d.ts +740 -0
  197. package/dist/types/abi/router/pendleRouterWorker.d.ts +760 -0
  198. package/dist/types/abi/router/routingManager.d.ts +494 -0
  199. package/dist/types/abi/router/stakingRewardsWorker.d.ts +726 -0
  200. package/dist/types/abi/router/traderJoeWorker.d.ts +726 -0
  201. package/dist/types/abi/router/uniswapV2Worker.d.ts +726 -0
  202. package/dist/types/abi/router/uniswapV3Worker.d.ts +774 -0
  203. package/dist/types/abi/router/upshiftWorker.d.ts +726 -0
  204. package/dist/types/abi/router/velodromeV2Worker.d.ts +726 -0
  205. package/dist/types/abi/router/wstETHWorker.d.ts +726 -0
  206. package/dist/types/abi/router/yearnV2Worker.d.ts +726 -0
  207. package/dist/types/plugins/bots/types.d.ts +2 -2
  208. package/dist/types/plugins/zappers/types.d.ts +2 -2
  209. package/dist/types/sdk/accounts/types.d.ts +2 -2
  210. package/dist/types/sdk/base/types.d.ts +11 -7
  211. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  212. package/dist/types/sdk/market/oracle/types.d.ts +3 -3
  213. package/dist/types/sdk/router/RouterV310Contract.d.ts +481 -1
  214. package/dist/types/sdk/sdk-legacy/payload/pool.d.ts +2 -2
  215. package/package.json +1 -1
  216. package/dist/cjs/abi/compressors.js +0 -4555
  217. package/dist/cjs/abi/iPriceFeedStore.js +0 -254
  218. package/dist/cjs/abi/index.js +0 -46
  219. package/dist/cjs/abi/package.json +0 -1
  220. package/dist/cjs/abi/routerV310.js +0 -276
  221. package/dist/esm/abi/compressors.js +0 -4524
  222. package/dist/esm/abi/iPriceFeedStore.js +0 -230
  223. package/dist/esm/abi/index.js +0 -13
  224. package/dist/esm/abi/package.json +0 -1
  225. package/dist/esm/abi/routerV310.js +0 -252
  226. package/dist/types/abi/index.d.ts +0 -13
  227. /package/dist/esm/abi/{v310.js → 310/generated.js} +0 -0
  228. /package/dist/types/abi/{v310.d.ts → 310/generated.d.ts} +0 -0
@@ -0,0 +1,627 @@
1
+ const gearboxRouterAbi = [
2
+ {
3
+ type: "constructor",
4
+ inputs: [{ name: "owner", type: "address", internalType: "address" }],
5
+ stateMutability: "nonpayable"
6
+ },
7
+ {
8
+ type: "function",
9
+ name: "componentAddressByType",
10
+ inputs: [{ name: "", type: "bytes32", internalType: "bytes32" }],
11
+ outputs: [{ name: "", type: "address", internalType: "address" }],
12
+ stateMutability: "view"
13
+ },
14
+ {
15
+ type: "function",
16
+ name: "contractType",
17
+ inputs: [],
18
+ outputs: [{ name: "", type: "bytes32", internalType: "bytes32" }],
19
+ stateMutability: "view"
20
+ },
21
+ {
22
+ type: "function",
23
+ name: "createOpenStrategyPathTask",
24
+ inputs: [
25
+ {
26
+ name: "creditManager",
27
+ type: "address",
28
+ internalType: "contract ICreditManagerV3"
29
+ },
30
+ { name: "target", type: "address", internalType: "address" },
31
+ { name: "slippage", type: "uint256", internalType: "uint256" },
32
+ {
33
+ name: "tData",
34
+ type: "tuple[]",
35
+ internalType: "struct TokenData[]",
36
+ components: [
37
+ { name: "token", type: "address", internalType: "address" },
38
+ { name: "balance", type: "uint256", internalType: "uint256" },
39
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
40
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
41
+ { name: "claimRewards", type: "bool", internalType: "bool" }
42
+ ]
43
+ }
44
+ ],
45
+ outputs: [
46
+ {
47
+ name: "task",
48
+ type: "tuple",
49
+ internalType: "struct StrategyPathTask",
50
+ components: [
51
+ { name: "creditAccount", type: "address", internalType: "address" },
52
+ {
53
+ name: "graph",
54
+ type: "tuple",
55
+ internalType: "struct Graph",
56
+ components: [
57
+ {
58
+ name: "vertices",
59
+ type: "tuple[]",
60
+ internalType: "struct Vertex[]",
61
+ components: [
62
+ { name: "token", type: "address", internalType: "address" },
63
+ { name: "balance", type: "uint256", internalType: "uint256" },
64
+ {
65
+ name: "leftoverBalance",
66
+ type: "uint256",
67
+ internalType: "uint256"
68
+ },
69
+ {
70
+ name: "numSplits",
71
+ type: "uint256",
72
+ internalType: "uint256"
73
+ },
74
+ {
75
+ name: "currentOptimalEdge",
76
+ type: "uint256",
77
+ internalType: "uint256"
78
+ }
79
+ ]
80
+ },
81
+ {
82
+ name: "edges",
83
+ type: "tuple[]",
84
+ internalType: "struct Edge[]",
85
+ components: [
86
+ { name: "id", type: "uint256", internalType: "uint256" },
87
+ { name: "tokenIn", type: "address", internalType: "address" },
88
+ {
89
+ name: "tokenOut",
90
+ type: "address",
91
+ internalType: "address"
92
+ },
93
+ { name: "adapter", type: "address", internalType: "address" },
94
+ { name: "worker", type: "address", internalType: "address" },
95
+ { name: "extraData", type: "bytes", internalType: "bytes" },
96
+ {
97
+ name: "amountInTotal",
98
+ type: "uint256",
99
+ internalType: "uint256"
100
+ },
101
+ {
102
+ name: "amountOutTotal",
103
+ type: "uint256",
104
+ internalType: "uint256"
105
+ },
106
+ {
107
+ name: "amountInCurrent",
108
+ type: "uint256",
109
+ internalType: "uint256"
110
+ },
111
+ {
112
+ name: "amountOutCurrent",
113
+ type: "uint256",
114
+ internalType: "uint256"
115
+ }
116
+ ]
117
+ }
118
+ ]
119
+ },
120
+ { name: "target", type: "address", internalType: "address" },
121
+ { name: "adapters", type: "address[]", internalType: "address[]" },
122
+ { name: "slippage", type: "uint256", internalType: "uint256" },
123
+ { name: "force", type: "bool", internalType: "bool" },
124
+ {
125
+ name: "initTargetBalance",
126
+ type: "uint256",
127
+ internalType: "uint256"
128
+ },
129
+ {
130
+ name: "calls",
131
+ type: "tuple[]",
132
+ internalType: "struct MultiCall[]",
133
+ components: [
134
+ { name: "target", type: "address", internalType: "address" },
135
+ { name: "callData", type: "bytes", internalType: "bytes" }
136
+ ]
137
+ }
138
+ ]
139
+ }
140
+ ],
141
+ stateMutability: "nonpayable"
142
+ },
143
+ {
144
+ type: "function",
145
+ name: "createStrategyPathTask",
146
+ inputs: [
147
+ { name: "creditAccount", type: "address", internalType: "address" },
148
+ { name: "target", type: "address", internalType: "address" },
149
+ { name: "slippage", type: "uint256", internalType: "uint256" },
150
+ { name: "force", type: "bool", internalType: "bool" },
151
+ {
152
+ name: "tData",
153
+ type: "tuple[]",
154
+ internalType: "struct TokenData[]",
155
+ components: [
156
+ { name: "token", type: "address", internalType: "address" },
157
+ { name: "balance", type: "uint256", internalType: "uint256" },
158
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
159
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
160
+ { name: "claimRewards", type: "bool", internalType: "bool" }
161
+ ]
162
+ }
163
+ ],
164
+ outputs: [
165
+ {
166
+ name: "task",
167
+ type: "tuple",
168
+ internalType: "struct StrategyPathTask",
169
+ components: [
170
+ { name: "creditAccount", type: "address", internalType: "address" },
171
+ {
172
+ name: "graph",
173
+ type: "tuple",
174
+ internalType: "struct Graph",
175
+ components: [
176
+ {
177
+ name: "vertices",
178
+ type: "tuple[]",
179
+ internalType: "struct Vertex[]",
180
+ components: [
181
+ { name: "token", type: "address", internalType: "address" },
182
+ { name: "balance", type: "uint256", internalType: "uint256" },
183
+ {
184
+ name: "leftoverBalance",
185
+ type: "uint256",
186
+ internalType: "uint256"
187
+ },
188
+ {
189
+ name: "numSplits",
190
+ type: "uint256",
191
+ internalType: "uint256"
192
+ },
193
+ {
194
+ name: "currentOptimalEdge",
195
+ type: "uint256",
196
+ internalType: "uint256"
197
+ }
198
+ ]
199
+ },
200
+ {
201
+ name: "edges",
202
+ type: "tuple[]",
203
+ internalType: "struct Edge[]",
204
+ components: [
205
+ { name: "id", type: "uint256", internalType: "uint256" },
206
+ { name: "tokenIn", type: "address", internalType: "address" },
207
+ {
208
+ name: "tokenOut",
209
+ type: "address",
210
+ internalType: "address"
211
+ },
212
+ { name: "adapter", type: "address", internalType: "address" },
213
+ { name: "worker", type: "address", internalType: "address" },
214
+ { name: "extraData", type: "bytes", internalType: "bytes" },
215
+ {
216
+ name: "amountInTotal",
217
+ type: "uint256",
218
+ internalType: "uint256"
219
+ },
220
+ {
221
+ name: "amountOutTotal",
222
+ type: "uint256",
223
+ internalType: "uint256"
224
+ },
225
+ {
226
+ name: "amountInCurrent",
227
+ type: "uint256",
228
+ internalType: "uint256"
229
+ },
230
+ {
231
+ name: "amountOutCurrent",
232
+ type: "uint256",
233
+ internalType: "uint256"
234
+ }
235
+ ]
236
+ }
237
+ ]
238
+ },
239
+ { name: "target", type: "address", internalType: "address" },
240
+ { name: "adapters", type: "address[]", internalType: "address[]" },
241
+ { name: "slippage", type: "uint256", internalType: "uint256" },
242
+ { name: "force", type: "bool", internalType: "bool" },
243
+ {
244
+ name: "initTargetBalance",
245
+ type: "uint256",
246
+ internalType: "uint256"
247
+ },
248
+ {
249
+ name: "calls",
250
+ type: "tuple[]",
251
+ internalType: "struct MultiCall[]",
252
+ components: [
253
+ { name: "target", type: "address", internalType: "address" },
254
+ { name: "callData", type: "bytes", internalType: "bytes" }
255
+ ]
256
+ }
257
+ ]
258
+ }
259
+ ],
260
+ stateMutability: "nonpayable"
261
+ },
262
+ {
263
+ type: "function",
264
+ name: "futureRouter",
265
+ inputs: [],
266
+ outputs: [{ name: "", type: "address", internalType: "address" }],
267
+ stateMutability: "view"
268
+ },
269
+ {
270
+ type: "function",
271
+ name: "getAdapters",
272
+ inputs: [
273
+ {
274
+ name: "creditManager",
275
+ type: "address",
276
+ internalType: "contract ICreditManagerV3"
277
+ }
278
+ ],
279
+ outputs: [{ name: "result", type: "address[]", internalType: "address[]" }],
280
+ stateMutability: "view"
281
+ },
282
+ {
283
+ type: "function",
284
+ name: "getDefaultTokenData",
285
+ inputs: [
286
+ { name: "creditAccount", type: "address", internalType: "address" }
287
+ ],
288
+ outputs: [
289
+ {
290
+ name: "tData",
291
+ type: "tuple[]",
292
+ internalType: "struct TokenData[]",
293
+ components: [
294
+ { name: "token", type: "address", internalType: "address" },
295
+ { name: "balance", type: "uint256", internalType: "uint256" },
296
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
297
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
298
+ { name: "claimRewards", type: "bool", internalType: "bool" }
299
+ ]
300
+ }
301
+ ],
302
+ stateMutability: "view"
303
+ },
304
+ {
305
+ type: "function",
306
+ name: "isRouterConfigurator",
307
+ inputs: [{ name: "account", type: "address", internalType: "address" }],
308
+ outputs: [{ name: "", type: "bool", internalType: "bool" }],
309
+ stateMutability: "view"
310
+ },
311
+ {
312
+ type: "function",
313
+ name: "knownComponentTypes",
314
+ inputs: [],
315
+ outputs: [
316
+ { name: "knownTypes", type: "bytes32[]", internalType: "bytes32[]" }
317
+ ],
318
+ stateMutability: "view"
319
+ },
320
+ {
321
+ type: "function",
322
+ name: "migrateRouterComponents",
323
+ inputs: [{ name: "_prevRouter", type: "address", internalType: "address" }],
324
+ outputs: [],
325
+ stateMutability: "nonpayable"
326
+ },
327
+ {
328
+ type: "function",
329
+ name: "owner",
330
+ inputs: [],
331
+ outputs: [{ name: "", type: "address", internalType: "address" }],
332
+ stateMutability: "view"
333
+ },
334
+ {
335
+ type: "function",
336
+ name: "processClaims",
337
+ inputs: [
338
+ { name: "creditAccount", type: "address", internalType: "address" },
339
+ {
340
+ name: "tData",
341
+ type: "tuple[]",
342
+ internalType: "struct TokenData[]",
343
+ components: [
344
+ { name: "token", type: "address", internalType: "address" },
345
+ { name: "balance", type: "uint256", internalType: "uint256" },
346
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
347
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
348
+ { name: "claimRewards", type: "bool", internalType: "bool" }
349
+ ]
350
+ }
351
+ ],
352
+ outputs: [
353
+ {
354
+ name: "calls",
355
+ type: "tuple[]",
356
+ internalType: "struct MultiCall[]",
357
+ components: [
358
+ { name: "target", type: "address", internalType: "address" },
359
+ { name: "callData", type: "bytes", internalType: "bytes" }
360
+ ]
361
+ }
362
+ ],
363
+ stateMutability: "nonpayable"
364
+ },
365
+ {
366
+ type: "function",
367
+ name: "renounceOwnership",
368
+ inputs: [],
369
+ outputs: [],
370
+ stateMutability: "nonpayable"
371
+ },
372
+ {
373
+ type: "function",
374
+ name: "routeManyToOne",
375
+ inputs: [
376
+ { name: "creditAccount", type: "address", internalType: "address" },
377
+ { name: "target", type: "address", internalType: "address" },
378
+ { name: "slippage", type: "uint256", internalType: "uint256" },
379
+ {
380
+ name: "tData",
381
+ type: "tuple[]",
382
+ internalType: "struct TokenData[]",
383
+ components: [
384
+ { name: "token", type: "address", internalType: "address" },
385
+ { name: "balance", type: "uint256", internalType: "uint256" },
386
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
387
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
388
+ { name: "claimRewards", type: "bool", internalType: "bool" }
389
+ ]
390
+ }
391
+ ],
392
+ outputs: [
393
+ {
394
+ name: "",
395
+ type: "tuple",
396
+ internalType: "struct RouterResult",
397
+ components: [
398
+ { name: "amount", type: "uint256", internalType: "uint256" },
399
+ { name: "minAmount", type: "uint256", internalType: "uint256" },
400
+ {
401
+ name: "calls",
402
+ type: "tuple[]",
403
+ internalType: "struct MultiCall[]",
404
+ components: [
405
+ { name: "target", type: "address", internalType: "address" },
406
+ { name: "callData", type: "bytes", internalType: "bytes" }
407
+ ]
408
+ }
409
+ ]
410
+ }
411
+ ],
412
+ stateMutability: "nonpayable"
413
+ },
414
+ {
415
+ type: "function",
416
+ name: "routeOneToOne",
417
+ inputs: [
418
+ { name: "creditAccount", type: "address", internalType: "address" },
419
+ { name: "tokenIn", type: "address", internalType: "address" },
420
+ { name: "amount", type: "uint256", internalType: "uint256" },
421
+ { name: "target", type: "address", internalType: "address" },
422
+ { name: "slippage", type: "uint256", internalType: "uint256" },
423
+ { name: "numSplits", type: "uint256", internalType: "uint256" }
424
+ ],
425
+ outputs: [
426
+ {
427
+ name: "",
428
+ type: "tuple",
429
+ internalType: "struct RouterResult",
430
+ components: [
431
+ { name: "amount", type: "uint256", internalType: "uint256" },
432
+ { name: "minAmount", type: "uint256", internalType: "uint256" },
433
+ {
434
+ name: "calls",
435
+ type: "tuple[]",
436
+ internalType: "struct MultiCall[]",
437
+ components: [
438
+ { name: "target", type: "address", internalType: "address" },
439
+ { name: "callData", type: "bytes", internalType: "bytes" }
440
+ ]
441
+ }
442
+ ]
443
+ }
444
+ ],
445
+ stateMutability: "nonpayable"
446
+ },
447
+ {
448
+ type: "function",
449
+ name: "routeOneToOneDiff",
450
+ inputs: [
451
+ { name: "creditAccount", type: "address", internalType: "address" },
452
+ { name: "tokenIn", type: "address", internalType: "address" },
453
+ { name: "balance", type: "uint256", internalType: "uint256" },
454
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
455
+ { name: "target", type: "address", internalType: "address" },
456
+ { name: "slippage", type: "uint256", internalType: "uint256" },
457
+ { name: "numSplits", type: "uint256", internalType: "uint256" }
458
+ ],
459
+ outputs: [
460
+ {
461
+ name: "",
462
+ type: "tuple",
463
+ internalType: "struct RouterResult",
464
+ components: [
465
+ { name: "amount", type: "uint256", internalType: "uint256" },
466
+ { name: "minAmount", type: "uint256", internalType: "uint256" },
467
+ {
468
+ name: "calls",
469
+ type: "tuple[]",
470
+ internalType: "struct MultiCall[]",
471
+ components: [
472
+ { name: "target", type: "address", internalType: "address" },
473
+ { name: "callData", type: "bytes", internalType: "bytes" }
474
+ ]
475
+ }
476
+ ]
477
+ }
478
+ ],
479
+ stateMutability: "nonpayable"
480
+ },
481
+ {
482
+ type: "function",
483
+ name: "routeOpenManyToOne",
484
+ inputs: [
485
+ { name: "creditManager", type: "address", internalType: "address" },
486
+ { name: "target", type: "address", internalType: "address" },
487
+ { name: "slippage", type: "uint256", internalType: "uint256" },
488
+ {
489
+ name: "tData",
490
+ type: "tuple[]",
491
+ internalType: "struct TokenData[]",
492
+ components: [
493
+ { name: "token", type: "address", internalType: "address" },
494
+ { name: "balance", type: "uint256", internalType: "uint256" },
495
+ { name: "leftoverBalance", type: "uint256", internalType: "uint256" },
496
+ { name: "numSplits", type: "uint256", internalType: "uint256" },
497
+ { name: "claimRewards", type: "bool", internalType: "bool" }
498
+ ]
499
+ }
500
+ ],
501
+ outputs: [
502
+ {
503
+ name: "",
504
+ type: "tuple",
505
+ internalType: "struct RouterResult",
506
+ components: [
507
+ { name: "amount", type: "uint256", internalType: "uint256" },
508
+ { name: "minAmount", type: "uint256", internalType: "uint256" },
509
+ {
510
+ name: "calls",
511
+ type: "tuple[]",
512
+ internalType: "struct MultiCall[]",
513
+ components: [
514
+ { name: "target", type: "address", internalType: "address" },
515
+ { name: "callData", type: "bytes", internalType: "bytes" }
516
+ ]
517
+ }
518
+ ]
519
+ }
520
+ ],
521
+ stateMutability: "nonpayable"
522
+ },
523
+ {
524
+ type: "function",
525
+ name: "routingManager",
526
+ inputs: [],
527
+ outputs: [
528
+ { name: "", type: "address", internalType: "contract IRoutingManager" }
529
+ ],
530
+ stateMutability: "view"
531
+ },
532
+ {
533
+ type: "function",
534
+ name: "setFutureRouter",
535
+ inputs: [
536
+ { name: "_futureRouter", type: "address", internalType: "address" }
537
+ ],
538
+ outputs: [],
539
+ stateMutability: "nonpayable"
540
+ },
541
+ {
542
+ type: "function",
543
+ name: "setPathComponent",
544
+ inputs: [
545
+ { name: "componentAddress", type: "address", internalType: "address" }
546
+ ],
547
+ outputs: [],
548
+ stateMutability: "nonpayable"
549
+ },
550
+ {
551
+ type: "function",
552
+ name: "setPathComponentBatch",
553
+ inputs: [
554
+ {
555
+ name: "componentAddresses",
556
+ type: "address[]",
557
+ internalType: "address[]"
558
+ }
559
+ ],
560
+ outputs: [],
561
+ stateMutability: "nonpayable"
562
+ },
563
+ {
564
+ type: "function",
565
+ name: "transferOwnership",
566
+ inputs: [{ name: "newOwner", type: "address", internalType: "address" }],
567
+ outputs: [],
568
+ stateMutability: "nonpayable"
569
+ },
570
+ {
571
+ type: "function",
572
+ name: "version",
573
+ inputs: [],
574
+ outputs: [{ name: "", type: "uint256", internalType: "uint256" }],
575
+ stateMutability: "view"
576
+ },
577
+ {
578
+ type: "event",
579
+ name: "OwnershipTransferred",
580
+ inputs: [
581
+ {
582
+ name: "previousOwner",
583
+ type: "address",
584
+ indexed: true,
585
+ internalType: "address"
586
+ },
587
+ {
588
+ name: "newOwner",
589
+ type: "address",
590
+ indexed: true,
591
+ internalType: "address"
592
+ }
593
+ ],
594
+ anonymous: false
595
+ },
596
+ {
597
+ type: "event",
598
+ name: "RouterComponentUpdate",
599
+ inputs: [
600
+ { name: "", type: "bytes32", indexed: true, internalType: "bytes32" },
601
+ { name: "", type: "address", indexed: true, internalType: "address" },
602
+ {
603
+ name: "version",
604
+ type: "uint256",
605
+ indexed: false,
606
+ internalType: "uint256"
607
+ }
608
+ ],
609
+ anonymous: false
610
+ },
611
+ {
612
+ type: "event",
613
+ name: "SetFutureRouter",
614
+ inputs: [
615
+ { name: "", type: "address", indexed: true, internalType: "address" }
616
+ ],
617
+ anonymous: false
618
+ },
619
+ {
620
+ type: "error",
621
+ name: "UnsupportedRouterComponent",
622
+ inputs: [{ name: "", type: "address", internalType: "address" }]
623
+ }
624
+ ];
625
+ export {
626
+ gearboxRouterAbi
627
+ };