@ripe-finance/sdk 0.0.2

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 (246) hide show
  1. package/LICENSE +41 -0
  2. package/README.md +44 -0
  3. package/dist/contracts/AddyRegistry.d.ts +1109 -0
  4. package/dist/contracts/AddyRegistry.d.ts.map +1 -0
  5. package/dist/contracts/AddyRegistry.js +1392 -0
  6. package/dist/contracts/AddyRegistry_v1.d.ts +473 -0
  7. package/dist/contracts/AddyRegistry_v1.d.ts.map +1 -0
  8. package/dist/contracts/AddyRegistry_v1.js +594 -0
  9. package/dist/contracts/AddyRegistry_v2.d.ts +1050 -0
  10. package/dist/contracts/AddyRegistry_v2.d.ts.map +1 -0
  11. package/dist/contracts/AddyRegistry_v2.js +1313 -0
  12. package/dist/contracts/Agent.d.ts +2709 -0
  13. package/dist/contracts/Agent.d.ts.map +1 -0
  14. package/dist/contracts/Agent.js +3458 -0
  15. package/dist/contracts/AgentFactory.d.ts +1665 -0
  16. package/dist/contracts/AgentFactory.d.ts.map +1 -0
  17. package/dist/contracts/AgentFactory.js +2078 -0
  18. package/dist/contracts/AgentFactory_v1.d.ts +1054 -0
  19. package/dist/contracts/AgentFactory_v1.d.ts.map +1 -0
  20. package/dist/contracts/AgentFactory_v1.js +1336 -0
  21. package/dist/contracts/AgentFactory_v2.d.ts +1275 -0
  22. package/dist/contracts/AgentFactory_v2.d.ts.map +1 -0
  23. package/dist/contracts/AgentFactory_v2.js +1609 -0
  24. package/dist/contracts/AgentTemplate.d.ts +2629 -0
  25. package/dist/contracts/AgentTemplate.d.ts.map +1 -0
  26. package/dist/contracts/AgentTemplate.js +3370 -0
  27. package/dist/contracts/Agent_v1.d.ts +2631 -0
  28. package/dist/contracts/Agent_v1.d.ts.map +1 -0
  29. package/dist/contracts/Agent_v1.js +3372 -0
  30. package/dist/contracts/Agent_v2.d.ts +2709 -0
  31. package/dist/contracts/Agent_v2.d.ts.map +1 -0
  32. package/dist/contracts/Agent_v2.js +3458 -0
  33. package/dist/contracts/AuctionHouse.d.ts +1566 -0
  34. package/dist/contracts/AuctionHouse.d.ts.map +1 -0
  35. package/dist/contracts/AuctionHouse.js +1814 -0
  36. package/dist/contracts/AuctionHouseNFT.d.ts +259 -0
  37. package/dist/contracts/AuctionHouseNFT.d.ts.map +1 -0
  38. package/dist/contracts/AuctionHouseNFT.js +295 -0
  39. package/dist/contracts/BlueChipYieldPrices.d.ts +1916 -0
  40. package/dist/contracts/BlueChipYieldPrices.d.ts.map +1 -0
  41. package/dist/contracts/BlueChipYieldPrices.js +2414 -0
  42. package/dist/contracts/Boardroom.d.ts +276 -0
  43. package/dist/contracts/Boardroom.d.ts.map +1 -0
  44. package/dist/contracts/Boardroom.js +317 -0
  45. package/dist/contracts/BondRoom.d.ts +539 -0
  46. package/dist/contracts/BondRoom.d.ts.map +1 -0
  47. package/dist/contracts/BondRoom.js +640 -0
  48. package/dist/contracts/ChainlinkFeeds.d.ts +706 -0
  49. package/dist/contracts/ChainlinkFeeds.d.ts.map +1 -0
  50. package/dist/contracts/ChainlinkFeeds.js +900 -0
  51. package/dist/contracts/ChainlinkPrices.d.ts +1594 -0
  52. package/dist/contracts/ChainlinkPrices.d.ts.map +1 -0
  53. package/dist/contracts/ChainlinkPrices.js +2023 -0
  54. package/dist/contracts/Contributor.d.ts +731 -0
  55. package/dist/contracts/Contributor.d.ts.map +1 -0
  56. package/dist/contracts/Contributor.js +896 -0
  57. package/dist/contracts/CreditEngine.d.ts +2295 -0
  58. package/dist/contracts/CreditEngine.d.ts.map +1 -0
  59. package/dist/contracts/CreditEngine.js +2662 -0
  60. package/dist/contracts/CurvePrices.d.ts +2041 -0
  61. package/dist/contracts/CurvePrices.d.ts.map +1 -0
  62. package/dist/contracts/CurvePrices.js +2523 -0
  63. package/dist/contracts/DefaultsBase.d.ts +470 -0
  64. package/dist/contracts/DefaultsBase.d.ts.map +1 -0
  65. package/dist/contracts/DefaultsBase.js +512 -0
  66. package/dist/contracts/ERC20.d.ts +271 -0
  67. package/dist/contracts/ERC20.d.ts.map +1 -0
  68. package/dist/contracts/ERC20.js +339 -0
  69. package/dist/contracts/Endaoment.d.ts +2208 -0
  70. package/dist/contracts/Endaoment.d.ts.map +1 -0
  71. package/dist/contracts/Endaoment.js +2877 -0
  72. package/dist/contracts/GreenPool.d.ts +1248 -0
  73. package/dist/contracts/GreenPool.d.ts.map +1 -0
  74. package/dist/contracts/GreenPool.js +1614 -0
  75. package/dist/contracts/GreenToken.d.ts +776 -0
  76. package/dist/contracts/GreenToken.d.ts.map +1 -0
  77. package/dist/contracts/GreenToken.js +990 -0
  78. package/dist/contracts/HumanResources.d.ts +1176 -0
  79. package/dist/contracts/HumanResources.d.ts.map +1 -0
  80. package/dist/contracts/HumanResources.js +1464 -0
  81. package/dist/contracts/Ledger.d.ts +2312 -0
  82. package/dist/contracts/Ledger.d.ts.map +1 -0
  83. package/dist/contracts/Ledger.js +2712 -0
  84. package/dist/contracts/LegoAaveV3.d.ts +1033 -0
  85. package/dist/contracts/LegoAaveV3.d.ts.map +1 -0
  86. package/dist/contracts/LegoAaveV3.js +1330 -0
  87. package/dist/contracts/LegoAeroClassic.d.ts +1204 -0
  88. package/dist/contracts/LegoAeroClassic.d.ts.map +1 -0
  89. package/dist/contracts/LegoAeroClassic.js +1546 -0
  90. package/dist/contracts/LegoAeroSlipstream.d.ts +1300 -0
  91. package/dist/contracts/LegoAeroSlipstream.d.ts.map +1 -0
  92. package/dist/contracts/LegoAeroSlipstream.js +1671 -0
  93. package/dist/contracts/LegoCommon.d.ts +164 -0
  94. package/dist/contracts/LegoCommon.d.ts.map +1 -0
  95. package/dist/contracts/LegoCommon.js +202 -0
  96. package/dist/contracts/LegoCompoundV3.d.ts +1060 -0
  97. package/dist/contracts/LegoCompoundV3.d.ts.map +1 -0
  98. package/dist/contracts/LegoCompoundV3.js +1365 -0
  99. package/dist/contracts/LegoCredit.d.ts +140 -0
  100. package/dist/contracts/LegoCredit.d.ts.map +1 -0
  101. package/dist/contracts/LegoCredit.js +179 -0
  102. package/dist/contracts/LegoCurve.d.ts +1189 -0
  103. package/dist/contracts/LegoCurve.d.ts.map +1 -0
  104. package/dist/contracts/LegoCurve.js +1519 -0
  105. package/dist/contracts/LegoDex.d.ts +587 -0
  106. package/dist/contracts/LegoDex.d.ts.map +1 -0
  107. package/dist/contracts/LegoDex.js +774 -0
  108. package/dist/contracts/LegoEuler.d.ts +1074 -0
  109. package/dist/contracts/LegoEuler.d.ts.map +1 -0
  110. package/dist/contracts/LegoEuler.js +1383 -0
  111. package/dist/contracts/LegoFluid.d.ts +1025 -0
  112. package/dist/contracts/LegoFluid.d.ts.map +1 -0
  113. package/dist/contracts/LegoFluid.js +1320 -0
  114. package/dist/contracts/LegoHelper.d.ts +1563 -0
  115. package/dist/contracts/LegoHelper.d.ts.map +1 -0
  116. package/dist/contracts/LegoHelper.js +1947 -0
  117. package/dist/contracts/LegoMoonwell.d.ts +1042 -0
  118. package/dist/contracts/LegoMoonwell.d.ts.map +1 -0
  119. package/dist/contracts/LegoMoonwell.js +1342 -0
  120. package/dist/contracts/LegoMorpho.d.ts +1074 -0
  121. package/dist/contracts/LegoMorpho.d.ts.map +1 -0
  122. package/dist/contracts/LegoMorpho.js +1383 -0
  123. package/dist/contracts/LegoRegistry.d.ts +1079 -0
  124. package/dist/contracts/LegoRegistry.d.ts.map +1 -0
  125. package/dist/contracts/LegoRegistry.js +1368 -0
  126. package/dist/contracts/LegoSky.d.ts +923 -0
  127. package/dist/contracts/LegoSky.d.ts.map +1 -0
  128. package/dist/contracts/LegoSky.js +1180 -0
  129. package/dist/contracts/LegoUniswapV2.d.ts +1204 -0
  130. package/dist/contracts/LegoUniswapV2.d.ts.map +1 -0
  131. package/dist/contracts/LegoUniswapV2.js +1546 -0
  132. package/dist/contracts/LegoUniswapV3.d.ts +1338 -0
  133. package/dist/contracts/LegoUniswapV3.d.ts.map +1 -0
  134. package/dist/contracts/LegoUniswapV3.js +1718 -0
  135. package/dist/contracts/LegoYield.d.ts +390 -0
  136. package/dist/contracts/LegoYield.d.ts.map +1 -0
  137. package/dist/contracts/LegoYield.js +511 -0
  138. package/dist/contracts/Lootbox.d.ts +1258 -0
  139. package/dist/contracts/Lootbox.d.ts.map +1 -0
  140. package/dist/contracts/Lootbox.js +1435 -0
  141. package/dist/contracts/MissionControl.d.ts +2642 -0
  142. package/dist/contracts/MissionControl.d.ts.map +1 -0
  143. package/dist/contracts/MissionControl.js +2957 -0
  144. package/dist/contracts/OracleParser.d.ts +207 -0
  145. package/dist/contracts/OracleParser.d.ts.map +1 -0
  146. package/dist/contracts/OracleParser.js +264 -0
  147. package/dist/contracts/OracleRegistry.d.ts +1221 -0
  148. package/dist/contracts/OracleRegistry.d.ts.map +1 -0
  149. package/dist/contracts/OracleRegistry.js +1562 -0
  150. package/dist/contracts/PriceDesk.d.ts +1581 -0
  151. package/dist/contracts/PriceDesk.d.ts.map +1 -0
  152. package/dist/contracts/PriceDesk.js +1993 -0
  153. package/dist/contracts/PriceSheets.d.ts +1127 -0
  154. package/dist/contracts/PriceSheets.d.ts.map +1 -0
  155. package/dist/contracts/PriceSheets.js +1383 -0
  156. package/dist/contracts/PythFeeds.d.ts +640 -0
  157. package/dist/contracts/PythFeeds.d.ts.map +1 -0
  158. package/dist/contracts/PythFeeds.js +813 -0
  159. package/dist/contracts/PythPrices.d.ts +1435 -0
  160. package/dist/contracts/PythPrices.d.ts.map +1 -0
  161. package/dist/contracts/PythPrices.js +1819 -0
  162. package/dist/contracts/RebaseErc20.d.ts +1080 -0
  163. package/dist/contracts/RebaseErc20.d.ts.map +1 -0
  164. package/dist/contracts/RebaseErc20.js +1312 -0
  165. package/dist/contracts/RipeGov.d.ts +2157 -0
  166. package/dist/contracts/RipeGov.d.ts.map +1 -0
  167. package/dist/contracts/RipeGov.js +2529 -0
  168. package/dist/contracts/RipeHq.d.ts +1612 -0
  169. package/dist/contracts/RipeHq.d.ts.map +1 -0
  170. package/dist/contracts/RipeHq.js +2029 -0
  171. package/dist/contracts/RipeToken.d.ts +776 -0
  172. package/dist/contracts/RipeToken.d.ts.map +1 -0
  173. package/dist/contracts/RipeToken.js +990 -0
  174. package/dist/contracts/SavingsGreen.d.ts +1160 -0
  175. package/dist/contracts/SavingsGreen.d.ts.map +1 -0
  176. package/dist/contracts/SavingsGreen.js +1505 -0
  177. package/dist/contracts/SimpleErc20.d.ts +1028 -0
  178. package/dist/contracts/SimpleErc20.d.ts.map +1 -0
  179. package/dist/contracts/SimpleErc20.js +1243 -0
  180. package/dist/contracts/StabilityPool.d.ts +1843 -0
  181. package/dist/contracts/StabilityPool.d.ts.map +1 -0
  182. package/dist/contracts/StabilityPool.js +2229 -0
  183. package/dist/contracts/StorkFeeds.d.ts +640 -0
  184. package/dist/contracts/StorkFeeds.d.ts.map +1 -0
  185. package/dist/contracts/StorkFeeds.js +813 -0
  186. package/dist/contracts/StorkPrices.d.ts +1435 -0
  187. package/dist/contracts/StorkPrices.d.ts.map +1 -0
  188. package/dist/contracts/StorkPrices.js +1819 -0
  189. package/dist/contracts/Switchboard.d.ts +1416 -0
  190. package/dist/contracts/Switchboard.d.ts.map +1 -0
  191. package/dist/contracts/Switchboard.js +1767 -0
  192. package/dist/contracts/SwitchboardAlpha.d.ts +2647 -0
  193. package/dist/contracts/SwitchboardAlpha.d.ts.map +1 -0
  194. package/dist/contracts/SwitchboardAlpha.js +3301 -0
  195. package/dist/contracts/SwitchboardBravo.d.ts +2833 -0
  196. package/dist/contracts/SwitchboardBravo.d.ts.map +1 -0
  197. package/dist/contracts/SwitchboardBravo.js +3640 -0
  198. package/dist/contracts/SwitchboardCharlie.d.ts +3651 -0
  199. package/dist/contracts/SwitchboardCharlie.d.ts.map +1 -0
  200. package/dist/contracts/SwitchboardCharlie.js +4642 -0
  201. package/dist/contracts/SwitchboardDelta.d.ts +1490 -0
  202. package/dist/contracts/SwitchboardDelta.d.ts.map +1 -0
  203. package/dist/contracts/SwitchboardDelta.js +1872 -0
  204. package/dist/contracts/Teller.d.ts +2664 -0
  205. package/dist/contracts/Teller.d.ts.map +1 -0
  206. package/dist/contracts/Teller.js +3518 -0
  207. package/dist/contracts/TrainingWheels.d.ts +321 -0
  208. package/dist/contracts/TrainingWheels.d.ts.map +1 -0
  209. package/dist/contracts/TrainingWheels.js +376 -0
  210. package/dist/contracts/UserWallet.d.ts +1975 -0
  211. package/dist/contracts/UserWallet.d.ts.map +1 -0
  212. package/dist/contracts/UserWallet.js +2577 -0
  213. package/dist/contracts/UserWalletConfig.d.ts +1852 -0
  214. package/dist/contracts/UserWalletConfig.d.ts.map +1 -0
  215. package/dist/contracts/UserWalletConfig.js +2263 -0
  216. package/dist/contracts/UserWalletConfig_v1.d.ts +1400 -0
  217. package/dist/contracts/UserWalletConfig_v1.d.ts.map +1 -0
  218. package/dist/contracts/UserWalletConfig_v1.js +1676 -0
  219. package/dist/contracts/UserWalletConfig_v2.d.ts +1468 -0
  220. package/dist/contracts/UserWalletConfig_v2.d.ts.map +1 -0
  221. package/dist/contracts/UserWalletConfig_v2.js +1764 -0
  222. package/dist/contracts/UserWallet_v1.d.ts +1980 -0
  223. package/dist/contracts/UserWallet_v1.d.ts.map +1 -0
  224. package/dist/contracts/UserWallet_v1.js +2581 -0
  225. package/dist/contracts/UserWallet_v2.d.ts +1958 -0
  226. package/dist/contracts/UserWallet_v2.d.ts.map +1 -0
  227. package/dist/contracts/UserWallet_v2.js +2553 -0
  228. package/dist/contracts/VaultBook.d.ts +1416 -0
  229. package/dist/contracts/VaultBook.d.ts.map +1 -0
  230. package/dist/contracts/VaultBook.js +1767 -0
  231. package/dist/contracts/WalletConfig.d.ts +1398 -0
  232. package/dist/contracts/WalletConfig.d.ts.map +1 -0
  233. package/dist/contracts/WalletConfig.js +1674 -0
  234. package/dist/contracts/WalletFunds.d.ts +1978 -0
  235. package/dist/contracts/WalletFunds.d.ts.map +1 -0
  236. package/dist/contracts/WalletFunds.js +2579 -0
  237. package/dist/contracts/index.d.ts +37 -0
  238. package/dist/contracts/index.d.ts.map +1 -0
  239. package/dist/contracts/index.js +40 -0
  240. package/dist/contracts/sdk.d.ts +77 -0
  241. package/dist/contracts/sdk.d.ts.map +1 -0
  242. package/dist/contracts/sdk.js +80 -0
  243. package/dist/index.d.ts +2907 -0
  244. package/dist/index.d.ts.map +1 -0
  245. package/dist/index.js +317 -0
  246. package/package.json +36 -0
