@gearbox-protocol/sdk 3.0.0-vfourabi.1 → 3.0.0-vfourabi.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/.eslintignore +3 -0
  2. package/.github/workflows/lint_pr.yml +18 -0
  3. package/.github/workflows/pr.yml +39 -0
  4. package/.github/workflows/release.yml +47 -0
  5. package/.gitignore +19 -0
  6. package/.husky/commit-msg +1 -0
  7. package/.husky/pre-commit +1 -0
  8. package/.nvmrc +1 -0
  9. package/.releaserc.json +34 -0
  10. package/.vscode/extensions.json +7 -0
  11. package/.vscode/settings.json +16 -0
  12. package/.yarn/install-state.gz +0 -0
  13. package/.yarnrc.yml +1 -0
  14. package/ContributionAgreement +72 -0
  15. package/dist/cjs/abi/iZapper.cjs +85 -0
  16. package/dist/cjs/abi/iZapper.d.ts +123 -0
  17. package/dist/cjs/sdk/index.cjs +19830 -19764
  18. package/dist/cjs/sdk/index.d.ts +3746 -3061
  19. package/dist/esm/abi/iZapper.d.mts +123 -0
  20. package/dist/esm/abi/iZapper.mjs +83 -0
  21. package/dist/esm/sdk/index.d.mts +3746 -3061
  22. package/dist/esm/sdk/index.mjs +19807 -19765
  23. package/jest.config.js +7 -0
  24. package/package.json +32 -2
  25. package/scripts/example.ts +30 -0
  26. package/src/abi/compressors.ts +3962 -0
  27. package/src/abi/errors.ts +196 -0
  28. package/src/abi/iERC20.ts +122 -0
  29. package/src/abi/iPausable.ts +35 -0
  30. package/src/abi/iPriceFeedStore.ts +227 -0
  31. package/src/abi/iUpdatablePriceFeed.ts +16 -0
  32. package/src/abi/iVersion.ts +28 -0
  33. package/src/abi/iZapper.ts +84 -0
  34. package/src/abi/routerV300.ts +378 -0
  35. package/src/abi/v300.ts +4151 -0
  36. package/src/abi/v310.ts +5179 -0
  37. package/src/adapters/AbstractAdapter.ts +28 -0
  38. package/src/adapters/BalancerV2VaultAdapterContract.ts +19 -0
  39. package/src/adapters/BalancerV3RouterAdapterContract.ts +19 -0
  40. package/src/adapters/CamelotV3AdapterContract.ts +20 -0
  41. package/src/adapters/ConvexV1BaseRewardPoolAdapterContract.ts +20 -0
  42. package/src/adapters/ConvexV1BoosterAdapterContract.ts +20 -0
  43. package/src/adapters/Curve2AssetsAdapterContract.ts +20 -0
  44. package/src/adapters/Curve3AssetsAdapterContract.ts +20 -0
  45. package/src/adapters/Curve4AssetsAdapterContract.ts +20 -0
  46. package/src/adapters/CurveV1AdapterStETHContract.ts +20 -0
  47. package/src/adapters/CurveV1StableNGAdapterContract.ts +20 -0
  48. package/src/adapters/DaiUsdsAdapterContract.ts +21 -0
  49. package/src/adapters/ERC4626AdapterContract.ts +20 -0
  50. package/src/adapters/MellowERC4626VaultAdapterContract.ts +20 -0
  51. package/src/adapters/MellowVaultAdapterContract.ts +20 -0
  52. package/src/adapters/PendleRouterAdapterContract.ts +21 -0
  53. package/src/adapters/StakingRewardsAdapterContract.ts +21 -0
  54. package/src/adapters/UniswapV2AdapterContract.ts +20 -0
  55. package/src/adapters/UniswapV3AdapterContract.ts +170 -0
  56. package/src/adapters/VelodromeV2AdapterContract.ts +20 -0
  57. package/src/adapters/WstETHV1AdapterContract.ts +20 -0
  58. package/src/adapters/YearnV2AdapterContract.ts +20 -0
  59. package/src/adapters/abi/adapters.ts +4325 -0
  60. package/src/adapters/abi/iBalancerV3RouterAdapter.ts +126 -0
  61. package/src/adapters/abi/index.ts +2 -0
  62. package/src/adapters/index.ts +2 -0
  63. package/src/adapters/plugin.ts +90 -0
  64. package/src/adapters/types.ts +62 -0
  65. package/src/dev/AccountOpener.ts +611 -0
  66. package/src/dev/PriceFeedStore.ts +95 -0
  67. package/src/dev/SDKExample.ts +167 -0
  68. package/src/dev/abi.ts +14 -0
  69. package/src/dev/calcLiquidatableLTs.ts +77 -0
  70. package/src/dev/createAnvilClient.ts +155 -0
  71. package/src/dev/index.ts +7 -0
  72. package/src/dev/setLTZero.ts +127 -0
  73. package/src/dev/setLTs.ts +68 -0
  74. package/src/sdk/GearboxSDK.ts +488 -0
  75. package/src/sdk/abi/index.ts +1 -0
  76. package/src/sdk/abi/oracles.ts +4614 -0
  77. package/src/sdk/accounts/CreditAccountsService.ts +1123 -0
  78. package/src/sdk/accounts/index.ts +1 -0
  79. package/src/sdk/base/AddressLabeller.ts +35 -0
  80. package/src/sdk/base/BaseContract.ts +237 -0
  81. package/src/sdk/base/IAddressLabeller.ts +13 -0
  82. package/src/sdk/base/PlaceholderContract.ts +12 -0
  83. package/src/sdk/base/SDKConstruct.ts +35 -0
  84. package/src/sdk/base/TokensMeta.ts +45 -0
  85. package/src/sdk/base/index.ts +6 -0
  86. package/src/sdk/base/types.ts +102 -0
  87. package/src/sdk/bots/BotsService.ts +92 -0
  88. package/src/sdk/bots/index.ts +2 -0
  89. package/src/sdk/bots/utils.ts +19 -0
  90. package/src/sdk/chain/Provider.ts +99 -0
  91. package/src/sdk/chain/chains.ts +41 -0
  92. package/src/sdk/chain/detectChain.ts +21 -0
  93. package/src/sdk/chain/index.ts +3 -0
  94. package/src/sdk/constants/address-provider.ts +47 -0
  95. package/src/sdk/constants/addresses.ts +82 -0
  96. package/src/sdk/constants/bot-permissions.ts +36 -0
  97. package/src/sdk/constants/index.ts +6 -0
  98. package/src/sdk/constants/math.ts +23 -0
  99. package/src/sdk/constants/networks.ts +38 -0
  100. package/src/sdk/constants/periphery.ts +7 -0
  101. package/src/sdk/core/BotListV3Contract.ts +103 -0
  102. package/src/sdk/core/GearStakingV3Contract.ts +84 -0
  103. package/src/sdk/core/address-provider/AbstractAddressProviderContract.ts +101 -0
  104. package/src/sdk/core/address-provider/AddressProviderV3Contract.ts +105 -0
  105. package/src/sdk/core/address-provider/AddressProviderV3_1Contract.ts +92 -0
  106. package/src/sdk/core/address-provider/getAddressProvider.ts +45 -0
  107. package/src/sdk/core/address-provider/index.ts +4 -0
  108. package/src/sdk/core/address-provider/types.ts +17 -0
  109. package/src/sdk/core/index.ts +3 -0
  110. package/src/sdk/gauges/GaugeStakingService.ts +100 -0
  111. package/src/sdk/gauges/index.ts +2 -0
  112. package/src/sdk/gauges/utils.ts +25 -0
  113. package/src/sdk/index.ts +17 -0
  114. package/src/sdk/market/MarketConfiguratorContract.ts +78 -0
  115. package/src/sdk/market/MarketRegister.ts +330 -0
  116. package/src/sdk/market/MarketSuite.ts +83 -0
  117. package/src/sdk/market/adapters/PlaceholderAdapterContracts.ts +18 -0
  118. package/src/sdk/market/adapters/factory.ts +34 -0
  119. package/src/sdk/market/adapters/index.ts +3 -0
  120. package/src/sdk/market/adapters/types.ts +7 -0
  121. package/src/sdk/market/credit/CreditConfiguratorV300Contract.ts +164 -0
  122. package/src/sdk/market/credit/CreditConfiguratorV310Contract.ts +139 -0
  123. package/src/sdk/market/credit/CreditFacadeV300Contract.ts +206 -0
  124. package/src/sdk/market/credit/CreditFacadeV310Contract.ts +190 -0
  125. package/src/sdk/market/credit/CreditManagerV300Contract.ts +122 -0
  126. package/src/sdk/market/credit/CreditManagerV310Contract.ts +122 -0
  127. package/src/sdk/market/credit/CreditSuite.ts +65 -0
  128. package/src/sdk/market/credit/createCreditConfigurator.ts +18 -0
  129. package/src/sdk/market/credit/createCreditFacade.ts +18 -0
  130. package/src/sdk/market/credit/createCreditManager.ts +18 -0
  131. package/src/sdk/market/credit/index.ts +8 -0
  132. package/src/sdk/market/credit/types.ts +42 -0
  133. package/src/sdk/market/index.ts +7 -0
  134. package/src/sdk/market/oracle/PriceOracleBaseContract.ts +376 -0
  135. package/src/sdk/market/oracle/PriceOracleV300Contract.ts +71 -0
  136. package/src/sdk/market/oracle/PriceOracleV310Contract.ts +43 -0
  137. package/src/sdk/market/oracle/createPriceOracle.ts +22 -0
  138. package/src/sdk/market/oracle/index.ts +4 -0
  139. package/src/sdk/market/oracle/types.ts +48 -0
  140. package/src/sdk/market/pool/GaugeContract.ts +120 -0
  141. package/src/sdk/market/pool/LinearInterestRateModelContract.ts +75 -0
  142. package/src/sdk/market/pool/PoolQuotaKeeperV300Contract.ts +89 -0
  143. package/src/sdk/market/pool/PoolQuotaKeeperV310Contract.ts +89 -0
  144. package/src/sdk/market/pool/PoolSuite.ts +76 -0
  145. package/src/sdk/market/pool/PoolV300Contract.ts +144 -0
  146. package/src/sdk/market/pool/PoolV310Contract.ts +144 -0
  147. package/src/sdk/market/pool/TumblerContract.ts +73 -0
  148. package/src/sdk/market/pool/createInterestRateModel.ts +33 -0
  149. package/src/sdk/market/pool/createPool.ts +19 -0
  150. package/src/sdk/market/pool/createPoolQuotaKeeper.ts +20 -0
  151. package/src/sdk/market/pool/createRateKeeper.ts +25 -0
  152. package/src/sdk/market/pool/index.ts +6 -0
  153. package/src/sdk/market/pool/types.ts +28 -0
  154. package/src/sdk/market/pricefeeds/AbstractLPPriceFeed.ts +71 -0
  155. package/src/sdk/market/pricefeeds/AbstractPriceFeed.ts +137 -0
  156. package/src/sdk/market/pricefeeds/BalancerStablePriceFeed.ts +24 -0
  157. package/src/sdk/market/pricefeeds/BalancerWeightedPriceFeed.ts +70 -0
  158. package/src/sdk/market/pricefeeds/BoundedPriceFeed.ts +34 -0
  159. package/src/sdk/market/pricefeeds/ChainlinkPriceFeed.ts +16 -0
  160. package/src/sdk/market/pricefeeds/CompositePriceFeed.ts +25 -0
  161. package/src/sdk/market/pricefeeds/CurveCryptoPriceFeed.ts +24 -0
  162. package/src/sdk/market/pricefeeds/CurveStablePriceFeed.ts +24 -0
  163. package/src/sdk/market/pricefeeds/CurveUSDPriceFeed.ts +24 -0
  164. package/src/sdk/market/pricefeeds/Erc4626PriceFeed.ts +36 -0
  165. package/src/sdk/market/pricefeeds/MellowLRTPriceFeed.ts +26 -0
  166. package/src/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.ts +44 -0
  167. package/src/sdk/market/pricefeeds/PriceFeedRef.ts +34 -0
  168. package/src/sdk/market/pricefeeds/PriceFeedsRegister.ts +293 -0
  169. package/src/sdk/market/pricefeeds/RedstonePriceFeed.ts +65 -0
  170. package/src/sdk/market/pricefeeds/RedstoneUpdater.ts +304 -0
  171. package/src/sdk/market/pricefeeds/WstETHPriceFeed.ts +24 -0
  172. package/src/sdk/market/pricefeeds/YearnPriceFeed.ts +24 -0
  173. package/src/sdk/market/pricefeeds/ZeroPriceFeed.ts +17 -0
  174. package/src/sdk/market/pricefeeds/index.ts +20 -0
  175. package/src/sdk/market/pricefeeds/types.ts +82 -0
  176. package/src/sdk/market/pricefeeds/utils.ts +24 -0
  177. package/src/sdk/plugins/index.ts +10 -0
  178. package/src/sdk/router/PathOptionFactory.ts +147 -0
  179. package/src/sdk/router/RouterV3Contract.ts +558 -0
  180. package/src/sdk/router/index.ts +2 -0
  181. package/src/sdk/router/types.ts +48 -0
  182. package/src/sdk/sdk-gov-legacy/contracts/adapters.ts +39 -0
  183. package/src/sdk/sdk-gov-legacy/contracts/contracts.ts +647 -0
  184. package/src/sdk/sdk-gov-legacy/contracts/index.ts +2 -0
  185. package/src/sdk/sdk-gov-legacy/core/constants.ts +11 -0
  186. package/src/sdk/sdk-gov-legacy/index.ts +4 -0
  187. package/src/sdk/sdk-gov-legacy/oracles/PriceFeedType.ts +24 -0
  188. package/src/sdk/sdk-gov-legacy/oracles/index.ts +1 -0
  189. package/src/sdk/sdk-gov-legacy/tokens/aave.ts +101 -0
  190. package/src/sdk/sdk-gov-legacy/tokens/aura.ts +284 -0
  191. package/src/sdk/sdk-gov-legacy/tokens/balancer.ts +421 -0
  192. package/src/sdk/sdk-gov-legacy/tokens/compound.ts +79 -0
  193. package/src/sdk/sdk-gov-legacy/tokens/convex.ts +561 -0
  194. package/src/sdk/sdk-gov-legacy/tokens/curveLP.ts +480 -0
  195. package/src/sdk/sdk-gov-legacy/tokens/decimals.ts +301 -0
  196. package/src/sdk/sdk-gov-legacy/tokens/erc4626.ts +75 -0
  197. package/src/sdk/sdk-gov-legacy/tokens/gear.ts +273 -0
  198. package/src/sdk/sdk-gov-legacy/tokens/index.ts +18 -0
  199. package/src/sdk/sdk-gov-legacy/tokens/normal.ts +613 -0
  200. package/src/sdk/sdk-gov-legacy/tokens/quoted.ts +10 -0
  201. package/src/sdk/sdk-gov-legacy/tokens/stakingRewards.ts +41 -0
  202. package/src/sdk/sdk-gov-legacy/tokens/token.ts +2354 -0
  203. package/src/sdk/sdk-gov-legacy/tokens/tokenData.ts +44 -0
  204. package/src/sdk/sdk-gov-legacy/tokens/tokenType.ts +33 -0
  205. package/src/sdk/sdk-gov-legacy/tokens/wrapped.ts +28 -0
  206. package/src/sdk/sdk-gov-legacy/tokens/yearn.ts +122 -0
  207. package/src/sdk/sdk-gov-legacy/tokens/zircuit.ts +44 -0
  208. package/src/sdk/sdk-legacy/apy/index.ts +149 -0
  209. package/src/sdk/sdk-legacy/core/assets.ts +200 -0
  210. package/src/sdk/sdk-legacy/core/creditAccount.spec.ts +1966 -0
  211. package/src/sdk/sdk-legacy/core/creditAccount.ts +816 -0
  212. package/src/sdk/sdk-legacy/core/creditManager.ts +316 -0
  213. package/src/sdk/sdk-legacy/core/creditSession.ts +352 -0
  214. package/src/sdk/sdk-legacy/core/endpoint.ts +131 -0
  215. package/src/sdk/sdk-legacy/core/eventOrTx.ts +101 -0
  216. package/src/sdk/sdk-legacy/core/pool.ts +439 -0
  217. package/src/sdk/sdk-legacy/core/strategy.ts +82 -0
  218. package/src/sdk/sdk-legacy/core/transactions.ts +865 -0
  219. package/src/sdk/sdk-legacy/gearboxRewards/api.ts +704 -0
  220. package/src/sdk/sdk-legacy/gearboxRewards/apy.ts +267 -0
  221. package/src/sdk/sdk-legacy/gearboxRewards/extraAPY.ts +165 -0
  222. package/src/sdk/sdk-legacy/gearboxRewards/index.ts +3 -0
  223. package/src/sdk/sdk-legacy/gearboxRewards/merklAPI.ts +151 -0
  224. package/src/sdk/sdk-legacy/index.ts +21 -0
  225. package/src/sdk/sdk-legacy/pathfinder/core.ts +18 -0
  226. package/src/sdk/sdk-legacy/pathfinder/index.ts +1 -0
  227. package/src/sdk/sdk-legacy/payload/creditAccount.ts +48 -0
  228. package/src/sdk/sdk-legacy/payload/creditManager.ts +133 -0
  229. package/src/sdk/sdk-legacy/payload/creditSession.ts +143 -0
  230. package/src/sdk/sdk-legacy/payload/graphPayload.ts +10 -0
  231. package/src/sdk/sdk-legacy/payload/pool.ts +198 -0
  232. package/src/sdk/sdk-legacy/payload/token.ts +13 -0
  233. package/src/sdk/sdk-legacy/tokens/tokenData.ts +57 -0
  234. package/src/sdk/sdk-legacy/types/IAirdropDistributor.ts +103 -0
  235. package/src/sdk/sdk-legacy/types/IBaseRewardPool.ts +249 -0
  236. package/src/sdk/sdk-legacy/types/IDataCompressorV3.ts +957 -0
  237. package/src/sdk/sdk-legacy/types/IDegenDistributor.ts +70 -0
  238. package/src/sdk/sdk-legacy/types/IERC20Permit.ts +35 -0
  239. package/src/sdk/sdk-legacy/types/IERC20ZapperDeposits.ts +99 -0
  240. package/src/sdk/sdk-legacy/types/IETHZapperDeposits.ts +27 -0
  241. package/src/sdk/sdk-legacy/types/IFarmingPool.ts +229 -0
  242. package/src/sdk/sdk-legacy/types/IInterestRateModel.ts +23 -0
  243. package/src/sdk/sdk-legacy/types/IMulticall3.ts +242 -0
  244. package/src/sdk/sdk-legacy/types/IOffchainOracle.ts +31 -0
  245. package/src/sdk/sdk-legacy/types/index.ts +11 -0
  246. package/src/sdk/sdk-legacy/utils/formatter.ts +46 -0
  247. package/src/sdk/sdk-legacy/utils/index.ts +3 -0
  248. package/src/sdk/sdk-legacy/utils/math.ts +6 -0
  249. package/src/sdk/sdk-legacy/utils/price.ts +27 -0
  250. package/src/sdk/types/index.ts +5 -0
  251. package/src/sdk/types/logger.ts +13 -0
  252. package/src/sdk/types/state-human.ts +224 -0
  253. package/src/sdk/types/state.ts +8 -0
  254. package/src/sdk/types/transactions.ts +22 -0
  255. package/src/sdk/types/tvl.ts +4 -0
  256. package/src/sdk/utils/AddressMap.ts +111 -0
  257. package/src/sdk/utils/bytes32ToString.ts +6 -0
  258. package/src/sdk/utils/childLogger.ts +8 -0
  259. package/src/sdk/utils/createRawTx.ts +86 -0
  260. package/src/sdk/utils/etherscan.ts +42 -0
  261. package/src/sdk/utils/filterDust.ts +20 -0
  262. package/src/sdk/utils/formatter.ts +124 -0
  263. package/src/sdk/utils/index.ts +10 -0
  264. package/src/sdk/utils/internal/Hooks.ts +51 -0
  265. package/src/sdk/utils/internal/index.ts +1 -0
  266. package/src/sdk/utils/json.ts +27 -0
  267. package/src/sdk/utils/mappers.ts +38 -0
  268. package/src/sdk/utils/retry.ts +24 -0
  269. package/src/sdk/utils/viem/detectNetwork.ts +27 -0
  270. package/src/sdk/utils/viem/index.ts +3 -0
  271. package/src/sdk/utils/viem/sendRawTx.ts +36 -0
  272. package/src/sdk/utils/viem/simulateMulticall.ts +262 -0
  273. package/tsconfig.build.json +4 -0
  274. package/tsconfig.json +16 -0
  275. package/tsup.config.ts +77 -0
@@ -0,0 +1,3962 @@
1
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2
+ // IAdapterCompressor
3
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4
+
5
+ export const iAdapterCompressorAbi = [
6
+ {
7
+ type: "function",
8
+ inputs: [],
9
+ name: "contractType",
10
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
11
+ stateMutability: "view",
12
+ },
13
+ {
14
+ type: "function",
15
+ inputs: [
16
+ { name: "creditManager", internalType: "address", type: "address" },
17
+ ],
18
+ name: "getAdapters",
19
+ outputs: [
20
+ {
21
+ name: "result",
22
+ internalType: "struct AdapterState[]",
23
+ type: "tuple[]",
24
+ components: [
25
+ {
26
+ name: "baseParams",
27
+ internalType: "struct BaseParams",
28
+ type: "tuple",
29
+ components: [
30
+ { name: "addr", internalType: "address", type: "address" },
31
+ { name: "version", internalType: "uint256", type: "uint256" },
32
+ {
33
+ name: "contractType",
34
+ internalType: "bytes32",
35
+ type: "bytes32",
36
+ },
37
+ {
38
+ name: "serializedParams",
39
+ internalType: "bytes",
40
+ type: "bytes",
41
+ },
42
+ ],
43
+ },
44
+ { name: "targetContract", internalType: "address", type: "address" },
45
+ ],
46
+ },
47
+ ],
48
+ stateMutability: "view",
49
+ },
50
+ {
51
+ type: "function",
52
+ inputs: [],
53
+ name: "version",
54
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
55
+ stateMutability: "view",
56
+ },
57
+ ] as const;
58
+
59
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
60
+ // IAuraL2Coordinator
61
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
62
+
63
+ export const iAuraL2CoordinatorAbi = [
64
+ {
65
+ type: "function",
66
+ inputs: [],
67
+ name: "auraOFT",
68
+ outputs: [{ name: "", internalType: "address", type: "address" }],
69
+ stateMutability: "view",
70
+ },
71
+ {
72
+ type: "function",
73
+ inputs: [],
74
+ name: "mintRate",
75
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
76
+ stateMutability: "view",
77
+ },
78
+ ] as const;
79
+
80
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
81
+ // IConvexToken
82
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
83
+
84
+ export const iConvexTokenAbi = [
85
+ {
86
+ type: "function",
87
+ inputs: [],
88
+ name: "EMISSIONS_MAX_SUPPLY",
89
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
90
+ stateMutability: "view",
91
+ },
92
+ {
93
+ type: "function",
94
+ inputs: [],
95
+ name: "maxSupply",
96
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
97
+ stateMutability: "view",
98
+ },
99
+ {
100
+ type: "function",
101
+ inputs: [],
102
+ name: "reductionPerCliff",
103
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
104
+ stateMutability: "view",
105
+ },
106
+ {
107
+ type: "function",
108
+ inputs: [],
109
+ name: "totalCliffs",
110
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
111
+ stateMutability: "view",
112
+ },
113
+ {
114
+ type: "function",
115
+ inputs: [],
116
+ name: "totalSupply",
117
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
118
+ stateMutability: "view",
119
+ },
120
+ ] as const;
121
+
122
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
123
+ // ICreditAccountCompressor
124
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
125
+
126
+ export const iCreditAccountCompressorAbi = [
127
+ {
128
+ type: "function",
129
+ inputs: [],
130
+ name: "contractType",
131
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
132
+ stateMutability: "view",
133
+ },
134
+ {
135
+ type: "function",
136
+ inputs: [
137
+ { name: "creditManager", internalType: "address", type: "address" },
138
+ {
139
+ name: "caFilter",
140
+ internalType: "struct CreditAccountFilter",
141
+ type: "tuple",
142
+ components: [
143
+ { name: "owner", internalType: "address", type: "address" },
144
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
145
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
146
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
147
+ { name: "reverting", internalType: "bool", type: "bool" },
148
+ ],
149
+ },
150
+ ],
151
+ name: "countCreditAccounts",
152
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
153
+ stateMutability: "view",
154
+ },
155
+ {
156
+ type: "function",
157
+ inputs: [
158
+ {
159
+ name: "cmFilter",
160
+ internalType: "struct MarketFilter",
161
+ type: "tuple",
162
+ components: [
163
+ {
164
+ name: "configurators",
165
+ internalType: "address[]",
166
+ type: "address[]",
167
+ },
168
+ { name: "pools", internalType: "address[]", type: "address[]" },
169
+ { name: "underlying", internalType: "address", type: "address" },
170
+ ],
171
+ },
172
+ {
173
+ name: "caFilter",
174
+ internalType: "struct CreditAccountFilter",
175
+ type: "tuple",
176
+ components: [
177
+ { name: "owner", internalType: "address", type: "address" },
178
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
179
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
180
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
181
+ { name: "reverting", internalType: "bool", type: "bool" },
182
+ ],
183
+ },
184
+ ],
185
+ name: "countCreditAccounts",
186
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
187
+ stateMutability: "view",
188
+ },
189
+ {
190
+ type: "function",
191
+ inputs: [
192
+ { name: "creditAccount", internalType: "address", type: "address" },
193
+ ],
194
+ name: "getCreditAccountData",
195
+ outputs: [
196
+ {
197
+ name: "",
198
+ internalType: "struct CreditAccountData",
199
+ type: "tuple",
200
+ components: [
201
+ { name: "creditAccount", internalType: "address", type: "address" },
202
+ { name: "creditManager", internalType: "address", type: "address" },
203
+ { name: "creditFacade", internalType: "address", type: "address" },
204
+ { name: "underlying", internalType: "address", type: "address" },
205
+ { name: "owner", internalType: "address", type: "address" },
206
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
207
+ {
208
+ name: "enabledTokensMask",
209
+ internalType: "uint256",
210
+ type: "uint256",
211
+ },
212
+ { name: "debt", internalType: "uint256", type: "uint256" },
213
+ { name: "accruedInterest", internalType: "uint256", type: "uint256" },
214
+ { name: "accruedFees", internalType: "uint256", type: "uint256" },
215
+ { name: "totalDebtUSD", internalType: "uint256", type: "uint256" },
216
+ { name: "totalValueUSD", internalType: "uint256", type: "uint256" },
217
+ { name: "twvUSD", internalType: "uint256", type: "uint256" },
218
+ { name: "totalValue", internalType: "uint256", type: "uint256" },
219
+ { name: "healthFactor", internalType: "uint16", type: "uint16" },
220
+ { name: "success", internalType: "bool", type: "bool" },
221
+ {
222
+ name: "tokens",
223
+ internalType: "struct TokenInfo[]",
224
+ type: "tuple[]",
225
+ components: [
226
+ { name: "token", internalType: "address", type: "address" },
227
+ { name: "mask", internalType: "uint256", type: "uint256" },
228
+ { name: "balance", internalType: "uint256", type: "uint256" },
229
+ { name: "quota", internalType: "uint256", type: "uint256" },
230
+ { name: "success", internalType: "bool", type: "bool" },
231
+ ],
232
+ },
233
+ ],
234
+ },
235
+ ],
236
+ stateMutability: "view",
237
+ },
238
+ {
239
+ type: "function",
240
+ inputs: [
241
+ {
242
+ name: "cmFilter",
243
+ internalType: "struct MarketFilter",
244
+ type: "tuple",
245
+ components: [
246
+ {
247
+ name: "configurators",
248
+ internalType: "address[]",
249
+ type: "address[]",
250
+ },
251
+ { name: "pools", internalType: "address[]", type: "address[]" },
252
+ { name: "underlying", internalType: "address", type: "address" },
253
+ ],
254
+ },
255
+ {
256
+ name: "caFilter",
257
+ internalType: "struct CreditAccountFilter",
258
+ type: "tuple",
259
+ components: [
260
+ { name: "owner", internalType: "address", type: "address" },
261
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
262
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
263
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
264
+ { name: "reverting", internalType: "bool", type: "bool" },
265
+ ],
266
+ },
267
+ { name: "offset", internalType: "uint256", type: "uint256" },
268
+ ],
269
+ name: "getCreditAccounts",
270
+ outputs: [
271
+ {
272
+ name: "data",
273
+ internalType: "struct CreditAccountData[]",
274
+ type: "tuple[]",
275
+ components: [
276
+ { name: "creditAccount", internalType: "address", type: "address" },
277
+ { name: "creditManager", internalType: "address", type: "address" },
278
+ { name: "creditFacade", internalType: "address", type: "address" },
279
+ { name: "underlying", internalType: "address", type: "address" },
280
+ { name: "owner", internalType: "address", type: "address" },
281
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
282
+ {
283
+ name: "enabledTokensMask",
284
+ internalType: "uint256",
285
+ type: "uint256",
286
+ },
287
+ { name: "debt", internalType: "uint256", type: "uint256" },
288
+ { name: "accruedInterest", internalType: "uint256", type: "uint256" },
289
+ { name: "accruedFees", internalType: "uint256", type: "uint256" },
290
+ { name: "totalDebtUSD", internalType: "uint256", type: "uint256" },
291
+ { name: "totalValueUSD", internalType: "uint256", type: "uint256" },
292
+ { name: "twvUSD", internalType: "uint256", type: "uint256" },
293
+ { name: "totalValue", internalType: "uint256", type: "uint256" },
294
+ { name: "healthFactor", internalType: "uint16", type: "uint16" },
295
+ { name: "success", internalType: "bool", type: "bool" },
296
+ {
297
+ name: "tokens",
298
+ internalType: "struct TokenInfo[]",
299
+ type: "tuple[]",
300
+ components: [
301
+ { name: "token", internalType: "address", type: "address" },
302
+ { name: "mask", internalType: "uint256", type: "uint256" },
303
+ { name: "balance", internalType: "uint256", type: "uint256" },
304
+ { name: "quota", internalType: "uint256", type: "uint256" },
305
+ { name: "success", internalType: "bool", type: "bool" },
306
+ ],
307
+ },
308
+ ],
309
+ },
310
+ { name: "nextOffset", internalType: "uint256", type: "uint256" },
311
+ ],
312
+ stateMutability: "view",
313
+ },
314
+ {
315
+ type: "function",
316
+ inputs: [
317
+ { name: "creditManager", internalType: "address", type: "address" },
318
+ {
319
+ name: "caFilter",
320
+ internalType: "struct CreditAccountFilter",
321
+ type: "tuple",
322
+ components: [
323
+ { name: "owner", internalType: "address", type: "address" },
324
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
325
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
326
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
327
+ { name: "reverting", internalType: "bool", type: "bool" },
328
+ ],
329
+ },
330
+ { name: "offset", internalType: "uint256", type: "uint256" },
331
+ ],
332
+ name: "getCreditAccounts",
333
+ outputs: [
334
+ {
335
+ name: "data",
336
+ internalType: "struct CreditAccountData[]",
337
+ type: "tuple[]",
338
+ components: [
339
+ { name: "creditAccount", internalType: "address", type: "address" },
340
+ { name: "creditManager", internalType: "address", type: "address" },
341
+ { name: "creditFacade", internalType: "address", type: "address" },
342
+ { name: "underlying", internalType: "address", type: "address" },
343
+ { name: "owner", internalType: "address", type: "address" },
344
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
345
+ {
346
+ name: "enabledTokensMask",
347
+ internalType: "uint256",
348
+ type: "uint256",
349
+ },
350
+ { name: "debt", internalType: "uint256", type: "uint256" },
351
+ { name: "accruedInterest", internalType: "uint256", type: "uint256" },
352
+ { name: "accruedFees", internalType: "uint256", type: "uint256" },
353
+ { name: "totalDebtUSD", internalType: "uint256", type: "uint256" },
354
+ { name: "totalValueUSD", internalType: "uint256", type: "uint256" },
355
+ { name: "twvUSD", internalType: "uint256", type: "uint256" },
356
+ { name: "totalValue", internalType: "uint256", type: "uint256" },
357
+ { name: "healthFactor", internalType: "uint16", type: "uint16" },
358
+ { name: "success", internalType: "bool", type: "bool" },
359
+ {
360
+ name: "tokens",
361
+ internalType: "struct TokenInfo[]",
362
+ type: "tuple[]",
363
+ components: [
364
+ { name: "token", internalType: "address", type: "address" },
365
+ { name: "mask", internalType: "uint256", type: "uint256" },
366
+ { name: "balance", internalType: "uint256", type: "uint256" },
367
+ { name: "quota", internalType: "uint256", type: "uint256" },
368
+ { name: "success", internalType: "bool", type: "bool" },
369
+ ],
370
+ },
371
+ ],
372
+ },
373
+ { name: "nextOffset", internalType: "uint256", type: "uint256" },
374
+ ],
375
+ stateMutability: "view",
376
+ },
377
+ {
378
+ type: "function",
379
+ inputs: [
380
+ { name: "creditManager", internalType: "address", type: "address" },
381
+ {
382
+ name: "caFilter",
383
+ internalType: "struct CreditAccountFilter",
384
+ type: "tuple",
385
+ components: [
386
+ { name: "owner", internalType: "address", type: "address" },
387
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
388
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
389
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
390
+ { name: "reverting", internalType: "bool", type: "bool" },
391
+ ],
392
+ },
393
+ { name: "offset", internalType: "uint256", type: "uint256" },
394
+ { name: "limit", internalType: "uint256", type: "uint256" },
395
+ ],
396
+ name: "getCreditAccounts",
397
+ outputs: [
398
+ {
399
+ name: "data",
400
+ internalType: "struct CreditAccountData[]",
401
+ type: "tuple[]",
402
+ components: [
403
+ { name: "creditAccount", internalType: "address", type: "address" },
404
+ { name: "creditManager", internalType: "address", type: "address" },
405
+ { name: "creditFacade", internalType: "address", type: "address" },
406
+ { name: "underlying", internalType: "address", type: "address" },
407
+ { name: "owner", internalType: "address", type: "address" },
408
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
409
+ {
410
+ name: "enabledTokensMask",
411
+ internalType: "uint256",
412
+ type: "uint256",
413
+ },
414
+ { name: "debt", internalType: "uint256", type: "uint256" },
415
+ { name: "accruedInterest", internalType: "uint256", type: "uint256" },
416
+ { name: "accruedFees", internalType: "uint256", type: "uint256" },
417
+ { name: "totalDebtUSD", internalType: "uint256", type: "uint256" },
418
+ { name: "totalValueUSD", internalType: "uint256", type: "uint256" },
419
+ { name: "twvUSD", internalType: "uint256", type: "uint256" },
420
+ { name: "totalValue", internalType: "uint256", type: "uint256" },
421
+ { name: "healthFactor", internalType: "uint16", type: "uint16" },
422
+ { name: "success", internalType: "bool", type: "bool" },
423
+ {
424
+ name: "tokens",
425
+ internalType: "struct TokenInfo[]",
426
+ type: "tuple[]",
427
+ components: [
428
+ { name: "token", internalType: "address", type: "address" },
429
+ { name: "mask", internalType: "uint256", type: "uint256" },
430
+ { name: "balance", internalType: "uint256", type: "uint256" },
431
+ { name: "quota", internalType: "uint256", type: "uint256" },
432
+ { name: "success", internalType: "bool", type: "bool" },
433
+ ],
434
+ },
435
+ ],
436
+ },
437
+ { name: "nextOffset", internalType: "uint256", type: "uint256" },
438
+ ],
439
+ stateMutability: "view",
440
+ },
441
+ {
442
+ type: "function",
443
+ inputs: [
444
+ {
445
+ name: "cmFilter",
446
+ internalType: "struct MarketFilter",
447
+ type: "tuple",
448
+ components: [
449
+ {
450
+ name: "configurators",
451
+ internalType: "address[]",
452
+ type: "address[]",
453
+ },
454
+ { name: "pools", internalType: "address[]", type: "address[]" },
455
+ { name: "underlying", internalType: "address", type: "address" },
456
+ ],
457
+ },
458
+ {
459
+ name: "caFilter",
460
+ internalType: "struct CreditAccountFilter",
461
+ type: "tuple",
462
+ components: [
463
+ { name: "owner", internalType: "address", type: "address" },
464
+ { name: "includeZeroDebt", internalType: "bool", type: "bool" },
465
+ { name: "minHealthFactor", internalType: "uint16", type: "uint16" },
466
+ { name: "maxHealthFactor", internalType: "uint16", type: "uint16" },
467
+ { name: "reverting", internalType: "bool", type: "bool" },
468
+ ],
469
+ },
470
+ { name: "offset", internalType: "uint256", type: "uint256" },
471
+ { name: "limit", internalType: "uint256", type: "uint256" },
472
+ ],
473
+ name: "getCreditAccounts",
474
+ outputs: [
475
+ {
476
+ name: "data",
477
+ internalType: "struct CreditAccountData[]",
478
+ type: "tuple[]",
479
+ components: [
480
+ { name: "creditAccount", internalType: "address", type: "address" },
481
+ { name: "creditManager", internalType: "address", type: "address" },
482
+ { name: "creditFacade", internalType: "address", type: "address" },
483
+ { name: "underlying", internalType: "address", type: "address" },
484
+ { name: "owner", internalType: "address", type: "address" },
485
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
486
+ {
487
+ name: "enabledTokensMask",
488
+ internalType: "uint256",
489
+ type: "uint256",
490
+ },
491
+ { name: "debt", internalType: "uint256", type: "uint256" },
492
+ { name: "accruedInterest", internalType: "uint256", type: "uint256" },
493
+ { name: "accruedFees", internalType: "uint256", type: "uint256" },
494
+ { name: "totalDebtUSD", internalType: "uint256", type: "uint256" },
495
+ { name: "totalValueUSD", internalType: "uint256", type: "uint256" },
496
+ { name: "twvUSD", internalType: "uint256", type: "uint256" },
497
+ { name: "totalValue", internalType: "uint256", type: "uint256" },
498
+ { name: "healthFactor", internalType: "uint16", type: "uint16" },
499
+ { name: "success", internalType: "bool", type: "bool" },
500
+ {
501
+ name: "tokens",
502
+ internalType: "struct TokenInfo[]",
503
+ type: "tuple[]",
504
+ components: [
505
+ { name: "token", internalType: "address", type: "address" },
506
+ { name: "mask", internalType: "uint256", type: "uint256" },
507
+ { name: "balance", internalType: "uint256", type: "uint256" },
508
+ { name: "quota", internalType: "uint256", type: "uint256" },
509
+ { name: "success", internalType: "bool", type: "bool" },
510
+ ],
511
+ },
512
+ ],
513
+ },
514
+ { name: "nextOffset", internalType: "uint256", type: "uint256" },
515
+ ],
516
+ stateMutability: "view",
517
+ },
518
+ {
519
+ type: "function",
520
+ inputs: [],
521
+ name: "version",
522
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
523
+ stateMutability: "view",
524
+ },
525
+ ] as const;
526
+
527
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
528
+ // ICreditSuiteCompressor
529
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
530
+
531
+ export const iCreditSuiteCompressorAbi = [
532
+ {
533
+ type: "function",
534
+ inputs: [],
535
+ name: "contractType",
536
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
537
+ stateMutability: "view",
538
+ },
539
+ {
540
+ type: "function",
541
+ inputs: [
542
+ { name: "creditFacade", internalType: "address", type: "address" },
543
+ ],
544
+ name: "getCreditFacadeState",
545
+ outputs: [
546
+ {
547
+ name: "",
548
+ internalType: "struct CreditFacadeState",
549
+ type: "tuple",
550
+ components: [
551
+ {
552
+ name: "baseParams",
553
+ internalType: "struct BaseParams",
554
+ type: "tuple",
555
+ components: [
556
+ { name: "addr", internalType: "address", type: "address" },
557
+ { name: "version", internalType: "uint256", type: "uint256" },
558
+ {
559
+ name: "contractType",
560
+ internalType: "bytes32",
561
+ type: "bytes32",
562
+ },
563
+ {
564
+ name: "serializedParams",
565
+ internalType: "bytes",
566
+ type: "bytes",
567
+ },
568
+ ],
569
+ },
570
+ { name: "creditManager", internalType: "address", type: "address" },
571
+ { name: "degenNFT", internalType: "address", type: "address" },
572
+ { name: "botList", internalType: "address", type: "address" },
573
+ { name: "expirable", internalType: "bool", type: "bool" },
574
+ { name: "expirationDate", internalType: "uint40", type: "uint40" },
575
+ {
576
+ name: "maxDebtPerBlockMultiplier",
577
+ internalType: "uint8",
578
+ type: "uint8",
579
+ },
580
+ { name: "minDebt", internalType: "uint256", type: "uint256" },
581
+ { name: "maxDebt", internalType: "uint256", type: "uint256" },
582
+ {
583
+ name: "forbiddenTokenMask",
584
+ internalType: "uint256",
585
+ type: "uint256",
586
+ },
587
+ { name: "isPaused", internalType: "bool", type: "bool" },
588
+ ],
589
+ },
590
+ ],
591
+ stateMutability: "view",
592
+ },
593
+ {
594
+ type: "function",
595
+ inputs: [
596
+ { name: "creditManager", internalType: "address", type: "address" },
597
+ ],
598
+ name: "getCreditManagerState",
599
+ outputs: [
600
+ {
601
+ name: "",
602
+ internalType: "struct CreditManagerState",
603
+ type: "tuple",
604
+ components: [
605
+ {
606
+ name: "baseParams",
607
+ internalType: "struct BaseParams",
608
+ type: "tuple",
609
+ components: [
610
+ { name: "addr", internalType: "address", type: "address" },
611
+ { name: "version", internalType: "uint256", type: "uint256" },
612
+ {
613
+ name: "contractType",
614
+ internalType: "bytes32",
615
+ type: "bytes32",
616
+ },
617
+ {
618
+ name: "serializedParams",
619
+ internalType: "bytes",
620
+ type: "bytes",
621
+ },
622
+ ],
623
+ },
624
+ { name: "name", internalType: "string", type: "string" },
625
+ { name: "accountFactory", internalType: "address", type: "address" },
626
+ { name: "underlying", internalType: "address", type: "address" },
627
+ { name: "pool", internalType: "address", type: "address" },
628
+ { name: "creditFacade", internalType: "address", type: "address" },
629
+ {
630
+ name: "creditConfigurator",
631
+ internalType: "address",
632
+ type: "address",
633
+ },
634
+ { name: "maxEnabledTokens", internalType: "uint8", type: "uint8" },
635
+ {
636
+ name: "collateralTokens",
637
+ internalType: "struct CollateralToken[]",
638
+ type: "tuple[]",
639
+ components: [
640
+ { name: "token", internalType: "address", type: "address" },
641
+ {
642
+ name: "liquidationThreshold",
643
+ internalType: "uint16",
644
+ type: "uint16",
645
+ },
646
+ ],
647
+ },
648
+ { name: "feeInterest", internalType: "uint16", type: "uint16" },
649
+ { name: "feeLiquidation", internalType: "uint16", type: "uint16" },
650
+ {
651
+ name: "liquidationDiscount",
652
+ internalType: "uint16",
653
+ type: "uint16",
654
+ },
655
+ {
656
+ name: "feeLiquidationExpired",
657
+ internalType: "uint16",
658
+ type: "uint16",
659
+ },
660
+ {
661
+ name: "liquidationDiscountExpired",
662
+ internalType: "uint16",
663
+ type: "uint16",
664
+ },
665
+ ],
666
+ },
667
+ ],
668
+ stateMutability: "view",
669
+ },
670
+ {
671
+ type: "function",
672
+ inputs: [
673
+ { name: "creditManager", internalType: "address", type: "address" },
674
+ ],
675
+ name: "getCreditSuiteData",
676
+ outputs: [
677
+ {
678
+ name: "",
679
+ internalType: "struct CreditSuiteData",
680
+ type: "tuple",
681
+ components: [
682
+ {
683
+ name: "creditFacade",
684
+ internalType: "struct CreditFacadeState",
685
+ type: "tuple",
686
+ components: [
687
+ {
688
+ name: "baseParams",
689
+ internalType: "struct BaseParams",
690
+ type: "tuple",
691
+ components: [
692
+ { name: "addr", internalType: "address", type: "address" },
693
+ { name: "version", internalType: "uint256", type: "uint256" },
694
+ {
695
+ name: "contractType",
696
+ internalType: "bytes32",
697
+ type: "bytes32",
698
+ },
699
+ {
700
+ name: "serializedParams",
701
+ internalType: "bytes",
702
+ type: "bytes",
703
+ },
704
+ ],
705
+ },
706
+ {
707
+ name: "creditManager",
708
+ internalType: "address",
709
+ type: "address",
710
+ },
711
+ { name: "degenNFT", internalType: "address", type: "address" },
712
+ { name: "botList", internalType: "address", type: "address" },
713
+ { name: "expirable", internalType: "bool", type: "bool" },
714
+ {
715
+ name: "expirationDate",
716
+ internalType: "uint40",
717
+ type: "uint40",
718
+ },
719
+ {
720
+ name: "maxDebtPerBlockMultiplier",
721
+ internalType: "uint8",
722
+ type: "uint8",
723
+ },
724
+ { name: "minDebt", internalType: "uint256", type: "uint256" },
725
+ { name: "maxDebt", internalType: "uint256", type: "uint256" },
726
+ {
727
+ name: "forbiddenTokenMask",
728
+ internalType: "uint256",
729
+ type: "uint256",
730
+ },
731
+ { name: "isPaused", internalType: "bool", type: "bool" },
732
+ ],
733
+ },
734
+ {
735
+ name: "creditManager",
736
+ internalType: "struct CreditManagerState",
737
+ type: "tuple",
738
+ components: [
739
+ {
740
+ name: "baseParams",
741
+ internalType: "struct BaseParams",
742
+ type: "tuple",
743
+ components: [
744
+ { name: "addr", internalType: "address", type: "address" },
745
+ { name: "version", internalType: "uint256", type: "uint256" },
746
+ {
747
+ name: "contractType",
748
+ internalType: "bytes32",
749
+ type: "bytes32",
750
+ },
751
+ {
752
+ name: "serializedParams",
753
+ internalType: "bytes",
754
+ type: "bytes",
755
+ },
756
+ ],
757
+ },
758
+ { name: "name", internalType: "string", type: "string" },
759
+ {
760
+ name: "accountFactory",
761
+ internalType: "address",
762
+ type: "address",
763
+ },
764
+ { name: "underlying", internalType: "address", type: "address" },
765
+ { name: "pool", internalType: "address", type: "address" },
766
+ {
767
+ name: "creditFacade",
768
+ internalType: "address",
769
+ type: "address",
770
+ },
771
+ {
772
+ name: "creditConfigurator",
773
+ internalType: "address",
774
+ type: "address",
775
+ },
776
+ {
777
+ name: "maxEnabledTokens",
778
+ internalType: "uint8",
779
+ type: "uint8",
780
+ },
781
+ {
782
+ name: "collateralTokens",
783
+ internalType: "struct CollateralToken[]",
784
+ type: "tuple[]",
785
+ components: [
786
+ { name: "token", internalType: "address", type: "address" },
787
+ {
788
+ name: "liquidationThreshold",
789
+ internalType: "uint16",
790
+ type: "uint16",
791
+ },
792
+ ],
793
+ },
794
+ { name: "feeInterest", internalType: "uint16", type: "uint16" },
795
+ {
796
+ name: "feeLiquidation",
797
+ internalType: "uint16",
798
+ type: "uint16",
799
+ },
800
+ {
801
+ name: "liquidationDiscount",
802
+ internalType: "uint16",
803
+ type: "uint16",
804
+ },
805
+ {
806
+ name: "feeLiquidationExpired",
807
+ internalType: "uint16",
808
+ type: "uint16",
809
+ },
810
+ {
811
+ name: "liquidationDiscountExpired",
812
+ internalType: "uint16",
813
+ type: "uint16",
814
+ },
815
+ ],
816
+ },
817
+ {
818
+ name: "creditConfigurator",
819
+ internalType: "struct BaseState",
820
+ type: "tuple",
821
+ components: [
822
+ {
823
+ name: "baseParams",
824
+ internalType: "struct BaseParams",
825
+ type: "tuple",
826
+ components: [
827
+ { name: "addr", internalType: "address", type: "address" },
828
+ { name: "version", internalType: "uint256", type: "uint256" },
829
+ {
830
+ name: "contractType",
831
+ internalType: "bytes32",
832
+ type: "bytes32",
833
+ },
834
+ {
835
+ name: "serializedParams",
836
+ internalType: "bytes",
837
+ type: "bytes",
838
+ },
839
+ ],
840
+ },
841
+ ],
842
+ },
843
+ {
844
+ name: "adapters",
845
+ internalType: "struct AdapterState[]",
846
+ type: "tuple[]",
847
+ components: [
848
+ {
849
+ name: "baseParams",
850
+ internalType: "struct BaseParams",
851
+ type: "tuple",
852
+ components: [
853
+ { name: "addr", internalType: "address", type: "address" },
854
+ { name: "version", internalType: "uint256", type: "uint256" },
855
+ {
856
+ name: "contractType",
857
+ internalType: "bytes32",
858
+ type: "bytes32",
859
+ },
860
+ {
861
+ name: "serializedParams",
862
+ internalType: "bytes",
863
+ type: "bytes",
864
+ },
865
+ ],
866
+ },
867
+ {
868
+ name: "targetContract",
869
+ internalType: "address",
870
+ type: "address",
871
+ },
872
+ ],
873
+ },
874
+ ],
875
+ },
876
+ ],
877
+ stateMutability: "view",
878
+ },
879
+ {
880
+ type: "function",
881
+ inputs: [],
882
+ name: "version",
883
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
884
+ stateMutability: "view",
885
+ },
886
+ ] as const;
887
+
888
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
889
+ // IGaugeCompressor
890
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
891
+
892
+ export const iGaugeCompressorAbi = [
893
+ {
894
+ type: "function",
895
+ inputs: [],
896
+ name: "contractType",
897
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
898
+ stateMutability: "view",
899
+ },
900
+ {
901
+ type: "function",
902
+ inputs: [
903
+ { name: "gauge", internalType: "address", type: "address" },
904
+ { name: "staker", internalType: "address", type: "address" },
905
+ ],
906
+ name: "getGauge",
907
+ outputs: [
908
+ {
909
+ name: "result",
910
+ internalType: "struct GaugeInfo",
911
+ type: "tuple",
912
+ components: [
913
+ { name: "addr", internalType: "address", type: "address" },
914
+ { name: "pool", internalType: "address", type: "address" },
915
+ { name: "symbol", internalType: "string", type: "string" },
916
+ { name: "name", internalType: "string", type: "string" },
917
+ { name: "voter", internalType: "address", type: "address" },
918
+ { name: "underlying", internalType: "address", type: "address" },
919
+ { name: "currentEpoch", internalType: "uint16", type: "uint16" },
920
+ { name: "epochLastUpdate", internalType: "uint16", type: "uint16" },
921
+ { name: "epochFrozen", internalType: "bool", type: "bool" },
922
+ {
923
+ name: "quotaParams",
924
+ internalType: "struct GaugeQuotaParams[]",
925
+ type: "tuple[]",
926
+ components: [
927
+ { name: "token", internalType: "address", type: "address" },
928
+ { name: "minRate", internalType: "uint16", type: "uint16" },
929
+ { name: "maxRate", internalType: "uint16", type: "uint16" },
930
+ {
931
+ name: "totalVotesLpSide",
932
+ internalType: "uint96",
933
+ type: "uint96",
934
+ },
935
+ {
936
+ name: "totalVotesCaSide",
937
+ internalType: "uint96",
938
+ type: "uint96",
939
+ },
940
+ {
941
+ name: "stakerVotesLpSide",
942
+ internalType: "uint96",
943
+ type: "uint96",
944
+ },
945
+ {
946
+ name: "stakerVotesCaSide",
947
+ internalType: "uint96",
948
+ type: "uint96",
949
+ },
950
+ ],
951
+ },
952
+ ],
953
+ },
954
+ ],
955
+ stateMutability: "view",
956
+ },
957
+ {
958
+ type: "function",
959
+ inputs: [
960
+ {
961
+ name: "filter",
962
+ internalType: "struct MarketFilter",
963
+ type: "tuple",
964
+ components: [
965
+ {
966
+ name: "configurators",
967
+ internalType: "address[]",
968
+ type: "address[]",
969
+ },
970
+ { name: "pools", internalType: "address[]", type: "address[]" },
971
+ { name: "underlying", internalType: "address", type: "address" },
972
+ ],
973
+ },
974
+ { name: "staker", internalType: "address", type: "address" },
975
+ ],
976
+ name: "getGauges",
977
+ outputs: [
978
+ {
979
+ name: "result",
980
+ internalType: "struct GaugeInfo[]",
981
+ type: "tuple[]",
982
+ components: [
983
+ { name: "addr", internalType: "address", type: "address" },
984
+ { name: "pool", internalType: "address", type: "address" },
985
+ { name: "symbol", internalType: "string", type: "string" },
986
+ { name: "name", internalType: "string", type: "string" },
987
+ { name: "voter", internalType: "address", type: "address" },
988
+ { name: "underlying", internalType: "address", type: "address" },
989
+ { name: "currentEpoch", internalType: "uint16", type: "uint16" },
990
+ { name: "epochLastUpdate", internalType: "uint16", type: "uint16" },
991
+ { name: "epochFrozen", internalType: "bool", type: "bool" },
992
+ {
993
+ name: "quotaParams",
994
+ internalType: "struct GaugeQuotaParams[]",
995
+ type: "tuple[]",
996
+ components: [
997
+ { name: "token", internalType: "address", type: "address" },
998
+ { name: "minRate", internalType: "uint16", type: "uint16" },
999
+ { name: "maxRate", internalType: "uint16", type: "uint16" },
1000
+ {
1001
+ name: "totalVotesLpSide",
1002
+ internalType: "uint96",
1003
+ type: "uint96",
1004
+ },
1005
+ {
1006
+ name: "totalVotesCaSide",
1007
+ internalType: "uint96",
1008
+ type: "uint96",
1009
+ },
1010
+ {
1011
+ name: "stakerVotesLpSide",
1012
+ internalType: "uint96",
1013
+ type: "uint96",
1014
+ },
1015
+ {
1016
+ name: "stakerVotesCaSide",
1017
+ internalType: "uint96",
1018
+ type: "uint96",
1019
+ },
1020
+ ],
1021
+ },
1022
+ ],
1023
+ },
1024
+ ],
1025
+ stateMutability: "view",
1026
+ },
1027
+ {
1028
+ type: "function",
1029
+ inputs: [],
1030
+ name: "version",
1031
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
1032
+ stateMutability: "view",
1033
+ },
1034
+ ] as const;
1035
+
1036
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1037
+ // IMarketCompressor
1038
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1039
+
1040
+ export const iMarketCompressorAbi = [
1041
+ {
1042
+ type: "function",
1043
+ inputs: [],
1044
+ name: "contractType",
1045
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
1046
+ stateMutability: "view",
1047
+ },
1048
+ {
1049
+ type: "function",
1050
+ inputs: [
1051
+ { name: "pool", internalType: "address", type: "address" },
1052
+ { name: "configurator", internalType: "address", type: "address" },
1053
+ ],
1054
+ name: "getMarketData",
1055
+ outputs: [
1056
+ {
1057
+ name: "result",
1058
+ internalType: "struct MarketData",
1059
+ type: "tuple",
1060
+ components: [
1061
+ { name: "acl", internalType: "address", type: "address" },
1062
+ {
1063
+ name: "contractsRegister",
1064
+ internalType: "address",
1065
+ type: "address",
1066
+ },
1067
+ { name: "treasury", internalType: "address", type: "address" },
1068
+ {
1069
+ name: "pool",
1070
+ internalType: "struct PoolState",
1071
+ type: "tuple",
1072
+ components: [
1073
+ {
1074
+ name: "baseParams",
1075
+ internalType: "struct BaseParams",
1076
+ type: "tuple",
1077
+ components: [
1078
+ { name: "addr", internalType: "address", type: "address" },
1079
+ { name: "version", internalType: "uint256", type: "uint256" },
1080
+ {
1081
+ name: "contractType",
1082
+ internalType: "bytes32",
1083
+ type: "bytes32",
1084
+ },
1085
+ {
1086
+ name: "serializedParams",
1087
+ internalType: "bytes",
1088
+ type: "bytes",
1089
+ },
1090
+ ],
1091
+ },
1092
+ { name: "symbol", internalType: "string", type: "string" },
1093
+ { name: "name", internalType: "string", type: "string" },
1094
+ { name: "decimals", internalType: "uint8", type: "uint8" },
1095
+ { name: "totalSupply", internalType: "uint256", type: "uint256" },
1096
+ {
1097
+ name: "poolQuotaKeeper",
1098
+ internalType: "address",
1099
+ type: "address",
1100
+ },
1101
+ {
1102
+ name: "interestRateModel",
1103
+ internalType: "address",
1104
+ type: "address",
1105
+ },
1106
+ { name: "underlying", internalType: "address", type: "address" },
1107
+ {
1108
+ name: "availableLiquidity",
1109
+ internalType: "uint256",
1110
+ type: "uint256",
1111
+ },
1112
+ {
1113
+ name: "expectedLiquidity",
1114
+ internalType: "uint256",
1115
+ type: "uint256",
1116
+ },
1117
+ {
1118
+ name: "baseInterestIndex",
1119
+ internalType: "uint256",
1120
+ type: "uint256",
1121
+ },
1122
+ {
1123
+ name: "baseInterestRate",
1124
+ internalType: "uint256",
1125
+ type: "uint256",
1126
+ },
1127
+ { name: "dieselRate", internalType: "uint256", type: "uint256" },
1128
+ { name: "supplyRate", internalType: "uint256", type: "uint256" },
1129
+ { name: "withdrawFee", internalType: "uint256", type: "uint256" },
1130
+ {
1131
+ name: "totalBorrowed",
1132
+ internalType: "uint256",
1133
+ type: "uint256",
1134
+ },
1135
+ {
1136
+ name: "totalDebtLimit",
1137
+ internalType: "uint256",
1138
+ type: "uint256",
1139
+ },
1140
+ {
1141
+ name: "creditManagerDebtParams",
1142
+ internalType: "struct CreditManagerDebtParams[]",
1143
+ type: "tuple[]",
1144
+ components: [
1145
+ {
1146
+ name: "creditManager",
1147
+ internalType: "address",
1148
+ type: "address",
1149
+ },
1150
+ {
1151
+ name: "borrowed",
1152
+ internalType: "uint256",
1153
+ type: "uint256",
1154
+ },
1155
+ { name: "limit", internalType: "uint256", type: "uint256" },
1156
+ {
1157
+ name: "available",
1158
+ internalType: "uint256",
1159
+ type: "uint256",
1160
+ },
1161
+ ],
1162
+ },
1163
+ {
1164
+ name: "baseInterestIndexLU",
1165
+ internalType: "uint256",
1166
+ type: "uint256",
1167
+ },
1168
+ {
1169
+ name: "expectedLiquidityLU",
1170
+ internalType: "uint256",
1171
+ type: "uint256",
1172
+ },
1173
+ {
1174
+ name: "quotaRevenue",
1175
+ internalType: "uint256",
1176
+ type: "uint256",
1177
+ },
1178
+ {
1179
+ name: "lastBaseInterestUpdate",
1180
+ internalType: "uint40",
1181
+ type: "uint40",
1182
+ },
1183
+ {
1184
+ name: "lastQuotaRevenueUpdate",
1185
+ internalType: "uint40",
1186
+ type: "uint40",
1187
+ },
1188
+ { name: "isPaused", internalType: "bool", type: "bool" },
1189
+ ],
1190
+ },
1191
+ {
1192
+ name: "poolQuotaKeeper",
1193
+ internalType: "struct PoolQuotaKeeperState",
1194
+ type: "tuple",
1195
+ components: [
1196
+ {
1197
+ name: "baseParams",
1198
+ internalType: "struct BaseParams",
1199
+ type: "tuple",
1200
+ components: [
1201
+ { name: "addr", internalType: "address", type: "address" },
1202
+ { name: "version", internalType: "uint256", type: "uint256" },
1203
+ {
1204
+ name: "contractType",
1205
+ internalType: "bytes32",
1206
+ type: "bytes32",
1207
+ },
1208
+ {
1209
+ name: "serializedParams",
1210
+ internalType: "bytes",
1211
+ type: "bytes",
1212
+ },
1213
+ ],
1214
+ },
1215
+ { name: "rateKeeper", internalType: "address", type: "address" },
1216
+ {
1217
+ name: "quotas",
1218
+ internalType: "struct QuotaTokenParams[]",
1219
+ type: "tuple[]",
1220
+ components: [
1221
+ { name: "token", internalType: "address", type: "address" },
1222
+ { name: "rate", internalType: "uint16", type: "uint16" },
1223
+ {
1224
+ name: "cumulativeIndexLU",
1225
+ internalType: "uint192",
1226
+ type: "uint192",
1227
+ },
1228
+ {
1229
+ name: "quotaIncreaseFee",
1230
+ internalType: "uint16",
1231
+ type: "uint16",
1232
+ },
1233
+ {
1234
+ name: "totalQuoted",
1235
+ internalType: "uint96",
1236
+ type: "uint96",
1237
+ },
1238
+ { name: "limit", internalType: "uint96", type: "uint96" },
1239
+ { name: "isActive", internalType: "bool", type: "bool" },
1240
+ ],
1241
+ },
1242
+ {
1243
+ name: "creditManagers",
1244
+ internalType: "address[]",
1245
+ type: "address[]",
1246
+ },
1247
+ {
1248
+ name: "lastQuotaRateUpdate",
1249
+ internalType: "uint40",
1250
+ type: "uint40",
1251
+ },
1252
+ ],
1253
+ },
1254
+ {
1255
+ name: "interestRateModel",
1256
+ internalType: "struct BaseState",
1257
+ type: "tuple",
1258
+ components: [
1259
+ {
1260
+ name: "baseParams",
1261
+ internalType: "struct BaseParams",
1262
+ type: "tuple",
1263
+ components: [
1264
+ { name: "addr", internalType: "address", type: "address" },
1265
+ { name: "version", internalType: "uint256", type: "uint256" },
1266
+ {
1267
+ name: "contractType",
1268
+ internalType: "bytes32",
1269
+ type: "bytes32",
1270
+ },
1271
+ {
1272
+ name: "serializedParams",
1273
+ internalType: "bytes",
1274
+ type: "bytes",
1275
+ },
1276
+ ],
1277
+ },
1278
+ ],
1279
+ },
1280
+ {
1281
+ name: "rateKeeper",
1282
+ internalType: "struct RateKeeperState",
1283
+ type: "tuple",
1284
+ components: [
1285
+ {
1286
+ name: "baseParams",
1287
+ internalType: "struct BaseParams",
1288
+ type: "tuple",
1289
+ components: [
1290
+ { name: "addr", internalType: "address", type: "address" },
1291
+ { name: "version", internalType: "uint256", type: "uint256" },
1292
+ {
1293
+ name: "contractType",
1294
+ internalType: "bytes32",
1295
+ type: "bytes32",
1296
+ },
1297
+ {
1298
+ name: "serializedParams",
1299
+ internalType: "bytes",
1300
+ type: "bytes",
1301
+ },
1302
+ ],
1303
+ },
1304
+ {
1305
+ name: "rates",
1306
+ internalType: "struct Rate[]",
1307
+ type: "tuple[]",
1308
+ components: [
1309
+ { name: "token", internalType: "address", type: "address" },
1310
+ { name: "rate", internalType: "uint16", type: "uint16" },
1311
+ ],
1312
+ },
1313
+ ],
1314
+ },
1315
+ {
1316
+ name: "priceOracleData",
1317
+ internalType: "struct PriceOracleState",
1318
+ type: "tuple",
1319
+ components: [
1320
+ {
1321
+ name: "baseParams",
1322
+ internalType: "struct BaseParams",
1323
+ type: "tuple",
1324
+ components: [
1325
+ { name: "addr", internalType: "address", type: "address" },
1326
+ { name: "version", internalType: "uint256", type: "uint256" },
1327
+ {
1328
+ name: "contractType",
1329
+ internalType: "bytes32",
1330
+ type: "bytes32",
1331
+ },
1332
+ {
1333
+ name: "serializedParams",
1334
+ internalType: "bytes",
1335
+ type: "bytes",
1336
+ },
1337
+ ],
1338
+ },
1339
+ {
1340
+ name: "priceFeedMapping",
1341
+ internalType: "struct PriceFeedMapEntry[]",
1342
+ type: "tuple[]",
1343
+ components: [
1344
+ { name: "token", internalType: "address", type: "address" },
1345
+ { name: "reserve", internalType: "bool", type: "bool" },
1346
+ {
1347
+ name: "priceFeed",
1348
+ internalType: "address",
1349
+ type: "address",
1350
+ },
1351
+ {
1352
+ name: "stalenessPeriod",
1353
+ internalType: "uint32",
1354
+ type: "uint32",
1355
+ },
1356
+ ],
1357
+ },
1358
+ {
1359
+ name: "priceFeedStructure",
1360
+ internalType: "struct PriceFeedTreeNode[]",
1361
+ type: "tuple[]",
1362
+ components: [
1363
+ {
1364
+ name: "baseParams",
1365
+ internalType: "struct BaseParams",
1366
+ type: "tuple",
1367
+ components: [
1368
+ {
1369
+ name: "addr",
1370
+ internalType: "address",
1371
+ type: "address",
1372
+ },
1373
+ {
1374
+ name: "version",
1375
+ internalType: "uint256",
1376
+ type: "uint256",
1377
+ },
1378
+ {
1379
+ name: "contractType",
1380
+ internalType: "bytes32",
1381
+ type: "bytes32",
1382
+ },
1383
+ {
1384
+ name: "serializedParams",
1385
+ internalType: "bytes",
1386
+ type: "bytes",
1387
+ },
1388
+ ],
1389
+ },
1390
+ {
1391
+ name: "description",
1392
+ internalType: "string",
1393
+ type: "string",
1394
+ },
1395
+ { name: "decimals", internalType: "uint8", type: "uint8" },
1396
+ { name: "skipCheck", internalType: "bool", type: "bool" },
1397
+ { name: "updatable", internalType: "bool", type: "bool" },
1398
+ {
1399
+ name: "underlyingFeeds",
1400
+ internalType: "address[]",
1401
+ type: "address[]",
1402
+ },
1403
+ {
1404
+ name: "underlyingStalenessPeriods",
1405
+ internalType: "uint32[]",
1406
+ type: "uint32[]",
1407
+ },
1408
+ {
1409
+ name: "answer",
1410
+ internalType: "struct PriceFeedAnswer",
1411
+ type: "tuple",
1412
+ components: [
1413
+ { name: "price", internalType: "int256", type: "int256" },
1414
+ {
1415
+ name: "updatedAt",
1416
+ internalType: "uint256",
1417
+ type: "uint256",
1418
+ },
1419
+ { name: "success", internalType: "bool", type: "bool" },
1420
+ ],
1421
+ },
1422
+ ],
1423
+ },
1424
+ ],
1425
+ },
1426
+ {
1427
+ name: "lossPolicy",
1428
+ internalType: "struct BaseState",
1429
+ type: "tuple",
1430
+ components: [
1431
+ {
1432
+ name: "baseParams",
1433
+ internalType: "struct BaseParams",
1434
+ type: "tuple",
1435
+ components: [
1436
+ { name: "addr", internalType: "address", type: "address" },
1437
+ { name: "version", internalType: "uint256", type: "uint256" },
1438
+ {
1439
+ name: "contractType",
1440
+ internalType: "bytes32",
1441
+ type: "bytes32",
1442
+ },
1443
+ {
1444
+ name: "serializedParams",
1445
+ internalType: "bytes",
1446
+ type: "bytes",
1447
+ },
1448
+ ],
1449
+ },
1450
+ ],
1451
+ },
1452
+ {
1453
+ name: "tokens",
1454
+ internalType: "struct TokenData[]",
1455
+ type: "tuple[]",
1456
+ components: [
1457
+ { name: "addr", internalType: "address", type: "address" },
1458
+ { name: "symbol", internalType: "string", type: "string" },
1459
+ { name: "name", internalType: "string", type: "string" },
1460
+ { name: "decimals", internalType: "uint8", type: "uint8" },
1461
+ ],
1462
+ },
1463
+ {
1464
+ name: "creditManagers",
1465
+ internalType: "struct CreditSuiteData[]",
1466
+ type: "tuple[]",
1467
+ components: [
1468
+ {
1469
+ name: "creditFacade",
1470
+ internalType: "struct CreditFacadeState",
1471
+ type: "tuple",
1472
+ components: [
1473
+ {
1474
+ name: "baseParams",
1475
+ internalType: "struct BaseParams",
1476
+ type: "tuple",
1477
+ components: [
1478
+ {
1479
+ name: "addr",
1480
+ internalType: "address",
1481
+ type: "address",
1482
+ },
1483
+ {
1484
+ name: "version",
1485
+ internalType: "uint256",
1486
+ type: "uint256",
1487
+ },
1488
+ {
1489
+ name: "contractType",
1490
+ internalType: "bytes32",
1491
+ type: "bytes32",
1492
+ },
1493
+ {
1494
+ name: "serializedParams",
1495
+ internalType: "bytes",
1496
+ type: "bytes",
1497
+ },
1498
+ ],
1499
+ },
1500
+ {
1501
+ name: "creditManager",
1502
+ internalType: "address",
1503
+ type: "address",
1504
+ },
1505
+ {
1506
+ name: "degenNFT",
1507
+ internalType: "address",
1508
+ type: "address",
1509
+ },
1510
+ { name: "botList", internalType: "address", type: "address" },
1511
+ { name: "expirable", internalType: "bool", type: "bool" },
1512
+ {
1513
+ name: "expirationDate",
1514
+ internalType: "uint40",
1515
+ type: "uint40",
1516
+ },
1517
+ {
1518
+ name: "maxDebtPerBlockMultiplier",
1519
+ internalType: "uint8",
1520
+ type: "uint8",
1521
+ },
1522
+ { name: "minDebt", internalType: "uint256", type: "uint256" },
1523
+ { name: "maxDebt", internalType: "uint256", type: "uint256" },
1524
+ {
1525
+ name: "forbiddenTokenMask",
1526
+ internalType: "uint256",
1527
+ type: "uint256",
1528
+ },
1529
+ { name: "isPaused", internalType: "bool", type: "bool" },
1530
+ ],
1531
+ },
1532
+ {
1533
+ name: "creditManager",
1534
+ internalType: "struct CreditManagerState",
1535
+ type: "tuple",
1536
+ components: [
1537
+ {
1538
+ name: "baseParams",
1539
+ internalType: "struct BaseParams",
1540
+ type: "tuple",
1541
+ components: [
1542
+ {
1543
+ name: "addr",
1544
+ internalType: "address",
1545
+ type: "address",
1546
+ },
1547
+ {
1548
+ name: "version",
1549
+ internalType: "uint256",
1550
+ type: "uint256",
1551
+ },
1552
+ {
1553
+ name: "contractType",
1554
+ internalType: "bytes32",
1555
+ type: "bytes32",
1556
+ },
1557
+ {
1558
+ name: "serializedParams",
1559
+ internalType: "bytes",
1560
+ type: "bytes",
1561
+ },
1562
+ ],
1563
+ },
1564
+ { name: "name", internalType: "string", type: "string" },
1565
+ {
1566
+ name: "accountFactory",
1567
+ internalType: "address",
1568
+ type: "address",
1569
+ },
1570
+ {
1571
+ name: "underlying",
1572
+ internalType: "address",
1573
+ type: "address",
1574
+ },
1575
+ { name: "pool", internalType: "address", type: "address" },
1576
+ {
1577
+ name: "creditFacade",
1578
+ internalType: "address",
1579
+ type: "address",
1580
+ },
1581
+ {
1582
+ name: "creditConfigurator",
1583
+ internalType: "address",
1584
+ type: "address",
1585
+ },
1586
+ {
1587
+ name: "maxEnabledTokens",
1588
+ internalType: "uint8",
1589
+ type: "uint8",
1590
+ },
1591
+ {
1592
+ name: "collateralTokens",
1593
+ internalType: "struct CollateralToken[]",
1594
+ type: "tuple[]",
1595
+ components: [
1596
+ {
1597
+ name: "token",
1598
+ internalType: "address",
1599
+ type: "address",
1600
+ },
1601
+ {
1602
+ name: "liquidationThreshold",
1603
+ internalType: "uint16",
1604
+ type: "uint16",
1605
+ },
1606
+ ],
1607
+ },
1608
+ {
1609
+ name: "feeInterest",
1610
+ internalType: "uint16",
1611
+ type: "uint16",
1612
+ },
1613
+ {
1614
+ name: "feeLiquidation",
1615
+ internalType: "uint16",
1616
+ type: "uint16",
1617
+ },
1618
+ {
1619
+ name: "liquidationDiscount",
1620
+ internalType: "uint16",
1621
+ type: "uint16",
1622
+ },
1623
+ {
1624
+ name: "feeLiquidationExpired",
1625
+ internalType: "uint16",
1626
+ type: "uint16",
1627
+ },
1628
+ {
1629
+ name: "liquidationDiscountExpired",
1630
+ internalType: "uint16",
1631
+ type: "uint16",
1632
+ },
1633
+ ],
1634
+ },
1635
+ {
1636
+ name: "creditConfigurator",
1637
+ internalType: "struct BaseState",
1638
+ type: "tuple",
1639
+ components: [
1640
+ {
1641
+ name: "baseParams",
1642
+ internalType: "struct BaseParams",
1643
+ type: "tuple",
1644
+ components: [
1645
+ {
1646
+ name: "addr",
1647
+ internalType: "address",
1648
+ type: "address",
1649
+ },
1650
+ {
1651
+ name: "version",
1652
+ internalType: "uint256",
1653
+ type: "uint256",
1654
+ },
1655
+ {
1656
+ name: "contractType",
1657
+ internalType: "bytes32",
1658
+ type: "bytes32",
1659
+ },
1660
+ {
1661
+ name: "serializedParams",
1662
+ internalType: "bytes",
1663
+ type: "bytes",
1664
+ },
1665
+ ],
1666
+ },
1667
+ ],
1668
+ },
1669
+ {
1670
+ name: "adapters",
1671
+ internalType: "struct AdapterState[]",
1672
+ type: "tuple[]",
1673
+ components: [
1674
+ {
1675
+ name: "baseParams",
1676
+ internalType: "struct BaseParams",
1677
+ type: "tuple",
1678
+ components: [
1679
+ {
1680
+ name: "addr",
1681
+ internalType: "address",
1682
+ type: "address",
1683
+ },
1684
+ {
1685
+ name: "version",
1686
+ internalType: "uint256",
1687
+ type: "uint256",
1688
+ },
1689
+ {
1690
+ name: "contractType",
1691
+ internalType: "bytes32",
1692
+ type: "bytes32",
1693
+ },
1694
+ {
1695
+ name: "serializedParams",
1696
+ internalType: "bytes",
1697
+ type: "bytes",
1698
+ },
1699
+ ],
1700
+ },
1701
+ {
1702
+ name: "targetContract",
1703
+ internalType: "address",
1704
+ type: "address",
1705
+ },
1706
+ ],
1707
+ },
1708
+ ],
1709
+ },
1710
+ { name: "configurator", internalType: "address", type: "address" },
1711
+ {
1712
+ name: "pausableAdmins",
1713
+ internalType: "address[]",
1714
+ type: "address[]",
1715
+ },
1716
+ {
1717
+ name: "unpausableAdmins",
1718
+ internalType: "address[]",
1719
+ type: "address[]",
1720
+ },
1721
+ {
1722
+ name: "emergencyLiquidators",
1723
+ internalType: "address[]",
1724
+ type: "address[]",
1725
+ },
1726
+ ],
1727
+ },
1728
+ ],
1729
+ stateMutability: "view",
1730
+ },
1731
+ {
1732
+ type: "function",
1733
+ inputs: [{ name: "pool", internalType: "address", type: "address" }],
1734
+ name: "getMarketData",
1735
+ outputs: [
1736
+ {
1737
+ name: "result",
1738
+ internalType: "struct MarketData",
1739
+ type: "tuple",
1740
+ components: [
1741
+ { name: "acl", internalType: "address", type: "address" },
1742
+ {
1743
+ name: "contractsRegister",
1744
+ internalType: "address",
1745
+ type: "address",
1746
+ },
1747
+ { name: "treasury", internalType: "address", type: "address" },
1748
+ {
1749
+ name: "pool",
1750
+ internalType: "struct PoolState",
1751
+ type: "tuple",
1752
+ components: [
1753
+ {
1754
+ name: "baseParams",
1755
+ internalType: "struct BaseParams",
1756
+ type: "tuple",
1757
+ components: [
1758
+ { name: "addr", internalType: "address", type: "address" },
1759
+ { name: "version", internalType: "uint256", type: "uint256" },
1760
+ {
1761
+ name: "contractType",
1762
+ internalType: "bytes32",
1763
+ type: "bytes32",
1764
+ },
1765
+ {
1766
+ name: "serializedParams",
1767
+ internalType: "bytes",
1768
+ type: "bytes",
1769
+ },
1770
+ ],
1771
+ },
1772
+ { name: "symbol", internalType: "string", type: "string" },
1773
+ { name: "name", internalType: "string", type: "string" },
1774
+ { name: "decimals", internalType: "uint8", type: "uint8" },
1775
+ { name: "totalSupply", internalType: "uint256", type: "uint256" },
1776
+ {
1777
+ name: "poolQuotaKeeper",
1778
+ internalType: "address",
1779
+ type: "address",
1780
+ },
1781
+ {
1782
+ name: "interestRateModel",
1783
+ internalType: "address",
1784
+ type: "address",
1785
+ },
1786
+ { name: "underlying", internalType: "address", type: "address" },
1787
+ {
1788
+ name: "availableLiquidity",
1789
+ internalType: "uint256",
1790
+ type: "uint256",
1791
+ },
1792
+ {
1793
+ name: "expectedLiquidity",
1794
+ internalType: "uint256",
1795
+ type: "uint256",
1796
+ },
1797
+ {
1798
+ name: "baseInterestIndex",
1799
+ internalType: "uint256",
1800
+ type: "uint256",
1801
+ },
1802
+ {
1803
+ name: "baseInterestRate",
1804
+ internalType: "uint256",
1805
+ type: "uint256",
1806
+ },
1807
+ { name: "dieselRate", internalType: "uint256", type: "uint256" },
1808
+ { name: "supplyRate", internalType: "uint256", type: "uint256" },
1809
+ { name: "withdrawFee", internalType: "uint256", type: "uint256" },
1810
+ {
1811
+ name: "totalBorrowed",
1812
+ internalType: "uint256",
1813
+ type: "uint256",
1814
+ },
1815
+ {
1816
+ name: "totalDebtLimit",
1817
+ internalType: "uint256",
1818
+ type: "uint256",
1819
+ },
1820
+ {
1821
+ name: "creditManagerDebtParams",
1822
+ internalType: "struct CreditManagerDebtParams[]",
1823
+ type: "tuple[]",
1824
+ components: [
1825
+ {
1826
+ name: "creditManager",
1827
+ internalType: "address",
1828
+ type: "address",
1829
+ },
1830
+ {
1831
+ name: "borrowed",
1832
+ internalType: "uint256",
1833
+ type: "uint256",
1834
+ },
1835
+ { name: "limit", internalType: "uint256", type: "uint256" },
1836
+ {
1837
+ name: "available",
1838
+ internalType: "uint256",
1839
+ type: "uint256",
1840
+ },
1841
+ ],
1842
+ },
1843
+ {
1844
+ name: "baseInterestIndexLU",
1845
+ internalType: "uint256",
1846
+ type: "uint256",
1847
+ },
1848
+ {
1849
+ name: "expectedLiquidityLU",
1850
+ internalType: "uint256",
1851
+ type: "uint256",
1852
+ },
1853
+ {
1854
+ name: "quotaRevenue",
1855
+ internalType: "uint256",
1856
+ type: "uint256",
1857
+ },
1858
+ {
1859
+ name: "lastBaseInterestUpdate",
1860
+ internalType: "uint40",
1861
+ type: "uint40",
1862
+ },
1863
+ {
1864
+ name: "lastQuotaRevenueUpdate",
1865
+ internalType: "uint40",
1866
+ type: "uint40",
1867
+ },
1868
+ { name: "isPaused", internalType: "bool", type: "bool" },
1869
+ ],
1870
+ },
1871
+ {
1872
+ name: "poolQuotaKeeper",
1873
+ internalType: "struct PoolQuotaKeeperState",
1874
+ type: "tuple",
1875
+ components: [
1876
+ {
1877
+ name: "baseParams",
1878
+ internalType: "struct BaseParams",
1879
+ type: "tuple",
1880
+ components: [
1881
+ { name: "addr", internalType: "address", type: "address" },
1882
+ { name: "version", internalType: "uint256", type: "uint256" },
1883
+ {
1884
+ name: "contractType",
1885
+ internalType: "bytes32",
1886
+ type: "bytes32",
1887
+ },
1888
+ {
1889
+ name: "serializedParams",
1890
+ internalType: "bytes",
1891
+ type: "bytes",
1892
+ },
1893
+ ],
1894
+ },
1895
+ { name: "rateKeeper", internalType: "address", type: "address" },
1896
+ {
1897
+ name: "quotas",
1898
+ internalType: "struct QuotaTokenParams[]",
1899
+ type: "tuple[]",
1900
+ components: [
1901
+ { name: "token", internalType: "address", type: "address" },
1902
+ { name: "rate", internalType: "uint16", type: "uint16" },
1903
+ {
1904
+ name: "cumulativeIndexLU",
1905
+ internalType: "uint192",
1906
+ type: "uint192",
1907
+ },
1908
+ {
1909
+ name: "quotaIncreaseFee",
1910
+ internalType: "uint16",
1911
+ type: "uint16",
1912
+ },
1913
+ {
1914
+ name: "totalQuoted",
1915
+ internalType: "uint96",
1916
+ type: "uint96",
1917
+ },
1918
+ { name: "limit", internalType: "uint96", type: "uint96" },
1919
+ { name: "isActive", internalType: "bool", type: "bool" },
1920
+ ],
1921
+ },
1922
+ {
1923
+ name: "creditManagers",
1924
+ internalType: "address[]",
1925
+ type: "address[]",
1926
+ },
1927
+ {
1928
+ name: "lastQuotaRateUpdate",
1929
+ internalType: "uint40",
1930
+ type: "uint40",
1931
+ },
1932
+ ],
1933
+ },
1934
+ {
1935
+ name: "interestRateModel",
1936
+ internalType: "struct BaseState",
1937
+ type: "tuple",
1938
+ components: [
1939
+ {
1940
+ name: "baseParams",
1941
+ internalType: "struct BaseParams",
1942
+ type: "tuple",
1943
+ components: [
1944
+ { name: "addr", internalType: "address", type: "address" },
1945
+ { name: "version", internalType: "uint256", type: "uint256" },
1946
+ {
1947
+ name: "contractType",
1948
+ internalType: "bytes32",
1949
+ type: "bytes32",
1950
+ },
1951
+ {
1952
+ name: "serializedParams",
1953
+ internalType: "bytes",
1954
+ type: "bytes",
1955
+ },
1956
+ ],
1957
+ },
1958
+ ],
1959
+ },
1960
+ {
1961
+ name: "rateKeeper",
1962
+ internalType: "struct RateKeeperState",
1963
+ type: "tuple",
1964
+ components: [
1965
+ {
1966
+ name: "baseParams",
1967
+ internalType: "struct BaseParams",
1968
+ type: "tuple",
1969
+ components: [
1970
+ { name: "addr", internalType: "address", type: "address" },
1971
+ { name: "version", internalType: "uint256", type: "uint256" },
1972
+ {
1973
+ name: "contractType",
1974
+ internalType: "bytes32",
1975
+ type: "bytes32",
1976
+ },
1977
+ {
1978
+ name: "serializedParams",
1979
+ internalType: "bytes",
1980
+ type: "bytes",
1981
+ },
1982
+ ],
1983
+ },
1984
+ {
1985
+ name: "rates",
1986
+ internalType: "struct Rate[]",
1987
+ type: "tuple[]",
1988
+ components: [
1989
+ { name: "token", internalType: "address", type: "address" },
1990
+ { name: "rate", internalType: "uint16", type: "uint16" },
1991
+ ],
1992
+ },
1993
+ ],
1994
+ },
1995
+ {
1996
+ name: "priceOracleData",
1997
+ internalType: "struct PriceOracleState",
1998
+ type: "tuple",
1999
+ components: [
2000
+ {
2001
+ name: "baseParams",
2002
+ internalType: "struct BaseParams",
2003
+ type: "tuple",
2004
+ components: [
2005
+ { name: "addr", internalType: "address", type: "address" },
2006
+ { name: "version", internalType: "uint256", type: "uint256" },
2007
+ {
2008
+ name: "contractType",
2009
+ internalType: "bytes32",
2010
+ type: "bytes32",
2011
+ },
2012
+ {
2013
+ name: "serializedParams",
2014
+ internalType: "bytes",
2015
+ type: "bytes",
2016
+ },
2017
+ ],
2018
+ },
2019
+ {
2020
+ name: "priceFeedMapping",
2021
+ internalType: "struct PriceFeedMapEntry[]",
2022
+ type: "tuple[]",
2023
+ components: [
2024
+ { name: "token", internalType: "address", type: "address" },
2025
+ { name: "reserve", internalType: "bool", type: "bool" },
2026
+ {
2027
+ name: "priceFeed",
2028
+ internalType: "address",
2029
+ type: "address",
2030
+ },
2031
+ {
2032
+ name: "stalenessPeriod",
2033
+ internalType: "uint32",
2034
+ type: "uint32",
2035
+ },
2036
+ ],
2037
+ },
2038
+ {
2039
+ name: "priceFeedStructure",
2040
+ internalType: "struct PriceFeedTreeNode[]",
2041
+ type: "tuple[]",
2042
+ components: [
2043
+ {
2044
+ name: "baseParams",
2045
+ internalType: "struct BaseParams",
2046
+ type: "tuple",
2047
+ components: [
2048
+ {
2049
+ name: "addr",
2050
+ internalType: "address",
2051
+ type: "address",
2052
+ },
2053
+ {
2054
+ name: "version",
2055
+ internalType: "uint256",
2056
+ type: "uint256",
2057
+ },
2058
+ {
2059
+ name: "contractType",
2060
+ internalType: "bytes32",
2061
+ type: "bytes32",
2062
+ },
2063
+ {
2064
+ name: "serializedParams",
2065
+ internalType: "bytes",
2066
+ type: "bytes",
2067
+ },
2068
+ ],
2069
+ },
2070
+ {
2071
+ name: "description",
2072
+ internalType: "string",
2073
+ type: "string",
2074
+ },
2075
+ { name: "decimals", internalType: "uint8", type: "uint8" },
2076
+ { name: "skipCheck", internalType: "bool", type: "bool" },
2077
+ { name: "updatable", internalType: "bool", type: "bool" },
2078
+ {
2079
+ name: "underlyingFeeds",
2080
+ internalType: "address[]",
2081
+ type: "address[]",
2082
+ },
2083
+ {
2084
+ name: "underlyingStalenessPeriods",
2085
+ internalType: "uint32[]",
2086
+ type: "uint32[]",
2087
+ },
2088
+ {
2089
+ name: "answer",
2090
+ internalType: "struct PriceFeedAnswer",
2091
+ type: "tuple",
2092
+ components: [
2093
+ { name: "price", internalType: "int256", type: "int256" },
2094
+ {
2095
+ name: "updatedAt",
2096
+ internalType: "uint256",
2097
+ type: "uint256",
2098
+ },
2099
+ { name: "success", internalType: "bool", type: "bool" },
2100
+ ],
2101
+ },
2102
+ ],
2103
+ },
2104
+ ],
2105
+ },
2106
+ {
2107
+ name: "lossPolicy",
2108
+ internalType: "struct BaseState",
2109
+ type: "tuple",
2110
+ components: [
2111
+ {
2112
+ name: "baseParams",
2113
+ internalType: "struct BaseParams",
2114
+ type: "tuple",
2115
+ components: [
2116
+ { name: "addr", internalType: "address", type: "address" },
2117
+ { name: "version", internalType: "uint256", type: "uint256" },
2118
+ {
2119
+ name: "contractType",
2120
+ internalType: "bytes32",
2121
+ type: "bytes32",
2122
+ },
2123
+ {
2124
+ name: "serializedParams",
2125
+ internalType: "bytes",
2126
+ type: "bytes",
2127
+ },
2128
+ ],
2129
+ },
2130
+ ],
2131
+ },
2132
+ {
2133
+ name: "tokens",
2134
+ internalType: "struct TokenData[]",
2135
+ type: "tuple[]",
2136
+ components: [
2137
+ { name: "addr", internalType: "address", type: "address" },
2138
+ { name: "symbol", internalType: "string", type: "string" },
2139
+ { name: "name", internalType: "string", type: "string" },
2140
+ { name: "decimals", internalType: "uint8", type: "uint8" },
2141
+ ],
2142
+ },
2143
+ {
2144
+ name: "creditManagers",
2145
+ internalType: "struct CreditSuiteData[]",
2146
+ type: "tuple[]",
2147
+ components: [
2148
+ {
2149
+ name: "creditFacade",
2150
+ internalType: "struct CreditFacadeState",
2151
+ type: "tuple",
2152
+ components: [
2153
+ {
2154
+ name: "baseParams",
2155
+ internalType: "struct BaseParams",
2156
+ type: "tuple",
2157
+ components: [
2158
+ {
2159
+ name: "addr",
2160
+ internalType: "address",
2161
+ type: "address",
2162
+ },
2163
+ {
2164
+ name: "version",
2165
+ internalType: "uint256",
2166
+ type: "uint256",
2167
+ },
2168
+ {
2169
+ name: "contractType",
2170
+ internalType: "bytes32",
2171
+ type: "bytes32",
2172
+ },
2173
+ {
2174
+ name: "serializedParams",
2175
+ internalType: "bytes",
2176
+ type: "bytes",
2177
+ },
2178
+ ],
2179
+ },
2180
+ {
2181
+ name: "creditManager",
2182
+ internalType: "address",
2183
+ type: "address",
2184
+ },
2185
+ {
2186
+ name: "degenNFT",
2187
+ internalType: "address",
2188
+ type: "address",
2189
+ },
2190
+ { name: "botList", internalType: "address", type: "address" },
2191
+ { name: "expirable", internalType: "bool", type: "bool" },
2192
+ {
2193
+ name: "expirationDate",
2194
+ internalType: "uint40",
2195
+ type: "uint40",
2196
+ },
2197
+ {
2198
+ name: "maxDebtPerBlockMultiplier",
2199
+ internalType: "uint8",
2200
+ type: "uint8",
2201
+ },
2202
+ { name: "minDebt", internalType: "uint256", type: "uint256" },
2203
+ { name: "maxDebt", internalType: "uint256", type: "uint256" },
2204
+ {
2205
+ name: "forbiddenTokenMask",
2206
+ internalType: "uint256",
2207
+ type: "uint256",
2208
+ },
2209
+ { name: "isPaused", internalType: "bool", type: "bool" },
2210
+ ],
2211
+ },
2212
+ {
2213
+ name: "creditManager",
2214
+ internalType: "struct CreditManagerState",
2215
+ type: "tuple",
2216
+ components: [
2217
+ {
2218
+ name: "baseParams",
2219
+ internalType: "struct BaseParams",
2220
+ type: "tuple",
2221
+ components: [
2222
+ {
2223
+ name: "addr",
2224
+ internalType: "address",
2225
+ type: "address",
2226
+ },
2227
+ {
2228
+ name: "version",
2229
+ internalType: "uint256",
2230
+ type: "uint256",
2231
+ },
2232
+ {
2233
+ name: "contractType",
2234
+ internalType: "bytes32",
2235
+ type: "bytes32",
2236
+ },
2237
+ {
2238
+ name: "serializedParams",
2239
+ internalType: "bytes",
2240
+ type: "bytes",
2241
+ },
2242
+ ],
2243
+ },
2244
+ { name: "name", internalType: "string", type: "string" },
2245
+ {
2246
+ name: "accountFactory",
2247
+ internalType: "address",
2248
+ type: "address",
2249
+ },
2250
+ {
2251
+ name: "underlying",
2252
+ internalType: "address",
2253
+ type: "address",
2254
+ },
2255
+ { name: "pool", internalType: "address", type: "address" },
2256
+ {
2257
+ name: "creditFacade",
2258
+ internalType: "address",
2259
+ type: "address",
2260
+ },
2261
+ {
2262
+ name: "creditConfigurator",
2263
+ internalType: "address",
2264
+ type: "address",
2265
+ },
2266
+ {
2267
+ name: "maxEnabledTokens",
2268
+ internalType: "uint8",
2269
+ type: "uint8",
2270
+ },
2271
+ {
2272
+ name: "collateralTokens",
2273
+ internalType: "struct CollateralToken[]",
2274
+ type: "tuple[]",
2275
+ components: [
2276
+ {
2277
+ name: "token",
2278
+ internalType: "address",
2279
+ type: "address",
2280
+ },
2281
+ {
2282
+ name: "liquidationThreshold",
2283
+ internalType: "uint16",
2284
+ type: "uint16",
2285
+ },
2286
+ ],
2287
+ },
2288
+ {
2289
+ name: "feeInterest",
2290
+ internalType: "uint16",
2291
+ type: "uint16",
2292
+ },
2293
+ {
2294
+ name: "feeLiquidation",
2295
+ internalType: "uint16",
2296
+ type: "uint16",
2297
+ },
2298
+ {
2299
+ name: "liquidationDiscount",
2300
+ internalType: "uint16",
2301
+ type: "uint16",
2302
+ },
2303
+ {
2304
+ name: "feeLiquidationExpired",
2305
+ internalType: "uint16",
2306
+ type: "uint16",
2307
+ },
2308
+ {
2309
+ name: "liquidationDiscountExpired",
2310
+ internalType: "uint16",
2311
+ type: "uint16",
2312
+ },
2313
+ ],
2314
+ },
2315
+ {
2316
+ name: "creditConfigurator",
2317
+ internalType: "struct BaseState",
2318
+ type: "tuple",
2319
+ components: [
2320
+ {
2321
+ name: "baseParams",
2322
+ internalType: "struct BaseParams",
2323
+ type: "tuple",
2324
+ components: [
2325
+ {
2326
+ name: "addr",
2327
+ internalType: "address",
2328
+ type: "address",
2329
+ },
2330
+ {
2331
+ name: "version",
2332
+ internalType: "uint256",
2333
+ type: "uint256",
2334
+ },
2335
+ {
2336
+ name: "contractType",
2337
+ internalType: "bytes32",
2338
+ type: "bytes32",
2339
+ },
2340
+ {
2341
+ name: "serializedParams",
2342
+ internalType: "bytes",
2343
+ type: "bytes",
2344
+ },
2345
+ ],
2346
+ },
2347
+ ],
2348
+ },
2349
+ {
2350
+ name: "adapters",
2351
+ internalType: "struct AdapterState[]",
2352
+ type: "tuple[]",
2353
+ components: [
2354
+ {
2355
+ name: "baseParams",
2356
+ internalType: "struct BaseParams",
2357
+ type: "tuple",
2358
+ components: [
2359
+ {
2360
+ name: "addr",
2361
+ internalType: "address",
2362
+ type: "address",
2363
+ },
2364
+ {
2365
+ name: "version",
2366
+ internalType: "uint256",
2367
+ type: "uint256",
2368
+ },
2369
+ {
2370
+ name: "contractType",
2371
+ internalType: "bytes32",
2372
+ type: "bytes32",
2373
+ },
2374
+ {
2375
+ name: "serializedParams",
2376
+ internalType: "bytes",
2377
+ type: "bytes",
2378
+ },
2379
+ ],
2380
+ },
2381
+ {
2382
+ name: "targetContract",
2383
+ internalType: "address",
2384
+ type: "address",
2385
+ },
2386
+ ],
2387
+ },
2388
+ ],
2389
+ },
2390
+ { name: "configurator", internalType: "address", type: "address" },
2391
+ {
2392
+ name: "pausableAdmins",
2393
+ internalType: "address[]",
2394
+ type: "address[]",
2395
+ },
2396
+ {
2397
+ name: "unpausableAdmins",
2398
+ internalType: "address[]",
2399
+ type: "address[]",
2400
+ },
2401
+ {
2402
+ name: "emergencyLiquidators",
2403
+ internalType: "address[]",
2404
+ type: "address[]",
2405
+ },
2406
+ ],
2407
+ },
2408
+ ],
2409
+ stateMutability: "view",
2410
+ },
2411
+ {
2412
+ type: "function",
2413
+ inputs: [
2414
+ {
2415
+ name: "filter",
2416
+ internalType: "struct MarketFilter",
2417
+ type: "tuple",
2418
+ components: [
2419
+ {
2420
+ name: "configurators",
2421
+ internalType: "address[]",
2422
+ type: "address[]",
2423
+ },
2424
+ { name: "pools", internalType: "address[]", type: "address[]" },
2425
+ { name: "underlying", internalType: "address", type: "address" },
2426
+ ],
2427
+ },
2428
+ ],
2429
+ name: "getMarkets",
2430
+ outputs: [
2431
+ {
2432
+ name: "result",
2433
+ internalType: "struct MarketData[]",
2434
+ type: "tuple[]",
2435
+ components: [
2436
+ { name: "acl", internalType: "address", type: "address" },
2437
+ {
2438
+ name: "contractsRegister",
2439
+ internalType: "address",
2440
+ type: "address",
2441
+ },
2442
+ { name: "treasury", internalType: "address", type: "address" },
2443
+ {
2444
+ name: "pool",
2445
+ internalType: "struct PoolState",
2446
+ type: "tuple",
2447
+ components: [
2448
+ {
2449
+ name: "baseParams",
2450
+ internalType: "struct BaseParams",
2451
+ type: "tuple",
2452
+ components: [
2453
+ { name: "addr", internalType: "address", type: "address" },
2454
+ { name: "version", internalType: "uint256", type: "uint256" },
2455
+ {
2456
+ name: "contractType",
2457
+ internalType: "bytes32",
2458
+ type: "bytes32",
2459
+ },
2460
+ {
2461
+ name: "serializedParams",
2462
+ internalType: "bytes",
2463
+ type: "bytes",
2464
+ },
2465
+ ],
2466
+ },
2467
+ { name: "symbol", internalType: "string", type: "string" },
2468
+ { name: "name", internalType: "string", type: "string" },
2469
+ { name: "decimals", internalType: "uint8", type: "uint8" },
2470
+ { name: "totalSupply", internalType: "uint256", type: "uint256" },
2471
+ {
2472
+ name: "poolQuotaKeeper",
2473
+ internalType: "address",
2474
+ type: "address",
2475
+ },
2476
+ {
2477
+ name: "interestRateModel",
2478
+ internalType: "address",
2479
+ type: "address",
2480
+ },
2481
+ { name: "underlying", internalType: "address", type: "address" },
2482
+ {
2483
+ name: "availableLiquidity",
2484
+ internalType: "uint256",
2485
+ type: "uint256",
2486
+ },
2487
+ {
2488
+ name: "expectedLiquidity",
2489
+ internalType: "uint256",
2490
+ type: "uint256",
2491
+ },
2492
+ {
2493
+ name: "baseInterestIndex",
2494
+ internalType: "uint256",
2495
+ type: "uint256",
2496
+ },
2497
+ {
2498
+ name: "baseInterestRate",
2499
+ internalType: "uint256",
2500
+ type: "uint256",
2501
+ },
2502
+ { name: "dieselRate", internalType: "uint256", type: "uint256" },
2503
+ { name: "supplyRate", internalType: "uint256", type: "uint256" },
2504
+ { name: "withdrawFee", internalType: "uint256", type: "uint256" },
2505
+ {
2506
+ name: "totalBorrowed",
2507
+ internalType: "uint256",
2508
+ type: "uint256",
2509
+ },
2510
+ {
2511
+ name: "totalDebtLimit",
2512
+ internalType: "uint256",
2513
+ type: "uint256",
2514
+ },
2515
+ {
2516
+ name: "creditManagerDebtParams",
2517
+ internalType: "struct CreditManagerDebtParams[]",
2518
+ type: "tuple[]",
2519
+ components: [
2520
+ {
2521
+ name: "creditManager",
2522
+ internalType: "address",
2523
+ type: "address",
2524
+ },
2525
+ {
2526
+ name: "borrowed",
2527
+ internalType: "uint256",
2528
+ type: "uint256",
2529
+ },
2530
+ { name: "limit", internalType: "uint256", type: "uint256" },
2531
+ {
2532
+ name: "available",
2533
+ internalType: "uint256",
2534
+ type: "uint256",
2535
+ },
2536
+ ],
2537
+ },
2538
+ {
2539
+ name: "baseInterestIndexLU",
2540
+ internalType: "uint256",
2541
+ type: "uint256",
2542
+ },
2543
+ {
2544
+ name: "expectedLiquidityLU",
2545
+ internalType: "uint256",
2546
+ type: "uint256",
2547
+ },
2548
+ {
2549
+ name: "quotaRevenue",
2550
+ internalType: "uint256",
2551
+ type: "uint256",
2552
+ },
2553
+ {
2554
+ name: "lastBaseInterestUpdate",
2555
+ internalType: "uint40",
2556
+ type: "uint40",
2557
+ },
2558
+ {
2559
+ name: "lastQuotaRevenueUpdate",
2560
+ internalType: "uint40",
2561
+ type: "uint40",
2562
+ },
2563
+ { name: "isPaused", internalType: "bool", type: "bool" },
2564
+ ],
2565
+ },
2566
+ {
2567
+ name: "poolQuotaKeeper",
2568
+ internalType: "struct PoolQuotaKeeperState",
2569
+ type: "tuple",
2570
+ components: [
2571
+ {
2572
+ name: "baseParams",
2573
+ internalType: "struct BaseParams",
2574
+ type: "tuple",
2575
+ components: [
2576
+ { name: "addr", internalType: "address", type: "address" },
2577
+ { name: "version", internalType: "uint256", type: "uint256" },
2578
+ {
2579
+ name: "contractType",
2580
+ internalType: "bytes32",
2581
+ type: "bytes32",
2582
+ },
2583
+ {
2584
+ name: "serializedParams",
2585
+ internalType: "bytes",
2586
+ type: "bytes",
2587
+ },
2588
+ ],
2589
+ },
2590
+ { name: "rateKeeper", internalType: "address", type: "address" },
2591
+ {
2592
+ name: "quotas",
2593
+ internalType: "struct QuotaTokenParams[]",
2594
+ type: "tuple[]",
2595
+ components: [
2596
+ { name: "token", internalType: "address", type: "address" },
2597
+ { name: "rate", internalType: "uint16", type: "uint16" },
2598
+ {
2599
+ name: "cumulativeIndexLU",
2600
+ internalType: "uint192",
2601
+ type: "uint192",
2602
+ },
2603
+ {
2604
+ name: "quotaIncreaseFee",
2605
+ internalType: "uint16",
2606
+ type: "uint16",
2607
+ },
2608
+ {
2609
+ name: "totalQuoted",
2610
+ internalType: "uint96",
2611
+ type: "uint96",
2612
+ },
2613
+ { name: "limit", internalType: "uint96", type: "uint96" },
2614
+ { name: "isActive", internalType: "bool", type: "bool" },
2615
+ ],
2616
+ },
2617
+ {
2618
+ name: "creditManagers",
2619
+ internalType: "address[]",
2620
+ type: "address[]",
2621
+ },
2622
+ {
2623
+ name: "lastQuotaRateUpdate",
2624
+ internalType: "uint40",
2625
+ type: "uint40",
2626
+ },
2627
+ ],
2628
+ },
2629
+ {
2630
+ name: "interestRateModel",
2631
+ internalType: "struct BaseState",
2632
+ type: "tuple",
2633
+ components: [
2634
+ {
2635
+ name: "baseParams",
2636
+ internalType: "struct BaseParams",
2637
+ type: "tuple",
2638
+ components: [
2639
+ { name: "addr", internalType: "address", type: "address" },
2640
+ { name: "version", internalType: "uint256", type: "uint256" },
2641
+ {
2642
+ name: "contractType",
2643
+ internalType: "bytes32",
2644
+ type: "bytes32",
2645
+ },
2646
+ {
2647
+ name: "serializedParams",
2648
+ internalType: "bytes",
2649
+ type: "bytes",
2650
+ },
2651
+ ],
2652
+ },
2653
+ ],
2654
+ },
2655
+ {
2656
+ name: "rateKeeper",
2657
+ internalType: "struct RateKeeperState",
2658
+ type: "tuple",
2659
+ components: [
2660
+ {
2661
+ name: "baseParams",
2662
+ internalType: "struct BaseParams",
2663
+ type: "tuple",
2664
+ components: [
2665
+ { name: "addr", internalType: "address", type: "address" },
2666
+ { name: "version", internalType: "uint256", type: "uint256" },
2667
+ {
2668
+ name: "contractType",
2669
+ internalType: "bytes32",
2670
+ type: "bytes32",
2671
+ },
2672
+ {
2673
+ name: "serializedParams",
2674
+ internalType: "bytes",
2675
+ type: "bytes",
2676
+ },
2677
+ ],
2678
+ },
2679
+ {
2680
+ name: "rates",
2681
+ internalType: "struct Rate[]",
2682
+ type: "tuple[]",
2683
+ components: [
2684
+ { name: "token", internalType: "address", type: "address" },
2685
+ { name: "rate", internalType: "uint16", type: "uint16" },
2686
+ ],
2687
+ },
2688
+ ],
2689
+ },
2690
+ {
2691
+ name: "priceOracleData",
2692
+ internalType: "struct PriceOracleState",
2693
+ type: "tuple",
2694
+ components: [
2695
+ {
2696
+ name: "baseParams",
2697
+ internalType: "struct BaseParams",
2698
+ type: "tuple",
2699
+ components: [
2700
+ { name: "addr", internalType: "address", type: "address" },
2701
+ { name: "version", internalType: "uint256", type: "uint256" },
2702
+ {
2703
+ name: "contractType",
2704
+ internalType: "bytes32",
2705
+ type: "bytes32",
2706
+ },
2707
+ {
2708
+ name: "serializedParams",
2709
+ internalType: "bytes",
2710
+ type: "bytes",
2711
+ },
2712
+ ],
2713
+ },
2714
+ {
2715
+ name: "priceFeedMapping",
2716
+ internalType: "struct PriceFeedMapEntry[]",
2717
+ type: "tuple[]",
2718
+ components: [
2719
+ { name: "token", internalType: "address", type: "address" },
2720
+ { name: "reserve", internalType: "bool", type: "bool" },
2721
+ {
2722
+ name: "priceFeed",
2723
+ internalType: "address",
2724
+ type: "address",
2725
+ },
2726
+ {
2727
+ name: "stalenessPeriod",
2728
+ internalType: "uint32",
2729
+ type: "uint32",
2730
+ },
2731
+ ],
2732
+ },
2733
+ {
2734
+ name: "priceFeedStructure",
2735
+ internalType: "struct PriceFeedTreeNode[]",
2736
+ type: "tuple[]",
2737
+ components: [
2738
+ {
2739
+ name: "baseParams",
2740
+ internalType: "struct BaseParams",
2741
+ type: "tuple",
2742
+ components: [
2743
+ {
2744
+ name: "addr",
2745
+ internalType: "address",
2746
+ type: "address",
2747
+ },
2748
+ {
2749
+ name: "version",
2750
+ internalType: "uint256",
2751
+ type: "uint256",
2752
+ },
2753
+ {
2754
+ name: "contractType",
2755
+ internalType: "bytes32",
2756
+ type: "bytes32",
2757
+ },
2758
+ {
2759
+ name: "serializedParams",
2760
+ internalType: "bytes",
2761
+ type: "bytes",
2762
+ },
2763
+ ],
2764
+ },
2765
+ {
2766
+ name: "description",
2767
+ internalType: "string",
2768
+ type: "string",
2769
+ },
2770
+ { name: "decimals", internalType: "uint8", type: "uint8" },
2771
+ { name: "skipCheck", internalType: "bool", type: "bool" },
2772
+ { name: "updatable", internalType: "bool", type: "bool" },
2773
+ {
2774
+ name: "underlyingFeeds",
2775
+ internalType: "address[]",
2776
+ type: "address[]",
2777
+ },
2778
+ {
2779
+ name: "underlyingStalenessPeriods",
2780
+ internalType: "uint32[]",
2781
+ type: "uint32[]",
2782
+ },
2783
+ {
2784
+ name: "answer",
2785
+ internalType: "struct PriceFeedAnswer",
2786
+ type: "tuple",
2787
+ components: [
2788
+ { name: "price", internalType: "int256", type: "int256" },
2789
+ {
2790
+ name: "updatedAt",
2791
+ internalType: "uint256",
2792
+ type: "uint256",
2793
+ },
2794
+ { name: "success", internalType: "bool", type: "bool" },
2795
+ ],
2796
+ },
2797
+ ],
2798
+ },
2799
+ ],
2800
+ },
2801
+ {
2802
+ name: "lossPolicy",
2803
+ internalType: "struct BaseState",
2804
+ type: "tuple",
2805
+ components: [
2806
+ {
2807
+ name: "baseParams",
2808
+ internalType: "struct BaseParams",
2809
+ type: "tuple",
2810
+ components: [
2811
+ { name: "addr", internalType: "address", type: "address" },
2812
+ { name: "version", internalType: "uint256", type: "uint256" },
2813
+ {
2814
+ name: "contractType",
2815
+ internalType: "bytes32",
2816
+ type: "bytes32",
2817
+ },
2818
+ {
2819
+ name: "serializedParams",
2820
+ internalType: "bytes",
2821
+ type: "bytes",
2822
+ },
2823
+ ],
2824
+ },
2825
+ ],
2826
+ },
2827
+ {
2828
+ name: "tokens",
2829
+ internalType: "struct TokenData[]",
2830
+ type: "tuple[]",
2831
+ components: [
2832
+ { name: "addr", internalType: "address", type: "address" },
2833
+ { name: "symbol", internalType: "string", type: "string" },
2834
+ { name: "name", internalType: "string", type: "string" },
2835
+ { name: "decimals", internalType: "uint8", type: "uint8" },
2836
+ ],
2837
+ },
2838
+ {
2839
+ name: "creditManagers",
2840
+ internalType: "struct CreditSuiteData[]",
2841
+ type: "tuple[]",
2842
+ components: [
2843
+ {
2844
+ name: "creditFacade",
2845
+ internalType: "struct CreditFacadeState",
2846
+ type: "tuple",
2847
+ components: [
2848
+ {
2849
+ name: "baseParams",
2850
+ internalType: "struct BaseParams",
2851
+ type: "tuple",
2852
+ components: [
2853
+ {
2854
+ name: "addr",
2855
+ internalType: "address",
2856
+ type: "address",
2857
+ },
2858
+ {
2859
+ name: "version",
2860
+ internalType: "uint256",
2861
+ type: "uint256",
2862
+ },
2863
+ {
2864
+ name: "contractType",
2865
+ internalType: "bytes32",
2866
+ type: "bytes32",
2867
+ },
2868
+ {
2869
+ name: "serializedParams",
2870
+ internalType: "bytes",
2871
+ type: "bytes",
2872
+ },
2873
+ ],
2874
+ },
2875
+ {
2876
+ name: "creditManager",
2877
+ internalType: "address",
2878
+ type: "address",
2879
+ },
2880
+ {
2881
+ name: "degenNFT",
2882
+ internalType: "address",
2883
+ type: "address",
2884
+ },
2885
+ { name: "botList", internalType: "address", type: "address" },
2886
+ { name: "expirable", internalType: "bool", type: "bool" },
2887
+ {
2888
+ name: "expirationDate",
2889
+ internalType: "uint40",
2890
+ type: "uint40",
2891
+ },
2892
+ {
2893
+ name: "maxDebtPerBlockMultiplier",
2894
+ internalType: "uint8",
2895
+ type: "uint8",
2896
+ },
2897
+ { name: "minDebt", internalType: "uint256", type: "uint256" },
2898
+ { name: "maxDebt", internalType: "uint256", type: "uint256" },
2899
+ {
2900
+ name: "forbiddenTokenMask",
2901
+ internalType: "uint256",
2902
+ type: "uint256",
2903
+ },
2904
+ { name: "isPaused", internalType: "bool", type: "bool" },
2905
+ ],
2906
+ },
2907
+ {
2908
+ name: "creditManager",
2909
+ internalType: "struct CreditManagerState",
2910
+ type: "tuple",
2911
+ components: [
2912
+ {
2913
+ name: "baseParams",
2914
+ internalType: "struct BaseParams",
2915
+ type: "tuple",
2916
+ components: [
2917
+ {
2918
+ name: "addr",
2919
+ internalType: "address",
2920
+ type: "address",
2921
+ },
2922
+ {
2923
+ name: "version",
2924
+ internalType: "uint256",
2925
+ type: "uint256",
2926
+ },
2927
+ {
2928
+ name: "contractType",
2929
+ internalType: "bytes32",
2930
+ type: "bytes32",
2931
+ },
2932
+ {
2933
+ name: "serializedParams",
2934
+ internalType: "bytes",
2935
+ type: "bytes",
2936
+ },
2937
+ ],
2938
+ },
2939
+ { name: "name", internalType: "string", type: "string" },
2940
+ {
2941
+ name: "accountFactory",
2942
+ internalType: "address",
2943
+ type: "address",
2944
+ },
2945
+ {
2946
+ name: "underlying",
2947
+ internalType: "address",
2948
+ type: "address",
2949
+ },
2950
+ { name: "pool", internalType: "address", type: "address" },
2951
+ {
2952
+ name: "creditFacade",
2953
+ internalType: "address",
2954
+ type: "address",
2955
+ },
2956
+ {
2957
+ name: "creditConfigurator",
2958
+ internalType: "address",
2959
+ type: "address",
2960
+ },
2961
+ {
2962
+ name: "maxEnabledTokens",
2963
+ internalType: "uint8",
2964
+ type: "uint8",
2965
+ },
2966
+ {
2967
+ name: "collateralTokens",
2968
+ internalType: "struct CollateralToken[]",
2969
+ type: "tuple[]",
2970
+ components: [
2971
+ {
2972
+ name: "token",
2973
+ internalType: "address",
2974
+ type: "address",
2975
+ },
2976
+ {
2977
+ name: "liquidationThreshold",
2978
+ internalType: "uint16",
2979
+ type: "uint16",
2980
+ },
2981
+ ],
2982
+ },
2983
+ {
2984
+ name: "feeInterest",
2985
+ internalType: "uint16",
2986
+ type: "uint16",
2987
+ },
2988
+ {
2989
+ name: "feeLiquidation",
2990
+ internalType: "uint16",
2991
+ type: "uint16",
2992
+ },
2993
+ {
2994
+ name: "liquidationDiscount",
2995
+ internalType: "uint16",
2996
+ type: "uint16",
2997
+ },
2998
+ {
2999
+ name: "feeLiquidationExpired",
3000
+ internalType: "uint16",
3001
+ type: "uint16",
3002
+ },
3003
+ {
3004
+ name: "liquidationDiscountExpired",
3005
+ internalType: "uint16",
3006
+ type: "uint16",
3007
+ },
3008
+ ],
3009
+ },
3010
+ {
3011
+ name: "creditConfigurator",
3012
+ internalType: "struct BaseState",
3013
+ type: "tuple",
3014
+ components: [
3015
+ {
3016
+ name: "baseParams",
3017
+ internalType: "struct BaseParams",
3018
+ type: "tuple",
3019
+ components: [
3020
+ {
3021
+ name: "addr",
3022
+ internalType: "address",
3023
+ type: "address",
3024
+ },
3025
+ {
3026
+ name: "version",
3027
+ internalType: "uint256",
3028
+ type: "uint256",
3029
+ },
3030
+ {
3031
+ name: "contractType",
3032
+ internalType: "bytes32",
3033
+ type: "bytes32",
3034
+ },
3035
+ {
3036
+ name: "serializedParams",
3037
+ internalType: "bytes",
3038
+ type: "bytes",
3039
+ },
3040
+ ],
3041
+ },
3042
+ ],
3043
+ },
3044
+ {
3045
+ name: "adapters",
3046
+ internalType: "struct AdapterState[]",
3047
+ type: "tuple[]",
3048
+ components: [
3049
+ {
3050
+ name: "baseParams",
3051
+ internalType: "struct BaseParams",
3052
+ type: "tuple",
3053
+ components: [
3054
+ {
3055
+ name: "addr",
3056
+ internalType: "address",
3057
+ type: "address",
3058
+ },
3059
+ {
3060
+ name: "version",
3061
+ internalType: "uint256",
3062
+ type: "uint256",
3063
+ },
3064
+ {
3065
+ name: "contractType",
3066
+ internalType: "bytes32",
3067
+ type: "bytes32",
3068
+ },
3069
+ {
3070
+ name: "serializedParams",
3071
+ internalType: "bytes",
3072
+ type: "bytes",
3073
+ },
3074
+ ],
3075
+ },
3076
+ {
3077
+ name: "targetContract",
3078
+ internalType: "address",
3079
+ type: "address",
3080
+ },
3081
+ ],
3082
+ },
3083
+ ],
3084
+ },
3085
+ { name: "configurator", internalType: "address", type: "address" },
3086
+ {
3087
+ name: "pausableAdmins",
3088
+ internalType: "address[]",
3089
+ type: "address[]",
3090
+ },
3091
+ {
3092
+ name: "unpausableAdmins",
3093
+ internalType: "address[]",
3094
+ type: "address[]",
3095
+ },
3096
+ {
3097
+ name: "emergencyLiquidators",
3098
+ internalType: "address[]",
3099
+ type: "address[]",
3100
+ },
3101
+ ],
3102
+ },
3103
+ ],
3104
+ stateMutability: "view",
3105
+ },
3106
+ {
3107
+ type: "function",
3108
+ inputs: [
3109
+ {
3110
+ name: "filter",
3111
+ internalType: "struct MarketFilter",
3112
+ type: "tuple",
3113
+ components: [
3114
+ {
3115
+ name: "configurators",
3116
+ internalType: "address[]",
3117
+ type: "address[]",
3118
+ },
3119
+ { name: "pools", internalType: "address[]", type: "address[]" },
3120
+ { name: "underlying", internalType: "address", type: "address" },
3121
+ ],
3122
+ },
3123
+ ],
3124
+ name: "getUpdatablePriceFeeds",
3125
+ outputs: [
3126
+ {
3127
+ name: "updatablePriceFeeds",
3128
+ internalType: "struct BaseParams[]",
3129
+ type: "tuple[]",
3130
+ components: [
3131
+ { name: "addr", internalType: "address", type: "address" },
3132
+ { name: "version", internalType: "uint256", type: "uint256" },
3133
+ { name: "contractType", internalType: "bytes32", type: "bytes32" },
3134
+ { name: "serializedParams", internalType: "bytes", type: "bytes" },
3135
+ ],
3136
+ },
3137
+ ],
3138
+ stateMutability: "view",
3139
+ },
3140
+ {
3141
+ type: "function",
3142
+ inputs: [],
3143
+ name: "version",
3144
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3145
+ stateMutability: "view",
3146
+ },
3147
+ ] as const;
3148
+
3149
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3150
+ // IModifiedBooster
3151
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3152
+
3153
+ export const iModifiedBoosterAbi = [
3154
+ {
3155
+ type: "function",
3156
+ inputs: [{ name: "pool", internalType: "address", type: "address" }],
3157
+ name: "getRewardMultipliers",
3158
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3159
+ stateMutability: "view",
3160
+ },
3161
+ ] as const;
3162
+
3163
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3164
+ // IPeripheryCompressor
3165
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3166
+
3167
+ export const iPeripheryCompressorAbi = [
3168
+ {
3169
+ type: "function",
3170
+ inputs: [],
3171
+ name: "contractType",
3172
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
3173
+ stateMutability: "view",
3174
+ },
3175
+ {
3176
+ type: "function",
3177
+ inputs: [
3178
+ { name: "marketConfigurator", internalType: "address", type: "address" },
3179
+ ],
3180
+ name: "getBots",
3181
+ outputs: [
3182
+ {
3183
+ name: "",
3184
+ internalType: "struct BotState[]",
3185
+ type: "tuple[]",
3186
+ components: [
3187
+ {
3188
+ name: "baseParams",
3189
+ internalType: "struct BaseParams",
3190
+ type: "tuple",
3191
+ components: [
3192
+ { name: "addr", internalType: "address", type: "address" },
3193
+ { name: "version", internalType: "uint256", type: "uint256" },
3194
+ {
3195
+ name: "contractType",
3196
+ internalType: "bytes32",
3197
+ type: "bytes32",
3198
+ },
3199
+ {
3200
+ name: "serializedParams",
3201
+ internalType: "bytes",
3202
+ type: "bytes",
3203
+ },
3204
+ ],
3205
+ },
3206
+ {
3207
+ name: "requiredPermissions",
3208
+ internalType: "uint192",
3209
+ type: "uint192",
3210
+ },
3211
+ ],
3212
+ },
3213
+ ],
3214
+ stateMutability: "view",
3215
+ },
3216
+ {
3217
+ type: "function",
3218
+ inputs: [
3219
+ { name: "marketConfigurator", internalType: "address", type: "address" },
3220
+ { name: "creditAccount", internalType: "address", type: "address" },
3221
+ ],
3222
+ name: "getConnectedBots",
3223
+ outputs: [
3224
+ {
3225
+ name: "",
3226
+ internalType: "struct ConnectedBotState[]",
3227
+ type: "tuple[]",
3228
+ components: [
3229
+ {
3230
+ name: "baseParams",
3231
+ internalType: "struct BaseParams",
3232
+ type: "tuple",
3233
+ components: [
3234
+ { name: "addr", internalType: "address", type: "address" },
3235
+ { name: "version", internalType: "uint256", type: "uint256" },
3236
+ {
3237
+ name: "contractType",
3238
+ internalType: "bytes32",
3239
+ type: "bytes32",
3240
+ },
3241
+ {
3242
+ name: "serializedParams",
3243
+ internalType: "bytes",
3244
+ type: "bytes",
3245
+ },
3246
+ ],
3247
+ },
3248
+ {
3249
+ name: "requiredPermissions",
3250
+ internalType: "uint192",
3251
+ type: "uint192",
3252
+ },
3253
+ { name: "creditAccount", internalType: "address", type: "address" },
3254
+ { name: "permissions", internalType: "uint192", type: "uint192" },
3255
+ { name: "forbidden", internalType: "bool", type: "bool" },
3256
+ ],
3257
+ },
3258
+ ],
3259
+ stateMutability: "view",
3260
+ },
3261
+ {
3262
+ type: "function",
3263
+ inputs: [
3264
+ { name: "marketConfigurator", internalType: "address", type: "address" },
3265
+ { name: "pool", internalType: "address", type: "address" },
3266
+ ],
3267
+ name: "getZappers",
3268
+ outputs: [
3269
+ {
3270
+ name: "",
3271
+ internalType: "struct ZapperState[]",
3272
+ type: "tuple[]",
3273
+ components: [
3274
+ {
3275
+ name: "baseParams",
3276
+ internalType: "struct BaseParams",
3277
+ type: "tuple",
3278
+ components: [
3279
+ { name: "addr", internalType: "address", type: "address" },
3280
+ { name: "version", internalType: "uint256", type: "uint256" },
3281
+ {
3282
+ name: "contractType",
3283
+ internalType: "bytes32",
3284
+ type: "bytes32",
3285
+ },
3286
+ {
3287
+ name: "serializedParams",
3288
+ internalType: "bytes",
3289
+ type: "bytes",
3290
+ },
3291
+ ],
3292
+ },
3293
+ {
3294
+ name: "tokenIn",
3295
+ internalType: "struct TokenData",
3296
+ type: "tuple",
3297
+ components: [
3298
+ { name: "addr", internalType: "address", type: "address" },
3299
+ { name: "symbol", internalType: "string", type: "string" },
3300
+ { name: "name", internalType: "string", type: "string" },
3301
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3302
+ ],
3303
+ },
3304
+ {
3305
+ name: "tokenOut",
3306
+ internalType: "struct TokenData",
3307
+ type: "tuple",
3308
+ components: [
3309
+ { name: "addr", internalType: "address", type: "address" },
3310
+ { name: "symbol", internalType: "string", type: "string" },
3311
+ { name: "name", internalType: "string", type: "string" },
3312
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3313
+ ],
3314
+ },
3315
+ ],
3316
+ },
3317
+ ],
3318
+ stateMutability: "view",
3319
+ },
3320
+ {
3321
+ type: "function",
3322
+ inputs: [],
3323
+ name: "version",
3324
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3325
+ stateMutability: "view",
3326
+ },
3327
+ ] as const;
3328
+
3329
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3330
+ // IPoolCompressor
3331
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3332
+
3333
+ export const iPoolCompressorAbi = [
3334
+ {
3335
+ type: "function",
3336
+ inputs: [],
3337
+ name: "contractType",
3338
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
3339
+ stateMutability: "view",
3340
+ },
3341
+ {
3342
+ type: "function",
3343
+ inputs: [
3344
+ { name: "interestRateModel", internalType: "address", type: "address" },
3345
+ ],
3346
+ name: "getInterestRateModelState",
3347
+ outputs: [
3348
+ {
3349
+ name: "",
3350
+ internalType: "struct BaseState",
3351
+ type: "tuple",
3352
+ components: [
3353
+ {
3354
+ name: "baseParams",
3355
+ internalType: "struct BaseParams",
3356
+ type: "tuple",
3357
+ components: [
3358
+ { name: "addr", internalType: "address", type: "address" },
3359
+ { name: "version", internalType: "uint256", type: "uint256" },
3360
+ {
3361
+ name: "contractType",
3362
+ internalType: "bytes32",
3363
+ type: "bytes32",
3364
+ },
3365
+ {
3366
+ name: "serializedParams",
3367
+ internalType: "bytes",
3368
+ type: "bytes",
3369
+ },
3370
+ ],
3371
+ },
3372
+ ],
3373
+ },
3374
+ ],
3375
+ stateMutability: "view",
3376
+ },
3377
+ {
3378
+ type: "function",
3379
+ inputs: [{ name: "lossPolicy", internalType: "address", type: "address" }],
3380
+ name: "getLossPolicyState",
3381
+ outputs: [
3382
+ {
3383
+ name: "",
3384
+ internalType: "struct BaseState",
3385
+ type: "tuple",
3386
+ components: [
3387
+ {
3388
+ name: "baseParams",
3389
+ internalType: "struct BaseParams",
3390
+ type: "tuple",
3391
+ components: [
3392
+ { name: "addr", internalType: "address", type: "address" },
3393
+ { name: "version", internalType: "uint256", type: "uint256" },
3394
+ {
3395
+ name: "contractType",
3396
+ internalType: "bytes32",
3397
+ type: "bytes32",
3398
+ },
3399
+ {
3400
+ name: "serializedParams",
3401
+ internalType: "bytes",
3402
+ type: "bytes",
3403
+ },
3404
+ ],
3405
+ },
3406
+ ],
3407
+ },
3408
+ ],
3409
+ stateMutability: "view",
3410
+ },
3411
+ {
3412
+ type: "function",
3413
+ inputs: [{ name: "quotaKeeper", internalType: "address", type: "address" }],
3414
+ name: "getPoolQuotaKeeperState",
3415
+ outputs: [
3416
+ {
3417
+ name: "",
3418
+ internalType: "struct PoolQuotaKeeperState",
3419
+ type: "tuple",
3420
+ components: [
3421
+ {
3422
+ name: "baseParams",
3423
+ internalType: "struct BaseParams",
3424
+ type: "tuple",
3425
+ components: [
3426
+ { name: "addr", internalType: "address", type: "address" },
3427
+ { name: "version", internalType: "uint256", type: "uint256" },
3428
+ {
3429
+ name: "contractType",
3430
+ internalType: "bytes32",
3431
+ type: "bytes32",
3432
+ },
3433
+ {
3434
+ name: "serializedParams",
3435
+ internalType: "bytes",
3436
+ type: "bytes",
3437
+ },
3438
+ ],
3439
+ },
3440
+ { name: "rateKeeper", internalType: "address", type: "address" },
3441
+ {
3442
+ name: "quotas",
3443
+ internalType: "struct QuotaTokenParams[]",
3444
+ type: "tuple[]",
3445
+ components: [
3446
+ { name: "token", internalType: "address", type: "address" },
3447
+ { name: "rate", internalType: "uint16", type: "uint16" },
3448
+ {
3449
+ name: "cumulativeIndexLU",
3450
+ internalType: "uint192",
3451
+ type: "uint192",
3452
+ },
3453
+ {
3454
+ name: "quotaIncreaseFee",
3455
+ internalType: "uint16",
3456
+ type: "uint16",
3457
+ },
3458
+ { name: "totalQuoted", internalType: "uint96", type: "uint96" },
3459
+ { name: "limit", internalType: "uint96", type: "uint96" },
3460
+ { name: "isActive", internalType: "bool", type: "bool" },
3461
+ ],
3462
+ },
3463
+ {
3464
+ name: "creditManagers",
3465
+ internalType: "address[]",
3466
+ type: "address[]",
3467
+ },
3468
+ {
3469
+ name: "lastQuotaRateUpdate",
3470
+ internalType: "uint40",
3471
+ type: "uint40",
3472
+ },
3473
+ ],
3474
+ },
3475
+ ],
3476
+ stateMutability: "view",
3477
+ },
3478
+ {
3479
+ type: "function",
3480
+ inputs: [{ name: "pool", internalType: "address", type: "address" }],
3481
+ name: "getPoolState",
3482
+ outputs: [
3483
+ {
3484
+ name: "",
3485
+ internalType: "struct PoolState",
3486
+ type: "tuple",
3487
+ components: [
3488
+ {
3489
+ name: "baseParams",
3490
+ internalType: "struct BaseParams",
3491
+ type: "tuple",
3492
+ components: [
3493
+ { name: "addr", internalType: "address", type: "address" },
3494
+ { name: "version", internalType: "uint256", type: "uint256" },
3495
+ {
3496
+ name: "contractType",
3497
+ internalType: "bytes32",
3498
+ type: "bytes32",
3499
+ },
3500
+ {
3501
+ name: "serializedParams",
3502
+ internalType: "bytes",
3503
+ type: "bytes",
3504
+ },
3505
+ ],
3506
+ },
3507
+ { name: "symbol", internalType: "string", type: "string" },
3508
+ { name: "name", internalType: "string", type: "string" },
3509
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3510
+ { name: "totalSupply", internalType: "uint256", type: "uint256" },
3511
+ { name: "poolQuotaKeeper", internalType: "address", type: "address" },
3512
+ {
3513
+ name: "interestRateModel",
3514
+ internalType: "address",
3515
+ type: "address",
3516
+ },
3517
+ { name: "underlying", internalType: "address", type: "address" },
3518
+ {
3519
+ name: "availableLiquidity",
3520
+ internalType: "uint256",
3521
+ type: "uint256",
3522
+ },
3523
+ {
3524
+ name: "expectedLiquidity",
3525
+ internalType: "uint256",
3526
+ type: "uint256",
3527
+ },
3528
+ {
3529
+ name: "baseInterestIndex",
3530
+ internalType: "uint256",
3531
+ type: "uint256",
3532
+ },
3533
+ {
3534
+ name: "baseInterestRate",
3535
+ internalType: "uint256",
3536
+ type: "uint256",
3537
+ },
3538
+ { name: "dieselRate", internalType: "uint256", type: "uint256" },
3539
+ { name: "supplyRate", internalType: "uint256", type: "uint256" },
3540
+ { name: "withdrawFee", internalType: "uint256", type: "uint256" },
3541
+ { name: "totalBorrowed", internalType: "uint256", type: "uint256" },
3542
+ { name: "totalDebtLimit", internalType: "uint256", type: "uint256" },
3543
+ {
3544
+ name: "creditManagerDebtParams",
3545
+ internalType: "struct CreditManagerDebtParams[]",
3546
+ type: "tuple[]",
3547
+ components: [
3548
+ {
3549
+ name: "creditManager",
3550
+ internalType: "address",
3551
+ type: "address",
3552
+ },
3553
+ { name: "borrowed", internalType: "uint256", type: "uint256" },
3554
+ { name: "limit", internalType: "uint256", type: "uint256" },
3555
+ { name: "available", internalType: "uint256", type: "uint256" },
3556
+ ],
3557
+ },
3558
+ {
3559
+ name: "baseInterestIndexLU",
3560
+ internalType: "uint256",
3561
+ type: "uint256",
3562
+ },
3563
+ {
3564
+ name: "expectedLiquidityLU",
3565
+ internalType: "uint256",
3566
+ type: "uint256",
3567
+ },
3568
+ { name: "quotaRevenue", internalType: "uint256", type: "uint256" },
3569
+ {
3570
+ name: "lastBaseInterestUpdate",
3571
+ internalType: "uint40",
3572
+ type: "uint40",
3573
+ },
3574
+ {
3575
+ name: "lastQuotaRevenueUpdate",
3576
+ internalType: "uint40",
3577
+ type: "uint40",
3578
+ },
3579
+ { name: "isPaused", internalType: "bool", type: "bool" },
3580
+ ],
3581
+ },
3582
+ ],
3583
+ stateMutability: "view",
3584
+ },
3585
+ {
3586
+ type: "function",
3587
+ inputs: [{ name: "rateKeeper", internalType: "address", type: "address" }],
3588
+ name: "getRateKeeperState",
3589
+ outputs: [
3590
+ {
3591
+ name: "",
3592
+ internalType: "struct RateKeeperState",
3593
+ type: "tuple",
3594
+ components: [
3595
+ {
3596
+ name: "baseParams",
3597
+ internalType: "struct BaseParams",
3598
+ type: "tuple",
3599
+ components: [
3600
+ { name: "addr", internalType: "address", type: "address" },
3601
+ { name: "version", internalType: "uint256", type: "uint256" },
3602
+ {
3603
+ name: "contractType",
3604
+ internalType: "bytes32",
3605
+ type: "bytes32",
3606
+ },
3607
+ {
3608
+ name: "serializedParams",
3609
+ internalType: "bytes",
3610
+ type: "bytes",
3611
+ },
3612
+ ],
3613
+ },
3614
+ {
3615
+ name: "rates",
3616
+ internalType: "struct Rate[]",
3617
+ type: "tuple[]",
3618
+ components: [
3619
+ { name: "token", internalType: "address", type: "address" },
3620
+ { name: "rate", internalType: "uint16", type: "uint16" },
3621
+ ],
3622
+ },
3623
+ ],
3624
+ },
3625
+ ],
3626
+ stateMutability: "view",
3627
+ },
3628
+ {
3629
+ type: "function",
3630
+ inputs: [],
3631
+ name: "version",
3632
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3633
+ stateMutability: "view",
3634
+ },
3635
+ ] as const;
3636
+
3637
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3638
+ // IPriceFeedCompressor
3639
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3640
+
3641
+ export const iPriceFeedCompressorAbi = [
3642
+ {
3643
+ type: "function",
3644
+ inputs: [],
3645
+ name: "contractType",
3646
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
3647
+ stateMutability: "view",
3648
+ },
3649
+ {
3650
+ type: "function",
3651
+ inputs: [
3652
+ { name: "priceOracle", internalType: "address", type: "address" },
3653
+ { name: "tokens", internalType: "address[]", type: "address[]" },
3654
+ ],
3655
+ name: "getPriceFeeds",
3656
+ outputs: [
3657
+ {
3658
+ name: "priceFeedMap",
3659
+ internalType: "struct PriceFeedMapEntry[]",
3660
+ type: "tuple[]",
3661
+ components: [
3662
+ { name: "token", internalType: "address", type: "address" },
3663
+ { name: "reserve", internalType: "bool", type: "bool" },
3664
+ { name: "priceFeed", internalType: "address", type: "address" },
3665
+ { name: "stalenessPeriod", internalType: "uint32", type: "uint32" },
3666
+ ],
3667
+ },
3668
+ {
3669
+ name: "priceFeedTree",
3670
+ internalType: "struct PriceFeedTreeNode[]",
3671
+ type: "tuple[]",
3672
+ components: [
3673
+ {
3674
+ name: "baseParams",
3675
+ internalType: "struct BaseParams",
3676
+ type: "tuple",
3677
+ components: [
3678
+ { name: "addr", internalType: "address", type: "address" },
3679
+ { name: "version", internalType: "uint256", type: "uint256" },
3680
+ {
3681
+ name: "contractType",
3682
+ internalType: "bytes32",
3683
+ type: "bytes32",
3684
+ },
3685
+ {
3686
+ name: "serializedParams",
3687
+ internalType: "bytes",
3688
+ type: "bytes",
3689
+ },
3690
+ ],
3691
+ },
3692
+ { name: "description", internalType: "string", type: "string" },
3693
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3694
+ { name: "skipCheck", internalType: "bool", type: "bool" },
3695
+ { name: "updatable", internalType: "bool", type: "bool" },
3696
+ {
3697
+ name: "underlyingFeeds",
3698
+ internalType: "address[]",
3699
+ type: "address[]",
3700
+ },
3701
+ {
3702
+ name: "underlyingStalenessPeriods",
3703
+ internalType: "uint32[]",
3704
+ type: "uint32[]",
3705
+ },
3706
+ {
3707
+ name: "answer",
3708
+ internalType: "struct PriceFeedAnswer",
3709
+ type: "tuple",
3710
+ components: [
3711
+ { name: "price", internalType: "int256", type: "int256" },
3712
+ { name: "updatedAt", internalType: "uint256", type: "uint256" },
3713
+ { name: "success", internalType: "bool", type: "bool" },
3714
+ ],
3715
+ },
3716
+ ],
3717
+ },
3718
+ ],
3719
+ stateMutability: "view",
3720
+ },
3721
+ {
3722
+ type: "function",
3723
+ inputs: [{ name: "priceOracle", internalType: "address", type: "address" }],
3724
+ name: "getPriceFeeds",
3725
+ outputs: [
3726
+ {
3727
+ name: "priceFeedMap",
3728
+ internalType: "struct PriceFeedMapEntry[]",
3729
+ type: "tuple[]",
3730
+ components: [
3731
+ { name: "token", internalType: "address", type: "address" },
3732
+ { name: "reserve", internalType: "bool", type: "bool" },
3733
+ { name: "priceFeed", internalType: "address", type: "address" },
3734
+ { name: "stalenessPeriod", internalType: "uint32", type: "uint32" },
3735
+ ],
3736
+ },
3737
+ {
3738
+ name: "priceFeedTree",
3739
+ internalType: "struct PriceFeedTreeNode[]",
3740
+ type: "tuple[]",
3741
+ components: [
3742
+ {
3743
+ name: "baseParams",
3744
+ internalType: "struct BaseParams",
3745
+ type: "tuple",
3746
+ components: [
3747
+ { name: "addr", internalType: "address", type: "address" },
3748
+ { name: "version", internalType: "uint256", type: "uint256" },
3749
+ {
3750
+ name: "contractType",
3751
+ internalType: "bytes32",
3752
+ type: "bytes32",
3753
+ },
3754
+ {
3755
+ name: "serializedParams",
3756
+ internalType: "bytes",
3757
+ type: "bytes",
3758
+ },
3759
+ ],
3760
+ },
3761
+ { name: "description", internalType: "string", type: "string" },
3762
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3763
+ { name: "skipCheck", internalType: "bool", type: "bool" },
3764
+ { name: "updatable", internalType: "bool", type: "bool" },
3765
+ {
3766
+ name: "underlyingFeeds",
3767
+ internalType: "address[]",
3768
+ type: "address[]",
3769
+ },
3770
+ {
3771
+ name: "underlyingStalenessPeriods",
3772
+ internalType: "uint32[]",
3773
+ type: "uint32[]",
3774
+ },
3775
+ {
3776
+ name: "answer",
3777
+ internalType: "struct PriceFeedAnswer",
3778
+ type: "tuple",
3779
+ components: [
3780
+ { name: "price", internalType: "int256", type: "int256" },
3781
+ { name: "updatedAt", internalType: "uint256", type: "uint256" },
3782
+ { name: "success", internalType: "bool", type: "bool" },
3783
+ ],
3784
+ },
3785
+ ],
3786
+ },
3787
+ ],
3788
+ stateMutability: "view",
3789
+ },
3790
+ {
3791
+ type: "function",
3792
+ inputs: [
3793
+ { name: "priceFeeds", internalType: "address[]", type: "address[]" },
3794
+ ],
3795
+ name: "loadPriceFeedTree",
3796
+ outputs: [
3797
+ {
3798
+ name: "priceFeedTree",
3799
+ internalType: "struct PriceFeedTreeNode[]",
3800
+ type: "tuple[]",
3801
+ components: [
3802
+ {
3803
+ name: "baseParams",
3804
+ internalType: "struct BaseParams",
3805
+ type: "tuple",
3806
+ components: [
3807
+ { name: "addr", internalType: "address", type: "address" },
3808
+ { name: "version", internalType: "uint256", type: "uint256" },
3809
+ {
3810
+ name: "contractType",
3811
+ internalType: "bytes32",
3812
+ type: "bytes32",
3813
+ },
3814
+ {
3815
+ name: "serializedParams",
3816
+ internalType: "bytes",
3817
+ type: "bytes",
3818
+ },
3819
+ ],
3820
+ },
3821
+ { name: "description", internalType: "string", type: "string" },
3822
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3823
+ { name: "skipCheck", internalType: "bool", type: "bool" },
3824
+ { name: "updatable", internalType: "bool", type: "bool" },
3825
+ {
3826
+ name: "underlyingFeeds",
3827
+ internalType: "address[]",
3828
+ type: "address[]",
3829
+ },
3830
+ {
3831
+ name: "underlyingStalenessPeriods",
3832
+ internalType: "uint32[]",
3833
+ type: "uint32[]",
3834
+ },
3835
+ {
3836
+ name: "answer",
3837
+ internalType: "struct PriceFeedAnswer",
3838
+ type: "tuple",
3839
+ components: [
3840
+ { name: "price", internalType: "int256", type: "int256" },
3841
+ { name: "updatedAt", internalType: "uint256", type: "uint256" },
3842
+ { name: "success", internalType: "bool", type: "bool" },
3843
+ ],
3844
+ },
3845
+ ],
3846
+ },
3847
+ ],
3848
+ stateMutability: "view",
3849
+ },
3850
+ {
3851
+ type: "function",
3852
+ inputs: [],
3853
+ name: "version",
3854
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3855
+ stateMutability: "view",
3856
+ },
3857
+ {
3858
+ type: "event",
3859
+ anonymous: false,
3860
+ inputs: [
3861
+ {
3862
+ name: "contractType",
3863
+ internalType: "bytes32",
3864
+ type: "bytes32",
3865
+ indexed: true,
3866
+ },
3867
+ {
3868
+ name: "serializer",
3869
+ internalType: "address",
3870
+ type: "address",
3871
+ indexed: true,
3872
+ },
3873
+ ],
3874
+ name: "SetSerializer",
3875
+ },
3876
+ ] as const;
3877
+
3878
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3879
+ // IRewardsCompressor
3880
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3881
+
3882
+ export const iRewardsCompressorAbi = [
3883
+ {
3884
+ type: "function",
3885
+ inputs: [],
3886
+ name: "contractType",
3887
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
3888
+ stateMutability: "view",
3889
+ },
3890
+ {
3891
+ type: "function",
3892
+ inputs: [
3893
+ { name: "creditAccount", internalType: "address", type: "address" },
3894
+ ],
3895
+ name: "getRewards",
3896
+ outputs: [
3897
+ {
3898
+ name: "rewards",
3899
+ internalType: "struct RewardInfo[]",
3900
+ type: "tuple[]",
3901
+ components: [
3902
+ { name: "amount", internalType: "uint256", type: "uint256" },
3903
+ { name: "rewardToken", internalType: "address", type: "address" },
3904
+ {
3905
+ name: "stakedPhantomToken",
3906
+ internalType: "address",
3907
+ type: "address",
3908
+ },
3909
+ { name: "adapter", internalType: "address", type: "address" },
3910
+ ],
3911
+ },
3912
+ ],
3913
+ stateMutability: "view",
3914
+ },
3915
+ {
3916
+ type: "function",
3917
+ inputs: [],
3918
+ name: "version",
3919
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3920
+ stateMutability: "view",
3921
+ },
3922
+ ] as const;
3923
+
3924
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3925
+ // ITokenCompressor
3926
+ /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3927
+
3928
+ export const iTokenCompressorAbi = [
3929
+ {
3930
+ type: "function",
3931
+ inputs: [],
3932
+ name: "contractType",
3933
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
3934
+ stateMutability: "view",
3935
+ },
3936
+ {
3937
+ type: "function",
3938
+ inputs: [{ name: "token", internalType: "address", type: "address" }],
3939
+ name: "getTokenInfo",
3940
+ outputs: [
3941
+ {
3942
+ name: "result",
3943
+ internalType: "struct TokenData",
3944
+ type: "tuple",
3945
+ components: [
3946
+ { name: "addr", internalType: "address", type: "address" },
3947
+ { name: "symbol", internalType: "string", type: "string" },
3948
+ { name: "name", internalType: "string", type: "string" },
3949
+ { name: "decimals", internalType: "uint8", type: "uint8" },
3950
+ ],
3951
+ },
3952
+ ],
3953
+ stateMutability: "view",
3954
+ },
3955
+ {
3956
+ type: "function",
3957
+ inputs: [],
3958
+ name: "version",
3959
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
3960
+ stateMutability: "view",
3961
+ },
3962
+ ] as const;