@@ -0,0 +1,2662 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /* @ts-nocheck */
5
+ import { singleQuery, mutate } from '@dappql/async';
6
+ export const abi = [
7
+ {
8
+ name: 'NewBorrow',
9
+ inputs: [
10
+ {
11
+ name: 'user',
12
+ type: 'address',
13
+ indexed: true,
14
+ },
15
+ {
16
+ name: 'newLoan',
17
+ type: 'uint256',
18
+ indexed: false,
19
+ },
20
+ {
21
+ name: 'daowry',
22
+ type: 'uint256',
23
+ indexed: false,
24
+ },
25
+ {
26
+ name: 'didReceiveSavingsGreen',
27
+ type: 'bool',
28
+ indexed: false,
29
+ },
30
+ {
31
+ name: 'outstandingUserDebt',
32
+ type: 'uint256',
33
+ indexed: false,
34
+ },
35
+ {
36
+ name: 'userCollateralVal',
37
+ type: 'uint256',
38
+ indexed: false,
39
+ },
40
+ {
41
+ name: 'maxUserDebt',
42
+ type: 'uint256',
43
+ indexed: false,
44
+ },
45
+ {
46
+ name: 'globalYieldRealized',
47
+ type: 'uint256',
48
+ indexed: false,
49
+ },
50
+ ],
51
+ anonymous: false,
52
+ type: 'event',
53
+ },
54
+ {
55
+ name: 'RepayDebt',
56
+ inputs: [
57
+ {
58
+ name: 'user',
59
+ type: 'address',
60
+ indexed: true,
61
+ },
62
+ {
63
+ name: 'repayValue',
64
+ type: 'uint256',
65
+ indexed: false,
66
+ },
67
+ {
68
+ name: 'repayType',
69
+ type: 'uint256',
70
+ indexed: false,
71
+ },
72
+ {
73
+ name: 'refundAmount',
74
+ type: 'uint256',
75
+ indexed: false,
76
+ },
77
+ {
78
+ name: 'refundWasSavingsGreen',
79
+ type: 'bool',
80
+ indexed: false,
81
+ },
82
+ {
83
+ name: 'outstandingUserDebt',
84
+ type: 'uint256',
85
+ indexed: false,
86
+ },
87
+ {
88
+ name: 'userCollateralVal',
89
+ type: 'uint256',
90
+ indexed: false,
91
+ },
92
+ {
93
+ name: 'maxUserDebt',
94
+ type: 'uint256',
95
+ indexed: false,
96
+ },
97
+ {
98
+ name: 'hasGoodDebtHealth',
99
+ type: 'bool',
100
+ indexed: false,
101
+ },
102
+ ],
103
+ anonymous: false,
104
+ type: 'event',
105
+ },
106
+ {
107
+ name: 'CollateralRedeemed',
108
+ inputs: [
109
+ {
110
+ name: 'user',
111
+ type: 'address',
112
+ indexed: true,
113
+ },
114
+ {
115
+ name: 'vaultId',
116
+ type: 'uint256',
117
+ indexed: false,
118
+ },
119
+ {
120
+ name: 'asset',
121
+ type: 'address',
122
+ indexed: true,
123
+ },
124
+ {
125
+ name: 'amount',
126
+ type: 'uint256',
127
+ indexed: false,
128
+ },
129
+ {
130
+ name: 'recipient',
131
+ type: 'address',
132
+ indexed: true,
133
+ },
134
+ {
135
+ name: 'caller',
136
+ type: 'address',
137
+ indexed: false,
138
+ },
139
+ {
140
+ name: 'repayValue',
141
+ type: 'uint256',
142
+ indexed: false,
143
+ },
144
+ {
145
+ name: 'hasGoodDebtHealth',
146
+ type: 'bool',
147
+ indexed: false,
148
+ },
149
+ ],
150
+ anonymous: false,
151
+ type: 'event',
152
+ },
153
+ {
154
+ name: 'DepartmentPauseModified',
155
+ inputs: [
156
+ {
157
+ name: 'isPaused',
158
+ type: 'bool',
159
+ indexed: false,
160
+ },
161
+ ],
162
+ anonymous: false,
163
+ type: 'event',
164
+ },
165
+ {
166
+ name: 'DepartmentFundsRecovered',
167
+ inputs: [
168
+ {
169
+ name: 'asset',
170
+ type: 'address',
171
+ indexed: true,
172
+ },
173
+ {
174
+ name: 'recipient',
175
+ type: 'address',
176
+ indexed: true,
177
+ },
178
+ {
179
+ name: 'balance',
180
+ type: 'uint256',
181
+ indexed: false,
182
+ },
183
+ ],
184
+ anonymous: false,
185
+ type: 'event',
186
+ },
187
+ {
188
+ stateMutability: 'view',
189
+ type: 'function',
190
+ name: 'getAddys',
191
+ inputs: [],
192
+ outputs: [
193
+ {
194
+ name: '',
195
+ type: 'tuple',
196
+ components: [
197
+ {
198
+ name: 'hq',
199
+ type: 'address',
200
+ },
201
+ {
202
+ name: 'greenToken',
203
+ type: 'address',
204
+ },
205
+ {
206
+ name: 'savingsGreen',
207
+ type: 'address',
208
+ },
209
+ {
210
+ name: 'ripeToken',
211
+ type: 'address',
212
+ },
213
+ {
214
+ name: 'ledger',
215
+ type: 'address',
216
+ },
217
+ {
218
+ name: 'missionControl',
219
+ type: 'address',
220
+ },
221
+ {
222
+ name: 'switchboard',
223
+ type: 'address',
224
+ },
225
+ {
226
+ name: 'priceDesk',
227
+ type: 'address',
228
+ },
229
+ {
230
+ name: 'vaultBook',
231
+ type: 'address',
232
+ },
233
+ {
234
+ name: 'auctionHouse',
235
+ type: 'address',
236
+ },
237
+ {
238
+ name: 'auctionHouseNft',
239
+ type: 'address',
240
+ },
241
+ {
242
+ name: 'boardroom',
243
+ type: 'address',
244
+ },
245
+ {
246
+ name: 'bondRoom',
247
+ type: 'address',
248
+ },
249
+ {
250
+ name: 'creditEngine',
251
+ type: 'address',
252
+ },
253
+ {
254
+ name: 'endaoment',
255
+ type: 'address',
256
+ },
257
+ {
258
+ name: 'humanResources',
259
+ type: 'address',
260
+ },
261
+ {
262
+ name: 'lootbox',
263
+ type: 'address',
264
+ },
265
+ {
266
+ name: 'teller',
267
+ type: 'address',
268
+ },
269
+ ],
270
+ },
271
+ ],
272
+ },
273
+ {
274
+ stateMutability: 'view',
275
+ type: 'function',
276
+ name: 'getRipeHq',
277
+ inputs: [],
278
+ outputs: [
279
+ {
280
+ name: '',
281
+ type: 'address',
282
+ },
283
+ ],
284
+ },
285
+ {
286
+ stateMutability: 'view',
287
+ type: 'function',
288
+ name: 'canMintGreen',
289
+ inputs: [],
290
+ outputs: [
291
+ {
292
+ name: '',
293
+ type: 'bool',
294
+ },
295
+ ],
296
+ },
297
+ {
298
+ stateMutability: 'view',
299
+ type: 'function',
300
+ name: 'canMintRipe',
301
+ inputs: [],
302
+ outputs: [
303
+ {
304
+ name: '',
305
+ type: 'bool',
306
+ },
307
+ ],
308
+ },
309
+ {
310
+ stateMutability: 'nonpayable',
311
+ type: 'function',
312
+ name: 'pause',
313
+ inputs: [
314
+ {
315
+ name: '_shouldPause',
316
+ type: 'bool',
317
+ },
318
+ ],
319
+ outputs: [],
320
+ },
321
+ {
322
+ stateMutability: 'nonpayable',
323
+ type: 'function',
324
+ name: 'recoverFunds',
325
+ inputs: [
326
+ {
327
+ name: '_recipient',
328
+ type: 'address',
329
+ },
330
+ {
331
+ name: '_asset',
332
+ type: 'address',
333
+ },
334
+ ],
335
+ outputs: [],
336
+ },
337
+ {
338
+ stateMutability: 'nonpayable',
339
+ type: 'function',
340
+ name: 'recoverFundsMany',
341
+ inputs: [
342
+ {
343
+ name: '_recipient',
344
+ type: 'address',
345
+ },
346
+ {
347
+ name: '_assets',
348
+ type: 'address[]',
349
+ },
350
+ ],
351
+ outputs: [],
352
+ },
353
+ {
354
+ stateMutability: 'view',
355
+ type: 'function',
356
+ name: 'isPaused',
357
+ inputs: [],
358
+ outputs: [
359
+ {
360
+ name: '',
361
+ type: 'bool',
362
+ },
363
+ ],
364
+ },
365
+ {
366
+ stateMutability: 'nonpayable',
367
+ type: 'function',
368
+ name: 'borrowForUser',
369
+ inputs: [
370
+ {
371
+ name: '_user',
372
+ type: 'address',
373
+ },
374
+ {
375
+ name: '_greenAmount',
376
+ type: 'uint256',
377
+ },
378
+ {
379
+ name: '_wantsSavingsGreen',
380
+ type: 'bool',
381
+ },
382
+ {
383
+ name: '_shouldEnterStabPool',
384
+ type: 'bool',
385
+ },
386
+ {
387
+ name: '_caller',
388
+ type: 'address',
389
+ },
390
+ ],
391
+ outputs: [
392
+ {
393
+ name: '',
394
+ type: 'uint256',
395
+ },
396
+ ],
397
+ },
398
+ {
399
+ stateMutability: 'nonpayable',
400
+ type: 'function',
401
+ name: 'borrowForUser',
402
+ inputs: [
403
+ {
404
+ name: '_user',
405
+ type: 'address',
406
+ },
407
+ {
408
+ name: '_greenAmount',
409
+ type: 'uint256',
410
+ },
411
+ {
412
+ name: '_wantsSavingsGreen',
413
+ type: 'bool',
414
+ },
415
+ {
416
+ name: '_shouldEnterStabPool',
417
+ type: 'bool',
418
+ },
419
+ {
420
+ name: '_caller',
421
+ type: 'address',
422
+ },
423
+ {
424
+ name: '_a',
425
+ type: 'tuple',
426
+ components: [
427
+ {
428
+ name: 'hq',
429
+ type: 'address',
430
+ },
431
+ {
432
+ name: 'greenToken',
433
+ type: 'address',
434
+ },
435
+ {
436
+ name: 'savingsGreen',
437
+ type: 'address',
438
+ },
439
+ {
440
+ name: 'ripeToken',
441
+ type: 'address',
442
+ },
443
+ {
444
+ name: 'ledger',
445
+ type: 'address',
446
+ },
447
+ {
448
+ name: 'missionControl',
449
+ type: 'address',
450
+ },
451
+ {
452
+ name: 'switchboard',
453
+ type: 'address',
454
+ },
455
+ {
456
+ name: 'priceDesk',
457
+ type: 'address',
458
+ },
459
+ {
460
+ name: 'vaultBook',
461
+ type: 'address',
462
+ },
463
+ {
464
+ name: 'auctionHouse',
465
+ type: 'address',
466
+ },
467
+ {
468
+ name: 'auctionHouseNft',
469
+ type: 'address',
470
+ },
471
+ {
472
+ name: 'boardroom',
473
+ type: 'address',
474
+ },
475
+ {
476
+ name: 'bondRoom',
477
+ type: 'address',
478
+ },
479
+ {
480
+ name: 'creditEngine',
481
+ type: 'address',
482
+ },
483
+ {
484
+ name: 'endaoment',
485
+ type: 'address',
486
+ },
487
+ {
488
+ name: 'humanResources',
489
+ type: 'address',
490
+ },
491
+ {
492
+ name: 'lootbox',
493
+ type: 'address',
494
+ },
495
+ {
496
+ name: 'teller',
497
+ type: 'address',
498
+ },
499
+ ],
500
+ },
501
+ ],
502
+ outputs: [
503
+ {
504
+ name: '',
505
+ type: 'uint256',
506
+ },
507
+ ],
508
+ },
509
+ {
510
+ stateMutability: 'view',
511
+ type: 'function',
512
+ name: 'getMaxBorrowAmount',
513
+ inputs: [
514
+ {
515
+ name: '_user',
516
+ type: 'address',
517
+ },
518
+ ],
519
+ outputs: [
520
+ {
521
+ name: '',
522
+ type: 'uint256',
523
+ },
524
+ ],
525
+ },
526
+ {
527
+ stateMutability: 'nonpayable',
528
+ type: 'function',
529
+ name: 'repayForUser',
530
+ inputs: [
531
+ {
532
+ name: '_user',
533
+ type: 'address',
534
+ },
535
+ {
536
+ name: '_greenAmount',
537
+ type: 'uint256',
538
+ },
539
+ {
540
+ name: '_shouldRefundSavingsGreen',
541
+ type: 'bool',
542
+ },
543
+ {
544
+ name: '_caller',
545
+ type: 'address',
546
+ },
547
+ ],
548
+ outputs: [
549
+ {
550
+ name: '',
551
+ type: 'bool',
552
+ },
553
+ ],
554
+ },
555
+ {
556
+ stateMutability: 'nonpayable',
557
+ type: 'function',
558
+ name: 'repayForUser',
559
+ inputs: [
560
+ {
561
+ name: '_user',
562
+ type: 'address',
563
+ },
564
+ {
565
+ name: '_greenAmount',
566
+ type: 'uint256',
567
+ },
568
+ {
569
+ name: '_shouldRefundSavingsGreen',
570
+ type: 'bool',
571
+ },
572
+ {
573
+ name: '_caller',
574
+ type: 'address',
575
+ },
576
+ {
577
+ name: '_a',
578
+ type: 'tuple',
579
+ components: [
580
+ {
581
+ name: 'hq',
582
+ type: 'address',
583
+ },
584
+ {
585
+ name: 'greenToken',
586
+ type: 'address',
587
+ },
588
+ {
589
+ name: 'savingsGreen',
590
+ type: 'address',
591
+ },
592
+ {
593
+ name: 'ripeToken',
594
+ type: 'address',
595
+ },
596
+ {
597
+ name: 'ledger',
598
+ type: 'address',
599
+ },
600
+ {
601
+ name: 'missionControl',
602
+ type: 'address',
603
+ },
604
+ {
605
+ name: 'switchboard',
606
+ type: 'address',
607
+ },
608
+ {
609
+ name: 'priceDesk',
610
+ type: 'address',
611
+ },
612
+ {
613
+ name: 'vaultBook',
614
+ type: 'address',
615
+ },
616
+ {
617
+ name: 'auctionHouse',
618
+ type: 'address',
619
+ },
620
+ {
621
+ name: 'auctionHouseNft',
622
+ type: 'address',
623
+ },
624
+ {
625
+ name: 'boardroom',
626
+ type: 'address',
627
+ },
628
+ {
629
+ name: 'bondRoom',
630
+ type: 'address',
631
+ },
632
+ {
633
+ name: 'creditEngine',
634
+ type: 'address',
635
+ },
636
+ {
637
+ name: 'endaoment',
638
+ type: 'address',
639
+ },
640
+ {
641
+ name: 'humanResources',
642
+ type: 'address',
643
+ },
644
+ {
645
+ name: 'lootbox',
646
+ type: 'address',
647
+ },
648
+ {
649
+ name: 'teller',
650
+ type: 'address',
651
+ },
652
+ ],
653
+ },
654
+ ],
655
+ outputs: [
656
+ {
657
+ name: '',
658
+ type: 'bool',
659
+ },
660
+ ],
661
+ },
662
+ {
663
+ stateMutability: 'nonpayable',
664
+ type: 'function',
665
+ name: 'repayDuringLiquidation',
666
+ inputs: [
667
+ {
668
+ name: '_liqUser',
669
+ type: 'address',
670
+ },
671
+ {
672
+ name: '_userDebt',
673
+ type: 'tuple',
674
+ components: [
675
+ {
676
+ name: 'amount',
677
+ type: 'uint256',
678
+ },
679
+ {
680
+ name: 'principal',
681
+ type: 'uint256',
682
+ },
683
+ {
684
+ name: 'debtTerms',
685
+ type: 'tuple',
686
+ components: [
687
+ {
688
+ name: 'ltv',
689
+ type: 'uint256',
690
+ },
691
+ {
692
+ name: 'redemptionThreshold',
693
+ type: 'uint256',
694
+ },
695
+ {
696
+ name: 'liqThreshold',
697
+ type: 'uint256',
698
+ },
699
+ {
700
+ name: 'liqFee',
701
+ type: 'uint256',
702
+ },
703
+ {
704
+ name: 'borrowRate',
705
+ type: 'uint256',
706
+ },
707
+ {
708
+ name: 'daowry',
709
+ type: 'uint256',
710
+ },
711
+ ],
712
+ },
713
+ {
714
+ name: 'lastTimestamp',
715
+ type: 'uint256',
716
+ },
717
+ {
718
+ name: 'inLiquidation',
719
+ type: 'bool',
720
+ },
721
+ ],
722
+ },
723
+ {
724
+ name: '_repayValue',
725
+ type: 'uint256',
726
+ },
727
+ {
728
+ name: '_newInterest',
729
+ type: 'uint256',
730
+ },
731
+ ],
732
+ outputs: [
733
+ {
734
+ name: '',
735
+ type: 'bool',
736
+ },
737
+ ],
738
+ },
739
+ {
740
+ stateMutability: 'nonpayable',
741
+ type: 'function',
742
+ name: 'repayDuringLiquidation',
743
+ inputs: [
744
+ {
745
+ name: '_liqUser',
746
+ type: 'address',
747
+ },
748
+ {
749
+ name: '_userDebt',
750
+ type: 'tuple',
751
+ components: [
752
+ {
753
+ name: 'amount',
754
+ type: 'uint256',
755
+ },
756
+ {
757
+ name: 'principal',
758
+ type: 'uint256',
759
+ },
760
+ {
761
+ name: 'debtTerms',
762
+ type: 'tuple',
763
+ components: [
764
+ {
765
+ name: 'ltv',
766
+ type: 'uint256',
767
+ },
768
+ {
769
+ name: 'redemptionThreshold',
770
+ type: 'uint256',
771
+ },
772
+ {
773
+ name: 'liqThreshold',
774
+ type: 'uint256',
775
+ },
776
+ {
777
+ name: 'liqFee',
778
+ type: 'uint256',
779
+ },
780
+ {
781
+ name: 'borrowRate',
782
+ type: 'uint256',
783
+ },
784
+ {
785
+ name: 'daowry',
786
+ type: 'uint256',
787
+ },
788
+ ],
789
+ },
790
+ {
791
+ name: 'lastTimestamp',
792
+ type: 'uint256',
793
+ },
794
+ {
795
+ name: 'inLiquidation',
796
+ type: 'bool',
797
+ },
798
+ ],
799
+ },
800
+ {
801
+ name: '_repayValue',
802
+ type: 'uint256',
803
+ },
804
+ {
805
+ name: '_newInterest',
806
+ type: 'uint256',
807
+ },
808
+ {
809
+ name: '_a',
810
+ type: 'tuple',
811
+ components: [
812
+ {
813
+ name: 'hq',
814
+ type: 'address',
815
+ },
816
+ {
817
+ name: 'greenToken',
818
+ type: 'address',
819
+ },
820
+ {
821
+ name: 'savingsGreen',
822
+ type: 'address',
823
+ },
824
+ {
825
+ name: 'ripeToken',
826
+ type: 'address',
827
+ },
828
+ {
829
+ name: 'ledger',
830
+ type: 'address',
831
+ },
832
+ {
833
+ name: 'missionControl',
834
+ type: 'address',
835
+ },
836
+ {
837
+ name: 'switchboard',
838
+ type: 'address',
839
+ },
840
+ {
841
+ name: 'priceDesk',
842
+ type: 'address',
843
+ },
844
+ {
845
+ name: 'vaultBook',
846
+ type: 'address',
847
+ },
848
+ {
849
+ name: 'auctionHouse',
850
+ type: 'address',
851
+ },
852
+ {
853
+ name: 'auctionHouseNft',
854
+ type: 'address',
855
+ },
856
+ {
857
+ name: 'boardroom',
858
+ type: 'address',
859
+ },
860
+ {
861
+ name: 'bondRoom',
862
+ type: 'address',
863
+ },
864
+ {
865
+ name: 'creditEngine',
866
+ type: 'address',
867
+ },
868
+ {
869
+ name: 'endaoment',
870
+ type: 'address',
871
+ },
872
+ {
873
+ name: 'humanResources',
874
+ type: 'address',
875
+ },
876
+ {
877
+ name: 'lootbox',
878
+ type: 'address',
879
+ },
880
+ {
881
+ name: 'teller',
882
+ type: 'address',
883
+ },
884
+ ],
885
+ },
886
+ ],
887
+ outputs: [
888
+ {
889
+ name: '',
890
+ type: 'bool',
891
+ },
892
+ ],
893
+ },
894
+ {
895
+ stateMutability: 'nonpayable',
896
+ type: 'function',
897
+ name: 'repayDuringAuctionPurchase',
898
+ inputs: [
899
+ {
900
+ name: '_liqUser',
901
+ type: 'address',
902
+ },
903
+ {
904
+ name: '_repayValue',
905
+ type: 'uint256',
906
+ },
907
+ ],
908
+ outputs: [
909
+ {
910
+ name: '',
911
+ type: 'bool',
912
+ },
913
+ ],
914
+ },
915
+ {
916
+ stateMutability: 'nonpayable',
917
+ type: 'function',
918
+ name: 'repayDuringAuctionPurchase',
919
+ inputs: [
920
+ {
921
+ name: '_liqUser',
922
+ type: 'address',
923
+ },
924
+ {
925
+ name: '_repayValue',
926
+ type: 'uint256',
927
+ },
928
+ {
929
+ name: '_a',
930
+ type: 'tuple',
931
+ components: [
932
+ {
933
+ name: 'hq',
934
+ type: 'address',
935
+ },
936
+ {
937
+ name: 'greenToken',
938
+ type: 'address',
939
+ },
940
+ {
941
+ name: 'savingsGreen',
942
+ type: 'address',
943
+ },
944
+ {
945
+ name: 'ripeToken',
946
+ type: 'address',
947
+ },
948
+ {
949
+ name: 'ledger',
950
+ type: 'address',
951
+ },
952
+ {
953
+ name: 'missionControl',
954
+ type: 'address',
955
+ },
956
+ {
957
+ name: 'switchboard',
958
+ type: 'address',
959
+ },
960
+ {
961
+ name: 'priceDesk',
962
+ type: 'address',
963
+ },
964
+ {
965
+ name: 'vaultBook',
966
+ type: 'address',
967
+ },
968
+ {
969
+ name: 'auctionHouse',
970
+ type: 'address',
971
+ },
972
+ {
973
+ name: 'auctionHouseNft',
974
+ type: 'address',
975
+ },
976
+ {
977
+ name: 'boardroom',
978
+ type: 'address',
979
+ },
980
+ {
981
+ name: 'bondRoom',
982
+ type: 'address',
983
+ },
984
+ {
985
+ name: 'creditEngine',
986
+ type: 'address',
987
+ },
988
+ {
989
+ name: 'endaoment',
990
+ type: 'address',
991
+ },
992
+ {
993
+ name: 'humanResources',
994
+ type: 'address',
995
+ },
996
+ {
997
+ name: 'lootbox',
998
+ type: 'address',
999
+ },
1000
+ {
1001
+ name: 'teller',
1002
+ type: 'address',
1003
+ },
1004
+ ],
1005
+ },
1006
+ ],
1007
+ outputs: [
1008
+ {
1009
+ name: '',
1010
+ type: 'bool',
1011
+ },
1012
+ ],
1013
+ },
1014
+ {
1015
+ stateMutability: 'nonpayable',
1016
+ type: 'function',
1017
+ name: 'redeemCollateralFromMany',
1018
+ inputs: [
1019
+ {
1020
+ name: '_redemptions',
1021
+ type: 'tuple[]',
1022
+ components: [
1023
+ {
1024
+ name: 'user',
1025
+ type: 'address',
1026
+ },
1027
+ {
1028
+ name: 'vaultId',
1029
+ type: 'uint256',
1030
+ },
1031
+ {
1032
+ name: 'asset',
1033
+ type: 'address',
1034
+ },
1035
+ {
1036
+ name: 'maxGreenAmount',
1037
+ type: 'uint256',
1038
+ },
1039
+ ],
1040
+ },
1041
+ {
1042
+ name: '_greenAmount',
1043
+ type: 'uint256',
1044
+ },
1045
+ {
1046
+ name: '_recipient',
1047
+ type: 'address',
1048
+ },
1049
+ {
1050
+ name: '_caller',
1051
+ type: 'address',
1052
+ },
1053
+ {
1054
+ name: '_shouldTransferBalance',
1055
+ type: 'bool',
1056
+ },
1057
+ {
1058
+ name: '_shouldRefundSavingsGreen',
1059
+ type: 'bool',
1060
+ },
1061
+ ],
1062
+ outputs: [
1063
+ {
1064
+ name: '',
1065
+ type: 'uint256',
1066
+ },
1067
+ ],
1068
+ },
1069
+ {
1070
+ stateMutability: 'nonpayable',
1071
+ type: 'function',
1072
+ name: 'redeemCollateralFromMany',
1073
+ inputs: [
1074
+ {
1075
+ name: '_redemptions',
1076
+ type: 'tuple[]',
1077
+ components: [
1078
+ {
1079
+ name: 'user',
1080
+ type: 'address',
1081
+ },
1082
+ {
1083
+ name: 'vaultId',
1084
+ type: 'uint256',
1085
+ },
1086
+ {
1087
+ name: 'asset',
1088
+ type: 'address',
1089
+ },
1090
+ {
1091
+ name: 'maxGreenAmount',
1092
+ type: 'uint256',
1093
+ },
1094
+ ],
1095
+ },
1096
+ {
1097
+ name: '_greenAmount',
1098
+ type: 'uint256',
1099
+ },
1100
+ {
1101
+ name: '_recipient',
1102
+ type: 'address',
1103
+ },
1104
+ {
1105
+ name: '_caller',
1106
+ type: 'address',
1107
+ },
1108
+ {
1109
+ name: '_shouldTransferBalance',
1110
+ type: 'bool',
1111
+ },
1112
+ {
1113
+ name: '_shouldRefundSavingsGreen',
1114
+ type: 'bool',
1115
+ },
1116
+ {
1117
+ name: '_a',
1118
+ type: 'tuple',
1119
+ components: [
1120
+ {
1121
+ name: 'hq',
1122
+ type: 'address',
1123
+ },
1124
+ {
1125
+ name: 'greenToken',
1126
+ type: 'address',
1127
+ },
1128
+ {
1129
+ name: 'savingsGreen',
1130
+ type: 'address',
1131
+ },
1132
+ {
1133
+ name: 'ripeToken',
1134
+ type: 'address',
1135
+ },
1136
+ {
1137
+ name: 'ledger',
1138
+ type: 'address',
1139
+ },
1140
+ {
1141
+ name: 'missionControl',
1142
+ type: 'address',
1143
+ },
1144
+ {
1145
+ name: 'switchboard',
1146
+ type: 'address',
1147
+ },
1148
+ {
1149
+ name: 'priceDesk',
1150
+ type: 'address',
1151
+ },
1152
+ {
1153
+ name: 'vaultBook',
1154
+ type: 'address',
1155
+ },
1156
+ {
1157
+ name: 'auctionHouse',
1158
+ type: 'address',
1159
+ },
1160
+ {
1161
+ name: 'auctionHouseNft',
1162
+ type: 'address',
1163
+ },
1164
+ {
1165
+ name: 'boardroom',
1166
+ type: 'address',
1167
+ },
1168
+ {
1169
+ name: 'bondRoom',
1170
+ type: 'address',
1171
+ },
1172
+ {
1173
+ name: 'creditEngine',
1174
+ type: 'address',
1175
+ },
1176
+ {
1177
+ name: 'endaoment',
1178
+ type: 'address',
1179
+ },
1180
+ {
1181
+ name: 'humanResources',
1182
+ type: 'address',
1183
+ },
1184
+ {
1185
+ name: 'lootbox',
1186
+ type: 'address',
1187
+ },
1188
+ {
1189
+ name: 'teller',
1190
+ type: 'address',
1191
+ },
1192
+ ],
1193
+ },
1194
+ ],
1195
+ outputs: [
1196
+ {
1197
+ name: '',
1198
+ type: 'uint256',
1199
+ },
1200
+ ],
1201
+ },
1202
+ {
1203
+ stateMutability: 'view',
1204
+ type: 'function',
1205
+ name: 'getMaxRedeemValue',
1206
+ inputs: [
1207
+ {
1208
+ name: '_user',
1209
+ type: 'address',
1210
+ },
1211
+ ],
1212
+ outputs: [
1213
+ {
1214
+ name: '',
1215
+ type: 'uint256',
1216
+ },
1217
+ ],
1218
+ },
1219
+ {
1220
+ stateMutability: 'view',
1221
+ type: 'function',
1222
+ name: 'getCollateralValue',
1223
+ inputs: [
1224
+ {
1225
+ name: '_user',
1226
+ type: 'address',
1227
+ },
1228
+ ],
1229
+ outputs: [
1230
+ {
1231
+ name: '',
1232
+ type: 'uint256',
1233
+ },
1234
+ ],
1235
+ },
1236
+ {
1237
+ stateMutability: 'view',
1238
+ type: 'function',
1239
+ name: 'getUserBorrowTerms',
1240
+ inputs: [
1241
+ {
1242
+ name: '_user',
1243
+ type: 'address',
1244
+ },
1245
+ {
1246
+ name: '_shouldRaise',
1247
+ type: 'bool',
1248
+ },
1249
+ ],
1250
+ outputs: [
1251
+ {
1252
+ name: '',
1253
+ type: 'tuple',
1254
+ components: [
1255
+ {
1256
+ name: 'collateralVal',
1257
+ type: 'uint256',
1258
+ },
1259
+ {
1260
+ name: 'totalMaxDebt',
1261
+ type: 'uint256',
1262
+ },
1263
+ {
1264
+ name: 'debtTerms',
1265
+ type: 'tuple',
1266
+ components: [
1267
+ {
1268
+ name: 'ltv',
1269
+ type: 'uint256',
1270
+ },
1271
+ {
1272
+ name: 'redemptionThreshold',
1273
+ type: 'uint256',
1274
+ },
1275
+ {
1276
+ name: 'liqThreshold',
1277
+ type: 'uint256',
1278
+ },
1279
+ {
1280
+ name: 'liqFee',
1281
+ type: 'uint256',
1282
+ },
1283
+ {
1284
+ name: 'borrowRate',
1285
+ type: 'uint256',
1286
+ },
1287
+ {
1288
+ name: 'daowry',
1289
+ type: 'uint256',
1290
+ },
1291
+ ],
1292
+ },
1293
+ ],
1294
+ },
1295
+ ],
1296
+ },
1297
+ {
1298
+ stateMutability: 'view',
1299
+ type: 'function',
1300
+ name: 'getUserBorrowTerms',
1301
+ inputs: [
1302
+ {
1303
+ name: '_user',
1304
+ type: 'address',
1305
+ },
1306
+ {
1307
+ name: '_shouldRaise',
1308
+ type: 'bool',
1309
+ },
1310
+ {
1311
+ name: '_skipVaultId',
1312
+ type: 'uint256',
1313
+ },
1314
+ ],
1315
+ outputs: [
1316
+ {
1317
+ name: '',
1318
+ type: 'tuple',
1319
+ components: [
1320
+ {
1321
+ name: 'collateralVal',
1322
+ type: 'uint256',
1323
+ },
1324
+ {
1325
+ name: 'totalMaxDebt',
1326
+ type: 'uint256',
1327
+ },
1328
+ {
1329
+ name: 'debtTerms',
1330
+ type: 'tuple',
1331
+ components: [
1332
+ {
1333
+ name: 'ltv',
1334
+ type: 'uint256',
1335
+ },
1336
+ {
1337
+ name: 'redemptionThreshold',
1338
+ type: 'uint256',
1339
+ },
1340
+ {
1341
+ name: 'liqThreshold',
1342
+ type: 'uint256',
1343
+ },
1344
+ {
1345
+ name: 'liqFee',
1346
+ type: 'uint256',
1347
+ },
1348
+ {
1349
+ name: 'borrowRate',
1350
+ type: 'uint256',
1351
+ },
1352
+ {
1353
+ name: 'daowry',
1354
+ type: 'uint256',
1355
+ },
1356
+ ],
1357
+ },
1358
+ ],
1359
+ },
1360
+ ],
1361
+ },
1362
+ {
1363
+ stateMutability: 'view',
1364
+ type: 'function',
1365
+ name: 'getUserBorrowTerms',
1366
+ inputs: [
1367
+ {
1368
+ name: '_user',
1369
+ type: 'address',
1370
+ },
1371
+ {
1372
+ name: '_shouldRaise',
1373
+ type: 'bool',
1374
+ },
1375
+ {
1376
+ name: '_skipVaultId',
1377
+ type: 'uint256',
1378
+ },
1379
+ {
1380
+ name: '_skipAsset',
1381
+ type: 'address',
1382
+ },
1383
+ ],
1384
+ outputs: [
1385
+ {
1386
+ name: '',
1387
+ type: 'tuple',
1388
+ components: [
1389
+ {
1390
+ name: 'collateralVal',
1391
+ type: 'uint256',
1392
+ },
1393
+ {
1394
+ name: 'totalMaxDebt',
1395
+ type: 'uint256',
1396
+ },
1397
+ {
1398
+ name: 'debtTerms',
1399
+ type: 'tuple',
1400
+ components: [
1401
+ {
1402
+ name: 'ltv',
1403
+ type: 'uint256',
1404
+ },
1405
+ {
1406
+ name: 'redemptionThreshold',
1407
+ type: 'uint256',
1408
+ },
1409
+ {
1410
+ name: 'liqThreshold',
1411
+ type: 'uint256',
1412
+ },
1413
+ {
1414
+ name: 'liqFee',
1415
+ type: 'uint256',
1416
+ },
1417
+ {
1418
+ name: 'borrowRate',
1419
+ type: 'uint256',
1420
+ },
1421
+ {
1422
+ name: 'daowry',
1423
+ type: 'uint256',
1424
+ },
1425
+ ],
1426
+ },
1427
+ ],
1428
+ },
1429
+ ],
1430
+ },
1431
+ {
1432
+ stateMutability: 'view',
1433
+ type: 'function',
1434
+ name: 'getUserBorrowTerms',
1435
+ inputs: [
1436
+ {
1437
+ name: '_user',
1438
+ type: 'address',
1439
+ },
1440
+ {
1441
+ name: '_shouldRaise',
1442
+ type: 'bool',
1443
+ },
1444
+ {
1445
+ name: '_skipVaultId',
1446
+ type: 'uint256',
1447
+ },
1448
+ {
1449
+ name: '_skipAsset',
1450
+ type: 'address',
1451
+ },
1452
+ {
1453
+ name: '_a',
1454
+ type: 'tuple',
1455
+ components: [
1456
+ {
1457
+ name: 'hq',
1458
+ type: 'address',
1459
+ },
1460
+ {
1461
+ name: 'greenToken',
1462
+ type: 'address',
1463
+ },
1464
+ {
1465
+ name: 'savingsGreen',
1466
+ type: 'address',
1467
+ },
1468
+ {
1469
+ name: 'ripeToken',
1470
+ type: 'address',
1471
+ },
1472
+ {
1473
+ name: 'ledger',
1474
+ type: 'address',
1475
+ },
1476
+ {
1477
+ name: 'missionControl',
1478
+ type: 'address',
1479
+ },
1480
+ {
1481
+ name: 'switchboard',
1482
+ type: 'address',
1483
+ },
1484
+ {
1485
+ name: 'priceDesk',
1486
+ type: 'address',
1487
+ },
1488
+ {
1489
+ name: 'vaultBook',
1490
+ type: 'address',
1491
+ },
1492
+ {
1493
+ name: 'auctionHouse',
1494
+ type: 'address',
1495
+ },
1496
+ {
1497
+ name: 'auctionHouseNft',
1498
+ type: 'address',
1499
+ },
1500
+ {
1501
+ name: 'boardroom',
1502
+ type: 'address',
1503
+ },
1504
+ {
1505
+ name: 'bondRoom',
1506
+ type: 'address',
1507
+ },
1508
+ {
1509
+ name: 'creditEngine',
1510
+ type: 'address',
1511
+ },
1512
+ {
1513
+ name: 'endaoment',
1514
+ type: 'address',
1515
+ },
1516
+ {
1517
+ name: 'humanResources',
1518
+ type: 'address',
1519
+ },
1520
+ {
1521
+ name: 'lootbox',
1522
+ type: 'address',
1523
+ },
1524
+ {
1525
+ name: 'teller',
1526
+ type: 'address',
1527
+ },
1528
+ ],
1529
+ },
1530
+ ],
1531
+ outputs: [
1532
+ {
1533
+ name: '',
1534
+ type: 'tuple',
1535
+ components: [
1536
+ {
1537
+ name: 'collateralVal',
1538
+ type: 'uint256',
1539
+ },
1540
+ {
1541
+ name: 'totalMaxDebt',
1542
+ type: 'uint256',
1543
+ },
1544
+ {
1545
+ name: 'debtTerms',
1546
+ type: 'tuple',
1547
+ components: [
1548
+ {
1549
+ name: 'ltv',
1550
+ type: 'uint256',
1551
+ },
1552
+ {
1553
+ name: 'redemptionThreshold',
1554
+ type: 'uint256',
1555
+ },
1556
+ {
1557
+ name: 'liqThreshold',
1558
+ type: 'uint256',
1559
+ },
1560
+ {
1561
+ name: 'liqFee',
1562
+ type: 'uint256',
1563
+ },
1564
+ {
1565
+ name: 'borrowRate',
1566
+ type: 'uint256',
1567
+ },
1568
+ {
1569
+ name: 'daowry',
1570
+ type: 'uint256',
1571
+ },
1572
+ ],
1573
+ },
1574
+ ],
1575
+ },
1576
+ ],
1577
+ },
1578
+ {
1579
+ stateMutability: 'view',
1580
+ type: 'function',
1581
+ name: 'getLatestUserDebtAndTerms',
1582
+ inputs: [
1583
+ {
1584
+ name: '_user',
1585
+ type: 'address',
1586
+ },
1587
+ {
1588
+ name: '_shouldRaise',
1589
+ type: 'bool',
1590
+ },
1591
+ ],
1592
+ outputs: [
1593
+ {
1594
+ name: '',
1595
+ type: 'tuple',
1596
+ components: [
1597
+ {
1598
+ name: 'amount',
1599
+ type: 'uint256',
1600
+ },
1601
+ {
1602
+ name: 'principal',
1603
+ type: 'uint256',
1604
+ },
1605
+ {
1606
+ name: 'debtTerms',
1607
+ type: 'tuple',
1608
+ components: [
1609
+ {
1610
+ name: 'ltv',
1611
+ type: 'uint256',
1612
+ },
1613
+ {
1614
+ name: 'redemptionThreshold',
1615
+ type: 'uint256',
1616
+ },
1617
+ {
1618
+ name: 'liqThreshold',
1619
+ type: 'uint256',
1620
+ },
1621
+ {
1622
+ name: 'liqFee',
1623
+ type: 'uint256',
1624
+ },
1625
+ {
1626
+ name: 'borrowRate',
1627
+ type: 'uint256',
1628
+ },
1629
+ {
1630
+ name: 'daowry',
1631
+ type: 'uint256',
1632
+ },
1633
+ ],
1634
+ },
1635
+ {
1636
+ name: 'lastTimestamp',
1637
+ type: 'uint256',
1638
+ },
1639
+ {
1640
+ name: 'inLiquidation',
1641
+ type: 'bool',
1642
+ },
1643
+ ],
1644
+ },
1645
+ {
1646
+ name: '',
1647
+ type: 'tuple',
1648
+ components: [
1649
+ {
1650
+ name: 'collateralVal',
1651
+ type: 'uint256',
1652
+ },
1653
+ {
1654
+ name: 'totalMaxDebt',
1655
+ type: 'uint256',
1656
+ },
1657
+ {
1658
+ name: 'debtTerms',
1659
+ type: 'tuple',
1660
+ components: [
1661
+ {
1662
+ name: 'ltv',
1663
+ type: 'uint256',
1664
+ },
1665
+ {
1666
+ name: 'redemptionThreshold',
1667
+ type: 'uint256',
1668
+ },
1669
+ {
1670
+ name: 'liqThreshold',
1671
+ type: 'uint256',
1672
+ },
1673
+ {
1674
+ name: 'liqFee',
1675
+ type: 'uint256',
1676
+ },
1677
+ {
1678
+ name: 'borrowRate',
1679
+ type: 'uint256',
1680
+ },
1681
+ {
1682
+ name: 'daowry',
1683
+ type: 'uint256',
1684
+ },
1685
+ ],
1686
+ },
1687
+ ],
1688
+ },
1689
+ {
1690
+ name: '',
1691
+ type: 'uint256',
1692
+ },
1693
+ ],
1694
+ },
1695
+ {
1696
+ stateMutability: 'view',
1697
+ type: 'function',
1698
+ name: 'getLatestUserDebtAndTerms',
1699
+ inputs: [
1700
+ {
1701
+ name: '_user',
1702
+ type: 'address',
1703
+ },
1704
+ {
1705
+ name: '_shouldRaise',
1706
+ type: 'bool',
1707
+ },
1708
+ {
1709
+ name: '_a',
1710
+ type: 'tuple',
1711
+ components: [
1712
+ {
1713
+ name: 'hq',
1714
+ type: 'address',
1715
+ },
1716
+ {
1717
+ name: 'greenToken',
1718
+ type: 'address',
1719
+ },
1720
+ {
1721
+ name: 'savingsGreen',
1722
+ type: 'address',
1723
+ },
1724
+ {
1725
+ name: 'ripeToken',
1726
+ type: 'address',
1727
+ },
1728
+ {
1729
+ name: 'ledger',
1730
+ type: 'address',
1731
+ },
1732
+ {
1733
+ name: 'missionControl',
1734
+ type: 'address',
1735
+ },
1736
+ {
1737
+ name: 'switchboard',
1738
+ type: 'address',
1739
+ },
1740
+ {
1741
+ name: 'priceDesk',
1742
+ type: 'address',
1743
+ },
1744
+ {
1745
+ name: 'vaultBook',
1746
+ type: 'address',
1747
+ },
1748
+ {
1749
+ name: 'auctionHouse',
1750
+ type: 'address',
1751
+ },
1752
+ {
1753
+ name: 'auctionHouseNft',
1754
+ type: 'address',
1755
+ },
1756
+ {
1757
+ name: 'boardroom',
1758
+ type: 'address',
1759
+ },
1760
+ {
1761
+ name: 'bondRoom',
1762
+ type: 'address',
1763
+ },
1764
+ {
1765
+ name: 'creditEngine',
1766
+ type: 'address',
1767
+ },
1768
+ {
1769
+ name: 'endaoment',
1770
+ type: 'address',
1771
+ },
1772
+ {
1773
+ name: 'humanResources',
1774
+ type: 'address',
1775
+ },
1776
+ {
1777
+ name: 'lootbox',
1778
+ type: 'address',
1779
+ },
1780
+ {
1781
+ name: 'teller',
1782
+ type: 'address',
1783
+ },
1784
+ ],
1785
+ },
1786
+ ],
1787
+ outputs: [
1788
+ {
1789
+ name: '',
1790
+ type: 'tuple',
1791
+ components: [
1792
+ {
1793
+ name: 'amount',
1794
+ type: 'uint256',
1795
+ },
1796
+ {
1797
+ name: 'principal',
1798
+ type: 'uint256',
1799
+ },
1800
+ {
1801
+ name: 'debtTerms',
1802
+ type: 'tuple',
1803
+ components: [
1804
+ {
1805
+ name: 'ltv',
1806
+ type: 'uint256',
1807
+ },
1808
+ {
1809
+ name: 'redemptionThreshold',
1810
+ type: 'uint256',
1811
+ },
1812
+ {
1813
+ name: 'liqThreshold',
1814
+ type: 'uint256',
1815
+ },
1816
+ {
1817
+ name: 'liqFee',
1818
+ type: 'uint256',
1819
+ },
1820
+ {
1821
+ name: 'borrowRate',
1822
+ type: 'uint256',
1823
+ },
1824
+ {
1825
+ name: 'daowry',
1826
+ type: 'uint256',
1827
+ },
1828
+ ],
1829
+ },
1830
+ {
1831
+ name: 'lastTimestamp',
1832
+ type: 'uint256',
1833
+ },
1834
+ {
1835
+ name: 'inLiquidation',
1836
+ type: 'bool',
1837
+ },
1838
+ ],
1839
+ },
1840
+ {
1841
+ name: '',
1842
+ type: 'tuple',
1843
+ components: [
1844
+ {
1845
+ name: 'collateralVal',
1846
+ type: 'uint256',
1847
+ },
1848
+ {
1849
+ name: 'totalMaxDebt',
1850
+ type: 'uint256',
1851
+ },
1852
+ {
1853
+ name: 'debtTerms',
1854
+ type: 'tuple',
1855
+ components: [
1856
+ {
1857
+ name: 'ltv',
1858
+ type: 'uint256',
1859
+ },
1860
+ {
1861
+ name: 'redemptionThreshold',
1862
+ type: 'uint256',
1863
+ },
1864
+ {
1865
+ name: 'liqThreshold',
1866
+ type: 'uint256',
1867
+ },
1868
+ {
1869
+ name: 'liqFee',
1870
+ type: 'uint256',
1871
+ },
1872
+ {
1873
+ name: 'borrowRate',
1874
+ type: 'uint256',
1875
+ },
1876
+ {
1877
+ name: 'daowry',
1878
+ type: 'uint256',
1879
+ },
1880
+ ],
1881
+ },
1882
+ ],
1883
+ },
1884
+ {
1885
+ name: '',
1886
+ type: 'uint256',
1887
+ },
1888
+ ],
1889
+ },
1890
+ {
1891
+ stateMutability: 'view',
1892
+ type: 'function',
1893
+ name: 'getDynamicBorrowRate',
1894
+ inputs: [
1895
+ {
1896
+ name: '_baseRate',
1897
+ type: 'uint256',
1898
+ },
1899
+ ],
1900
+ outputs: [
1901
+ {
1902
+ name: '',
1903
+ type: 'uint256',
1904
+ },
1905
+ ],
1906
+ },
1907
+ {
1908
+ stateMutability: 'nonpayable',
1909
+ type: 'function',
1910
+ name: 'updateDebtForUser',
1911
+ inputs: [
1912
+ {
1913
+ name: '_user',
1914
+ type: 'address',
1915
+ },
1916
+ ],
1917
+ outputs: [
1918
+ {
1919
+ name: '',
1920
+ type: 'bool',
1921
+ },
1922
+ ],
1923
+ },
1924
+ {
1925
+ stateMutability: 'nonpayable',
1926
+ type: 'function',
1927
+ name: 'updateDebtForUser',
1928
+ inputs: [
1929
+ {
1930
+ name: '_user',
1931
+ type: 'address',
1932
+ },
1933
+ {
1934
+ name: '_a',
1935
+ type: 'tuple',
1936
+ components: [
1937
+ {
1938
+ name: 'hq',
1939
+ type: 'address',
1940
+ },
1941
+ {
1942
+ name: 'greenToken',
1943
+ type: 'address',
1944
+ },
1945
+ {
1946
+ name: 'savingsGreen',
1947
+ type: 'address',
1948
+ },
1949
+ {
1950
+ name: 'ripeToken',
1951
+ type: 'address',
1952
+ },
1953
+ {
1954
+ name: 'ledger',
1955
+ type: 'address',
1956
+ },
1957
+ {
1958
+ name: 'missionControl',
1959
+ type: 'address',
1960
+ },
1961
+ {
1962
+ name: 'switchboard',
1963
+ type: 'address',
1964
+ },
1965
+ {
1966
+ name: 'priceDesk',
1967
+ type: 'address',
1968
+ },
1969
+ {
1970
+ name: 'vaultBook',
1971
+ type: 'address',
1972
+ },
1973
+ {
1974
+ name: 'auctionHouse',
1975
+ type: 'address',
1976
+ },
1977
+ {
1978
+ name: 'auctionHouseNft',
1979
+ type: 'address',
1980
+ },
1981
+ {
1982
+ name: 'boardroom',
1983
+ type: 'address',
1984
+ },
1985
+ {
1986
+ name: 'bondRoom',
1987
+ type: 'address',
1988
+ },
1989
+ {
1990
+ name: 'creditEngine',
1991
+ type: 'address',
1992
+ },
1993
+ {
1994
+ name: 'endaoment',
1995
+ type: 'address',
1996
+ },
1997
+ {
1998
+ name: 'humanResources',
1999
+ type: 'address',
2000
+ },
2001
+ {
2002
+ name: 'lootbox',
2003
+ type: 'address',
2004
+ },
2005
+ {
2006
+ name: 'teller',
2007
+ type: 'address',
2008
+ },
2009
+ ],
2010
+ },
2011
+ ],
2012
+ outputs: [
2013
+ {
2014
+ name: '',
2015
+ type: 'bool',
2016
+ },
2017
+ ],
2018
+ },
2019
+ {
2020
+ stateMutability: 'view',
2021
+ type: 'function',
2022
+ name: 'hasGoodDebtHealth',
2023
+ inputs: [
2024
+ {
2025
+ name: '_user',
2026
+ type: 'address',
2027
+ },
2028
+ ],
2029
+ outputs: [
2030
+ {
2031
+ name: '',
2032
+ type: 'bool',
2033
+ },
2034
+ ],
2035
+ },
2036
+ {
2037
+ stateMutability: 'view',
2038
+ type: 'function',
2039
+ name: 'hasGoodDebtHealth',
2040
+ inputs: [
2041
+ {
2042
+ name: '_user',
2043
+ type: 'address',
2044
+ },
2045
+ {
2046
+ name: '_a',
2047
+ type: 'tuple',
2048
+ components: [
2049
+ {
2050
+ name: 'hq',
2051
+ type: 'address',
2052
+ },
2053
+ {
2054
+ name: 'greenToken',
2055
+ type: 'address',
2056
+ },
2057
+ {
2058
+ name: 'savingsGreen',
2059
+ type: 'address',
2060
+ },
2061
+ {
2062
+ name: 'ripeToken',
2063
+ type: 'address',
2064
+ },
2065
+ {
2066
+ name: 'ledger',
2067
+ type: 'address',
2068
+ },
2069
+ {
2070
+ name: 'missionControl',
2071
+ type: 'address',
2072
+ },
2073
+ {
2074
+ name: 'switchboard',
2075
+ type: 'address',
2076
+ },
2077
+ {
2078
+ name: 'priceDesk',
2079
+ type: 'address',
2080
+ },
2081
+ {
2082
+ name: 'vaultBook',
2083
+ type: 'address',
2084
+ },
2085
+ {
2086
+ name: 'auctionHouse',
2087
+ type: 'address',
2088
+ },
2089
+ {
2090
+ name: 'auctionHouseNft',
2091
+ type: 'address',
2092
+ },
2093
+ {
2094
+ name: 'boardroom',
2095
+ type: 'address',
2096
+ },
2097
+ {
2098
+ name: 'bondRoom',
2099
+ type: 'address',
2100
+ },
2101
+ {
2102
+ name: 'creditEngine',
2103
+ type: 'address',
2104
+ },
2105
+ {
2106
+ name: 'endaoment',
2107
+ type: 'address',
2108
+ },
2109
+ {
2110
+ name: 'humanResources',
2111
+ type: 'address',
2112
+ },
2113
+ {
2114
+ name: 'lootbox',
2115
+ type: 'address',
2116
+ },
2117
+ {
2118
+ name: 'teller',
2119
+ type: 'address',
2120
+ },
2121
+ ],
2122
+ },
2123
+ ],
2124
+ outputs: [
2125
+ {
2126
+ name: '',
2127
+ type: 'bool',
2128
+ },
2129
+ ],
2130
+ },
2131
+ {
2132
+ stateMutability: 'view',
2133
+ type: 'function',
2134
+ name: 'canLiquidateUser',
2135
+ inputs: [
2136
+ {
2137
+ name: '_user',
2138
+ type: 'address',
2139
+ },
2140
+ ],
2141
+ outputs: [
2142
+ {
2143
+ name: '',
2144
+ type: 'bool',
2145
+ },
2146
+ ],
2147
+ },
2148
+ {
2149
+ stateMutability: 'view',
2150
+ type: 'function',
2151
+ name: 'canLiquidateUser',
2152
+ inputs: [
2153
+ {
2154
+ name: '_user',
2155
+ type: 'address',
2156
+ },
2157
+ {
2158
+ name: '_a',
2159
+ type: 'tuple',
2160
+ components: [
2161
+ {
2162
+ name: 'hq',
2163
+ type: 'address',
2164
+ },
2165
+ {
2166
+ name: 'greenToken',
2167
+ type: 'address',
2168
+ },
2169
+ {
2170
+ name: 'savingsGreen',
2171
+ type: 'address',
2172
+ },
2173
+ {
2174
+ name: 'ripeToken',
2175
+ type: 'address',
2176
+ },
2177
+ {
2178
+ name: 'ledger',
2179
+ type: 'address',
2180
+ },
2181
+ {
2182
+ name: 'missionControl',
2183
+ type: 'address',
2184
+ },
2185
+ {
2186
+ name: 'switchboard',
2187
+ type: 'address',
2188
+ },
2189
+ {
2190
+ name: 'priceDesk',
2191
+ type: 'address',
2192
+ },
2193
+ {
2194
+ name: 'vaultBook',
2195
+ type: 'address',
2196
+ },
2197
+ {
2198
+ name: 'auctionHouse',
2199
+ type: 'address',
2200
+ },
2201
+ {
2202
+ name: 'auctionHouseNft',
2203
+ type: 'address',
2204
+ },
2205
+ {
2206
+ name: 'boardroom',
2207
+ type: 'address',
2208
+ },
2209
+ {
2210
+ name: 'bondRoom',
2211
+ type: 'address',
2212
+ },
2213
+ {
2214
+ name: 'creditEngine',
2215
+ type: 'address',
2216
+ },
2217
+ {
2218
+ name: 'endaoment',
2219
+ type: 'address',
2220
+ },
2221
+ {
2222
+ name: 'humanResources',
2223
+ type: 'address',
2224
+ },
2225
+ {
2226
+ name: 'lootbox',
2227
+ type: 'address',
2228
+ },
2229
+ {
2230
+ name: 'teller',
2231
+ type: 'address',
2232
+ },
2233
+ ],
2234
+ },
2235
+ ],
2236
+ outputs: [
2237
+ {
2238
+ name: '',
2239
+ type: 'bool',
2240
+ },
2241
+ ],
2242
+ },
2243
+ {
2244
+ stateMutability: 'view',
2245
+ type: 'function',
2246
+ name: 'canRedeemUserCollateral',
2247
+ inputs: [
2248
+ {
2249
+ name: '_user',
2250
+ type: 'address',
2251
+ },
2252
+ ],
2253
+ outputs: [
2254
+ {
2255
+ name: '',
2256
+ type: 'bool',
2257
+ },
2258
+ ],
2259
+ },
2260
+ {
2261
+ stateMutability: 'view',
2262
+ type: 'function',
2263
+ name: 'canRedeemUserCollateral',
2264
+ inputs: [
2265
+ {
2266
+ name: '_user',
2267
+ type: 'address',
2268
+ },
2269
+ {
2270
+ name: '_a',
2271
+ type: 'tuple',
2272
+ components: [
2273
+ {
2274
+ name: 'hq',
2275
+ type: 'address',
2276
+ },
2277
+ {
2278
+ name: 'greenToken',
2279
+ type: 'address',
2280
+ },
2281
+ {
2282
+ name: 'savingsGreen',
2283
+ type: 'address',
2284
+ },
2285
+ {
2286
+ name: 'ripeToken',
2287
+ type: 'address',
2288
+ },
2289
+ {
2290
+ name: 'ledger',
2291
+ type: 'address',
2292
+ },
2293
+ {
2294
+ name: 'missionControl',
2295
+ type: 'address',
2296
+ },
2297
+ {
2298
+ name: 'switchboard',
2299
+ type: 'address',
2300
+ },
2301
+ {
2302
+ name: 'priceDesk',
2303
+ type: 'address',
2304
+ },
2305
+ {
2306
+ name: 'vaultBook',
2307
+ type: 'address',
2308
+ },
2309
+ {
2310
+ name: 'auctionHouse',
2311
+ type: 'address',
2312
+ },
2313
+ {
2314
+ name: 'auctionHouseNft',
2315
+ type: 'address',
2316
+ },
2317
+ {
2318
+ name: 'boardroom',
2319
+ type: 'address',
2320
+ },
2321
+ {
2322
+ name: 'bondRoom',
2323
+ type: 'address',
2324
+ },
2325
+ {
2326
+ name: 'creditEngine',
2327
+ type: 'address',
2328
+ },
2329
+ {
2330
+ name: 'endaoment',
2331
+ type: 'address',
2332
+ },
2333
+ {
2334
+ name: 'humanResources',
2335
+ type: 'address',
2336
+ },
2337
+ {
2338
+ name: 'lootbox',
2339
+ type: 'address',
2340
+ },
2341
+ {
2342
+ name: 'teller',
2343
+ type: 'address',
2344
+ },
2345
+ ],
2346
+ },
2347
+ ],
2348
+ outputs: [
2349
+ {
2350
+ name: '',
2351
+ type: 'bool',
2352
+ },
2353
+ ],
2354
+ },
2355
+ {
2356
+ stateMutability: 'view',
2357
+ type: 'function',
2358
+ name: 'getLiquidationThreshold',
2359
+ inputs: [
2360
+ {
2361
+ name: '_user',
2362
+ type: 'address',
2363
+ },
2364
+ ],
2365
+ outputs: [
2366
+ {
2367
+ name: '',
2368
+ type: 'uint256',
2369
+ },
2370
+ ],
2371
+ },
2372
+ {
2373
+ stateMutability: 'view',
2374
+ type: 'function',
2375
+ name: 'getRedemptionThreshold',
2376
+ inputs: [
2377
+ {
2378
+ name: '_user',
2379
+ type: 'address',
2380
+ },
2381
+ ],
2382
+ outputs: [
2383
+ {
2384
+ name: '',
2385
+ type: 'uint256',
2386
+ },
2387
+ ],
2388
+ },
2389
+ {
2390
+ stateMutability: 'view',
2391
+ type: 'function',
2392
+ name: 'getMaxWithdrawableForAsset',
2393
+ inputs: [
2394
+ {
2395
+ name: '_user',
2396
+ type: 'address',
2397
+ },
2398
+ {
2399
+ name: '_vaultId',
2400
+ type: 'uint256',
2401
+ },
2402
+ {
2403
+ name: '_asset',
2404
+ type: 'address',
2405
+ },
2406
+ ],
2407
+ outputs: [
2408
+ {
2409
+ name: '',
2410
+ type: 'uint256',
2411
+ },
2412
+ ],
2413
+ },
2414
+ {
2415
+ stateMutability: 'view',
2416
+ type: 'function',
2417
+ name: 'getMaxWithdrawableForAsset',
2418
+ inputs: [
2419
+ {
2420
+ name: '_user',
2421
+ type: 'address',
2422
+ },
2423
+ {
2424
+ name: '_vaultId',
2425
+ type: 'uint256',
2426
+ },
2427
+ {
2428
+ name: '_asset',
2429
+ type: 'address',
2430
+ },
2431
+ {
2432
+ name: '_vaultAddr',
2433
+ type: 'address',
2434
+ },
2435
+ ],
2436
+ outputs: [
2437
+ {
2438
+ name: '',
2439
+ type: 'uint256',
2440
+ },
2441
+ ],
2442
+ },
2443
+ {
2444
+ stateMutability: 'view',
2445
+ type: 'function',
2446
+ name: 'getMaxWithdrawableForAsset',
2447
+ inputs: [
2448
+ {
2449
+ name: '_user',
2450
+ type: 'address',
2451
+ },
2452
+ {
2453
+ name: '_vaultId',
2454
+ type: 'uint256',
2455
+ },
2456
+ {
2457
+ name: '_asset',
2458
+ type: 'address',
2459
+ },
2460
+ {
2461
+ name: '_vaultAddr',
2462
+ type: 'address',
2463
+ },
2464
+ {
2465
+ name: '_a',
2466
+ type: 'tuple',
2467
+ components: [
2468
+ {
2469
+ name: 'hq',
2470
+ type: 'address',
2471
+ },
2472
+ {
2473
+ name: 'greenToken',
2474
+ type: 'address',
2475
+ },
2476
+ {
2477
+ name: 'savingsGreen',
2478
+ type: 'address',
2479
+ },
2480
+ {
2481
+ name: 'ripeToken',
2482
+ type: 'address',
2483
+ },
2484
+ {
2485
+ name: 'ledger',
2486
+ type: 'address',
2487
+ },
2488
+ {
2489
+ name: 'missionControl',
2490
+ type: 'address',
2491
+ },
2492
+ {
2493
+ name: 'switchboard',
2494
+ type: 'address',
2495
+ },
2496
+ {
2497
+ name: 'priceDesk',
2498
+ type: 'address',
2499
+ },
2500
+ {
2501
+ name: 'vaultBook',
2502
+ type: 'address',
2503
+ },
2504
+ {
2505
+ name: 'auctionHouse',
2506
+ type: 'address',
2507
+ },
2508
+ {
2509
+ name: 'auctionHouseNft',
2510
+ type: 'address',
2511
+ },
2512
+ {
2513
+ name: 'boardroom',
2514
+ type: 'address',
2515
+ },
2516
+ {
2517
+ name: 'bondRoom',
2518
+ type: 'address',
2519
+ },
2520
+ {
2521
+ name: 'creditEngine',
2522
+ type: 'address',
2523
+ },
2524
+ {
2525
+ name: 'endaoment',
2526
+ type: 'address',
2527
+ },
2528
+ {
2529
+ name: 'humanResources',
2530
+ type: 'address',
2531
+ },
2532
+ {
2533
+ name: 'lootbox',
2534
+ type: 'address',
2535
+ },
2536
+ {
2537
+ name: 'teller',
2538
+ type: 'address',
2539
+ },
2540
+ ],
2541
+ },
2542
+ ],
2543
+ outputs: [
2544
+ {
2545
+ name: '',
2546
+ type: 'uint256',
2547
+ },
2548
+ ],
2549
+ },
2550
+ {
2551
+ stateMutability: 'nonpayable',
2552
+ type: 'constructor',
2553
+ inputs: [
2554
+ {
2555
+ name: '_ripeHq',
2556
+ type: 'address',
2557
+ },
2558
+ ],
2559
+ outputs: [],
2560
+ },
2561
+ ];
2562
+ export const deployAddress = '0xC4d54b999D333E8c8293f83DDcF3B9A19B76645F';
2563
+ function getRequest(method, args, contractAddressOrOptions) {
2564
+ const address = typeof contractAddressOrOptions === 'string' ? contractAddressOrOptions : contractAddressOrOptions?.contractAddress;
2565
+ const defaultValue = typeof contractAddressOrOptions === 'string' ? undefined : contractAddressOrOptions?.defaultValue;
2566
+ const call = {
2567
+ contractName: 'CreditEngine',
2568
+ method,
2569
+ args,
2570
+ address,
2571
+ deployAddress,
2572
+ defaultValue,
2573
+ getAbi: () => abi,
2574
+ with: (options) => {
2575
+ call.address = options.contractAddress;
2576
+ call.defaultValue = options.defaultValue;
2577
+ return call;
2578
+ },
2579
+ defaultTo: (defaultValue) => {
2580
+ call.defaultValue = defaultValue;
2581
+ return call;
2582
+ },
2583
+ at: (address) => {
2584
+ call.address = address;
2585
+ return call;
2586
+ },
2587
+ };
2588
+ return call;
2589
+ }
2590
+ export const call = {
2591
+ getAddys: (...args) => getRequest('getAddys', args),
2592
+ getRipeHq: (...args) => getRequest('getRipeHq', args),
2593
+ canMintGreen: (...args) => getRequest('canMintGreen', args),
2594
+ canMintRipe: (...args) => getRequest('canMintRipe', args),
2595
+ isPaused: (...args) => getRequest('isPaused', args),
2596
+ getMaxBorrowAmount: (...args) => getRequest('getMaxBorrowAmount', args),
2597
+ getMaxRedeemValue: (...args) => getRequest('getMaxRedeemValue', args),
2598
+ getCollateralValue: (...args) => getRequest('getCollateralValue', args),
2599
+ getUserBorrowTerms: (...args) => getRequest('getUserBorrowTerms', args),
2600
+ getLatestUserDebtAndTerms: (...args) => getRequest('getLatestUserDebtAndTerms', args),
2601
+ getDynamicBorrowRate: (...args) => getRequest('getDynamicBorrowRate', args),
2602
+ hasGoodDebtHealth: (...args) => getRequest('hasGoodDebtHealth', args),
2603
+ canLiquidateUser: (...args) => getRequest('canLiquidateUser', args),
2604
+ canRedeemUserCollateral: (...args) => getRequest('canRedeemUserCollateral', args),
2605
+ getLiquidationThreshold: (...args) => getRequest('getLiquidationThreshold', args),
2606
+ getRedemptionThreshold: (...args) => getRequest('getRedemptionThreshold', args),
2607
+ getMaxWithdrawableForAsset: (...args) => getRequest('getMaxWithdrawableForAsset', args),
2608
+ };
2609
+ function getMutation(functionName) {
2610
+ return {
2611
+ contractName: 'CreditEngine',
2612
+ functionName,
2613
+ deployAddress,
2614
+ argsType: undefined,
2615
+ getAbi: () => abi,
2616
+ };
2617
+ }
2618
+ export const mutation = {
2619
+ pause: getMutation('pause'),
2620
+ recoverFunds: getMutation('recoverFunds'),
2621
+ recoverFundsMany: getMutation('recoverFundsMany'),
2622
+ borrowForUser: getMutation('borrowForUser'),
2623
+ repayForUser: getMutation('repayForUser'),
2624
+ repayDuringLiquidation: getMutation('repayDuringLiquidation'),
2625
+ repayDuringAuctionPurchase: getMutation('repayDuringAuctionPurchase'),
2626
+ redeemCollateralFromMany: getMutation('redeemCollateralFromMany'),
2627
+ updateDebtForUser: getMutation('updateDebtForUser'),
2628
+ };
2629
+ export function toSdk(publicClient, walletClient) {
2630
+ return {
2631
+ deployAddress,
2632
+ abi,
2633
+ // Queries
2634
+ getAddys: (...args) => singleQuery(publicClient, call.getAddys(...args)),
2635
+ getRipeHq: (...args) => singleQuery(publicClient, call.getRipeHq(...args)),
2636
+ canMintGreen: (...args) => singleQuery(publicClient, call.canMintGreen(...args)),
2637
+ canMintRipe: (...args) => singleQuery(publicClient, call.canMintRipe(...args)),
2638
+ isPaused: (...args) => singleQuery(publicClient, call.isPaused(...args)),
2639
+ getMaxBorrowAmount: (...args) => singleQuery(publicClient, call.getMaxBorrowAmount(...args)),
2640
+ getMaxRedeemValue: (...args) => singleQuery(publicClient, call.getMaxRedeemValue(...args)),
2641
+ getCollateralValue: (...args) => singleQuery(publicClient, call.getCollateralValue(...args)),
2642
+ getUserBorrowTerms: (...args) => singleQuery(publicClient, call.getUserBorrowTerms(...args)),
2643
+ getLatestUserDebtAndTerms: (...args) => singleQuery(publicClient, call.getLatestUserDebtAndTerms(...args)),
2644
+ getDynamicBorrowRate: (...args) => singleQuery(publicClient, call.getDynamicBorrowRate(...args)),
2645
+ hasGoodDebtHealth: (...args) => singleQuery(publicClient, call.hasGoodDebtHealth(...args)),
2646
+ canLiquidateUser: (...args) => singleQuery(publicClient, call.canLiquidateUser(...args)),
2647
+ canRedeemUserCollateral: (...args) => singleQuery(publicClient, call.canRedeemUserCollateral(...args)),
2648
+ getLiquidationThreshold: (...args) => singleQuery(publicClient, call.getLiquidationThreshold(...args)),
2649
+ getRedemptionThreshold: (...args) => singleQuery(publicClient, call.getRedemptionThreshold(...args)),
2650
+ getMaxWithdrawableForAsset: (...args) => singleQuery(publicClient, call.getMaxWithdrawableForAsset(...args)),
2651
+ // Mutations
2652
+ pause: (...args) => mutate(walletClient, mutation.pause)(...args),
2653
+ recoverFunds: (...args) => mutate(walletClient, mutation.recoverFunds)(...args),
2654
+ recoverFundsMany: (...args) => mutate(walletClient, mutation.recoverFundsMany)(...args),
2655
+ borrowForUser: (...args) => mutate(walletClient, mutation.borrowForUser)(...args),
2656
+ repayForUser: (...args) => mutate(walletClient, mutation.repayForUser)(...args),
2657
+ repayDuringLiquidation: (...args) => mutate(walletClient, mutation.repayDuringLiquidation)(...args),
2658
+ repayDuringAuctionPurchase: (...args) => mutate(walletClient, mutation.repayDuringAuctionPurchase)(...args),
2659
+ redeemCollateralFromMany: (...args) => mutate(walletClient, mutation.redeemCollateralFromMany)(...args),
2660
+ updateDebtForUser: (...args) => mutate(walletClient, mutation.updateDebtForUser)(...args),
2661
+ };
2662
+ }