@underscore-finance/sdk 1.2.20-next.1 → 1.2.20-next.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 (284) hide show
  1. package/AGENTS.md +172 -0
  2. package/README.md +17 -116
  3. package/abis.json +193056 -0
  4. package/addresses.json +76 -0
  5. package/dist/contracts/AaveV3.d.ts +2594 -0
  6. package/dist/contracts/AaveV3.d.ts.map +1 -0
  7. package/dist/contracts/AaveV3.js +3272 -0
  8. package/dist/contracts/Addys.d.ts +124 -0
  9. package/dist/contracts/Addys.d.ts.map +1 -0
  10. package/dist/contracts/Addys.js +134 -0
  11. package/dist/contracts/AeroClassic.d.ts +2118 -0
  12. package/dist/contracts/AeroClassic.d.ts.map +1 -0
  13. package/dist/contracts/AeroClassic.js +2679 -0
  14. package/dist/contracts/AeroSlipstream.d.ts +2256 -0
  15. package/dist/contracts/AeroSlipstream.d.ts.map +1 -0
  16. package/dist/contracts/AeroSlipstream.js +2848 -0
  17. package/dist/contracts/AgentSenderGeneric.d.ts +4771 -0
  18. package/dist/contracts/AgentSenderGeneric.d.ts.map +1 -0
  19. package/dist/contracts/AgentSenderGeneric.js +6192 -0
  20. package/dist/contracts/AgentSenderSpecial.d.ts +2124 -0
  21. package/dist/contracts/AgentSenderSpecial.d.ts.map +1 -0
  22. package/dist/contracts/AgentSenderSpecial.js +2671 -0
  23. package/dist/contracts/AgentSenderSpecialAdmin.d.ts +984 -0
  24. package/dist/contracts/AgentSenderSpecialAdmin.d.ts.map +1 -0
  25. package/dist/contracts/AgentSenderSpecialAdmin.js +1185 -0
  26. package/dist/contracts/AgentSenderSpecialSigHelper.d.ts +3180 -0
  27. package/dist/contracts/AgentSenderSpecialSigHelper.d.ts.map +1 -0
  28. package/dist/contracts/AgentSenderSpecialSigHelper.js +4211 -0
  29. package/dist/contracts/AgentWrapper.d.ts +2678 -0
  30. package/dist/contracts/AgentWrapper.d.ts.map +1 -0
  31. package/dist/contracts/AgentWrapper.js +3602 -0
  32. package/dist/contracts/AgentWrapperV1.d.ts +3789 -0
  33. package/dist/contracts/AgentWrapperV1.d.ts.map +1 -0
  34. package/dist/contracts/AgentWrapperV1.js +4945 -0
  35. package/dist/contracts/AgentWrapperV2.d.ts +2494 -0
  36. package/dist/contracts/AgentWrapperV2.d.ts.map +1 -0
  37. package/dist/contracts/AgentWrapperV2.js +3354 -0
  38. package/dist/contracts/Appraiser.d.ts +577 -0
  39. package/dist/contracts/Appraiser.d.ts.map +1 -0
  40. package/dist/contracts/Appraiser.js +735 -0
  41. package/dist/contracts/Avantis.d.ts +2606 -0
  42. package/dist/contracts/Avantis.d.ts.map +1 -0
  43. package/dist/contracts/Avantis.js +3282 -0
  44. package/dist/contracts/Billing.d.ts +381 -0
  45. package/dist/contracts/Billing.d.ts.map +1 -0
  46. package/dist/contracts/Billing.js +451 -0
  47. package/dist/contracts/ChequeBook.d.ts +1860 -0
  48. package/dist/contracts/ChequeBook.d.ts.map +1 -0
  49. package/dist/contracts/ChequeBook.js +2131 -0
  50. package/dist/contracts/CompoundV3.d.ts +2622 -0
  51. package/dist/contracts/CompoundV3.d.ts.map +1 -0
  52. package/dist/contracts/CompoundV3.js +3304 -0
  53. package/dist/contracts/ConvertVaultToken.d.ts +64 -0
  54. package/dist/contracts/ConvertVaultToken.d.ts.map +1 -0
  55. package/dist/contracts/ConvertVaultToken.js +75 -0
  56. package/dist/contracts/Curve.d.ts +1107 -0
  57. package/dist/contracts/Curve.d.ts.map +1 -0
  58. package/dist/contracts/Curve.js +1379 -0
  59. package/dist/contracts/DefaultsBase.d.ts +306 -0
  60. package/dist/contracts/DefaultsBase.d.ts.map +1 -0
  61. package/dist/contracts/DefaultsBase.js +331 -0
  62. package/dist/contracts/DefaultsLocal.d.ts +320 -0
  63. package/dist/contracts/DefaultsLocal.d.ts.map +1 -0
  64. package/dist/contracts/DefaultsLocal.js +350 -0
  65. package/dist/contracts/ERC20.d.ts +813 -0
  66. package/dist/contracts/ERC20.d.ts.map +1 -0
  67. package/dist/contracts/ERC20.js +1006 -0
  68. package/dist/contracts/EarnVault.d.ts +1762 -0
  69. package/dist/contracts/EarnVault.d.ts.map +1 -0
  70. package/dist/contracts/EarnVault.js +2267 -0
  71. package/dist/contracts/EarnVaultAgent.d.ts +1160 -0
  72. package/dist/contracts/EarnVaultAgent.d.ts.map +1 -0
  73. package/dist/contracts/EarnVaultAgent.js +1435 -0
  74. package/dist/contracts/EarnVaultAgentSigHelper.d.ts +905 -0
  75. package/dist/contracts/EarnVaultAgentSigHelper.d.ts.map +1 -0
  76. package/dist/contracts/EarnVaultAgentSigHelper.js +1198 -0
  77. package/dist/contracts/EarnVaultWallet.d.ts +777 -0
  78. package/dist/contracts/EarnVaultWallet.d.ts.map +1 -0
  79. package/dist/contracts/EarnVaultWallet.js +987 -0
  80. package/dist/contracts/Erc20Token.d.ts +813 -0
  81. package/dist/contracts/Erc20Token.d.ts.map +1 -0
  82. package/dist/contracts/Erc20Token.js +1006 -0
  83. package/dist/contracts/Euler.d.ts +2662 -0
  84. package/dist/contracts/Euler.d.ts.map +1 -0
  85. package/dist/contracts/Euler.js +3350 -0
  86. package/dist/contracts/ExtraFi.d.ts +2637 -0
  87. package/dist/contracts/ExtraFi.d.ts.map +1 -0
  88. package/dist/contracts/ExtraFi.js +3323 -0
  89. package/dist/contracts/Fluid.d.ts +2634 -0
  90. package/dist/contracts/Fluid.d.ts.map +1 -0
  91. package/dist/contracts/Fluid.js +3318 -0
  92. package/dist/contracts/FortyAcres.d.ts +2620 -0
  93. package/dist/contracts/FortyAcres.d.ts.map +1 -0
  94. package/dist/contracts/FortyAcres.js +3300 -0
  95. package/dist/contracts/Hatchery.d.ts +392 -0
  96. package/dist/contracts/Hatchery.d.ts.map +1 -0
  97. package/dist/contracts/Hatchery.js +472 -0
  98. package/dist/contracts/Helpers.d.ts +1463 -0
  99. package/dist/contracts/Helpers.d.ts.map +1 -0
  100. package/dist/contracts/Helpers.js +1763 -0
  101. package/dist/contracts/HighCommand.d.ts +2169 -0
  102. package/dist/contracts/HighCommand.d.ts.map +1 -0
  103. package/dist/contracts/HighCommand.js +2474 -0
  104. package/dist/contracts/Kernel.d.ts +391 -0
  105. package/dist/contracts/Kernel.d.ts.map +1 -0
  106. package/dist/contracts/Kernel.js +446 -0
  107. package/dist/contracts/Ledger.d.ts +637 -0
  108. package/dist/contracts/Ledger.d.ts.map +1 -0
  109. package/dist/contracts/Ledger.js +759 -0
  110. package/dist/contracts/LegoBook.d.ts +1463 -0
  111. package/dist/contracts/LegoBook.d.ts.map +1 -0
  112. package/dist/contracts/LegoBook.js +1763 -0
  113. package/dist/contracts/LegoTools.d.ts +1913 -0
  114. package/dist/contracts/LegoTools.d.ts.map +1 -0
  115. package/dist/contracts/LegoTools.js +2402 -0
  116. package/dist/contracts/LevgVault.d.ts +2115 -0
  117. package/dist/contracts/LevgVault.d.ts.map +1 -0
  118. package/dist/contracts/LevgVault.js +2733 -0
  119. package/dist/contracts/LevgVaultAgent.d.ts +2013 -0
  120. package/dist/contracts/LevgVaultAgent.d.ts.map +1 -0
  121. package/dist/contracts/LevgVaultAgent.js +2563 -0
  122. package/dist/contracts/LevgVaultAgentSigHelper.d.ts +2221 -0
  123. package/dist/contracts/LevgVaultAgentSigHelper.d.ts.map +1 -0
  124. package/dist/contracts/LevgVaultAgentSigHelper.js +2963 -0
  125. package/dist/contracts/LevgVaultHelper.d.ts +977 -0
  126. package/dist/contracts/LevgVaultHelper.d.ts.map +1 -0
  127. package/dist/contracts/LevgVaultHelper.js +1289 -0
  128. package/dist/contracts/LevgVaultTools.d.ts +2629 -0
  129. package/dist/contracts/LevgVaultTools.d.ts.map +1 -0
  130. package/dist/contracts/LevgVaultTools.js +3560 -0
  131. package/dist/contracts/LevgVaultWallet.d.ts +1119 -0
  132. package/dist/contracts/LevgVaultWallet.d.ts.map +1 -0
  133. package/dist/contracts/LevgVaultWallet.js +1439 -0
  134. package/dist/contracts/LocalGov.d.ts +427 -0
  135. package/dist/contracts/LocalGov.d.ts.map +1 -0
  136. package/dist/contracts/LocalGov.js +507 -0
  137. package/dist/contracts/LootDistributor.d.ts +1053 -0
  138. package/dist/contracts/LootDistributor.d.ts.map +1 -0
  139. package/dist/contracts/LootDistributor.js +1291 -0
  140. package/dist/contracts/Migrator.d.ts +449 -0
  141. package/dist/contracts/Migrator.d.ts.map +1 -0
  142. package/dist/contracts/Migrator.js +535 -0
  143. package/dist/contracts/MissionControl.d.ts +1405 -0
  144. package/dist/contracts/MissionControl.d.ts.map +1 -0
  145. package/dist/contracts/MissionControl.js +1592 -0
  146. package/dist/contracts/Moonwell.d.ts +2623 -0
  147. package/dist/contracts/Moonwell.d.ts.map +1 -0
  148. package/dist/contracts/Moonwell.js +3304 -0
  149. package/dist/contracts/Morpho.d.ts +2662 -0
  150. package/dist/contracts/Morpho.d.ts.map +1 -0
  151. package/dist/contracts/Morpho.js +3350 -0
  152. package/dist/contracts/Ownership.d.ts +414 -0
  153. package/dist/contracts/Ownership.d.ts.map +1 -0
  154. package/dist/contracts/Ownership.js +472 -0
  155. package/dist/contracts/Paymaster.d.ts +1511 -0
  156. package/dist/contracts/Paymaster.d.ts.map +1 -0
  157. package/dist/contracts/Paymaster.js +1812 -0
  158. package/dist/contracts/RipeLego.d.ts +2913 -0
  159. package/dist/contracts/RipeLego.d.ts.map +1 -0
  160. package/dist/contracts/RipeLego.js +3643 -0
  161. package/dist/contracts/Sentinel.d.ts +2067 -0
  162. package/dist/contracts/Sentinel.d.ts.map +1 -0
  163. package/dist/contracts/Sentinel.js +2480 -0
  164. package/dist/contracts/SignatureHelper.d.ts +4250 -0
  165. package/dist/contracts/SignatureHelper.d.ts.map +1 -0
  166. package/dist/contracts/SignatureHelper.js +5714 -0
  167. package/dist/contracts/SignatureHelperV1.d.ts +4250 -0
  168. package/dist/contracts/SignatureHelperV1.d.ts.map +1 -0
  169. package/dist/contracts/SignatureHelperV1.js +5714 -0
  170. package/dist/contracts/SkyPsm.d.ts +2667 -0
  171. package/dist/contracts/SkyPsm.d.ts.map +1 -0
  172. package/dist/contracts/SkyPsm.js +3356 -0
  173. package/dist/contracts/Switchboard.d.ts +1483 -0
  174. package/dist/contracts/Switchboard.d.ts.map +1 -0
  175. package/dist/contracts/Switchboard.js +1790 -0
  176. package/dist/contracts/SwitchboardAlpha.d.ts +3161 -0
  177. package/dist/contracts/SwitchboardAlpha.d.ts.map +1 -0
  178. package/dist/contracts/SwitchboardAlpha.js +3771 -0
  179. package/dist/contracts/SwitchboardBravo.d.ts +1591 -0
  180. package/dist/contracts/SwitchboardBravo.d.ts.map +1 -0
  181. package/dist/contracts/SwitchboardBravo.js +1872 -0
  182. package/dist/contracts/SwitchboardCharlie.d.ts +3172 -0
  183. package/dist/contracts/SwitchboardCharlie.d.ts.map +1 -0
  184. package/dist/contracts/SwitchboardCharlie.js +3713 -0
  185. package/dist/contracts/UnderscoreLego.d.ts +2592 -0
  186. package/dist/contracts/UnderscoreLego.d.ts.map +1 -0
  187. package/dist/contracts/UnderscoreLego.js +3264 -0
  188. package/dist/contracts/UndyAero.d.ts +1733 -0
  189. package/dist/contracts/UndyAero.d.ts.map +1 -0
  190. package/dist/contracts/UndyAero.js +2235 -0
  191. package/dist/contracts/UndyBtc.d.ts +1733 -0
  192. package/dist/contracts/UndyBtc.d.ts.map +1 -0
  193. package/dist/contracts/UndyBtc.js +2235 -0
  194. package/dist/contracts/UndyCbeth.d.ts +1733 -0
  195. package/dist/contracts/UndyCbeth.d.ts.map +1 -0
  196. package/dist/contracts/UndyCbeth.js +2235 -0
  197. package/dist/contracts/UndyEth.d.ts +1733 -0
  198. package/dist/contracts/UndyEth.d.ts.map +1 -0
  199. package/dist/contracts/UndyEth.js +2235 -0
  200. package/dist/contracts/UndyEurc.d.ts +1733 -0
  201. package/dist/contracts/UndyEurc.d.ts.map +1 -0
  202. package/dist/contracts/UndyEurc.js +2235 -0
  203. package/dist/contracts/UndyGho.d.ts +1733 -0
  204. package/dist/contracts/UndyGho.d.ts.map +1 -0
  205. package/dist/contracts/UndyGho.js +2235 -0
  206. package/dist/contracts/UndyHq.d.ts +1677 -0
  207. package/dist/contracts/UndyHq.d.ts.map +1 -0
  208. package/dist/contracts/UndyHq.js +2026 -0
  209. package/dist/contracts/UndyRewardsLego.d.ts +1572 -0
  210. package/dist/contracts/UndyRewardsLego.d.ts.map +1 -0
  211. package/dist/contracts/UndyRewardsLego.js +1994 -0
  212. package/dist/contracts/UndyToken.d.ts +821 -0
  213. package/dist/contracts/UndyToken.d.ts.map +1 -0
  214. package/dist/contracts/UndyToken.js +1017 -0
  215. package/dist/contracts/UndyUsd.d.ts +1733 -0
  216. package/dist/contracts/UndyUsd.d.ts.map +1 -0
  217. package/dist/contracts/UndyUsd.js +2235 -0
  218. package/dist/contracts/UndyUsdV2.d.ts +1762 -0
  219. package/dist/contracts/UndyUsdV2.d.ts.map +1 -0
  220. package/dist/contracts/UndyUsdV2.js +2267 -0
  221. package/dist/contracts/UndyUsds.d.ts +1733 -0
  222. package/dist/contracts/UndyUsds.d.ts.map +1 -0
  223. package/dist/contracts/UndyUsds.js +2235 -0
  224. package/dist/contracts/UndyVirtual.d.ts +1762 -0
  225. package/dist/contracts/UndyVirtual.d.ts.map +1 -0
  226. package/dist/contracts/UndyVirtual.js +2267 -0
  227. package/dist/contracts/UniswapV2.d.ts +2118 -0
  228. package/dist/contracts/UniswapV2.d.ts.map +1 -0
  229. package/dist/contracts/UniswapV2.js +2679 -0
  230. package/dist/contracts/UniswapV3.d.ts +2256 -0
  231. package/dist/contracts/UniswapV3.d.ts.map +1 -0
  232. package/dist/contracts/UniswapV3.js +2848 -0
  233. package/dist/contracts/UserWallet.d.ts +2650 -0
  234. package/dist/contracts/UserWallet.d.ts.map +1 -0
  235. package/dist/contracts/UserWallet.js +3520 -0
  236. package/dist/contracts/UserWalletConfig.d.ts +3918 -0
  237. package/dist/contracts/UserWalletConfig.d.ts.map +1 -0
  238. package/dist/contracts/UserWalletConfig.js +4527 -0
  239. package/dist/contracts/UserWalletConfigV1.d.ts +3692 -0
  240. package/dist/contracts/UserWalletConfigV1.d.ts.map +1 -0
  241. package/dist/contracts/UserWalletConfigV1.js +4276 -0
  242. package/dist/contracts/UserWalletSignatureHelper.d.ts +5558 -0
  243. package/dist/contracts/UserWalletSignatureHelper.d.ts.map +1 -0
  244. package/dist/contracts/UserWalletSignatureHelper.js +7480 -0
  245. package/dist/contracts/UserWalletV1.d.ts +2650 -0
  246. package/dist/contracts/UserWalletV1.d.ts.map +1 -0
  247. package/dist/contracts/UserWalletV1.js +3520 -0
  248. package/dist/contracts/VaultErc20Token.d.ts +522 -0
  249. package/dist/contracts/VaultErc20Token.d.ts.map +1 -0
  250. package/dist/contracts/VaultErc20Token.js +658 -0
  251. package/dist/contracts/VaultRegistry.d.ts +3162 -0
  252. package/dist/contracts/VaultRegistry.d.ts.map +1 -0
  253. package/dist/contracts/VaultRegistry.js +3893 -0
  254. package/dist/contracts/WalletBackpack.d.ts +1248 -0
  255. package/dist/contracts/WalletBackpack.d.ts.map +1 -0
  256. package/dist/contracts/WalletBackpack.js +1519 -0
  257. package/dist/contracts/Wasabi.d.ts +2620 -0
  258. package/dist/contracts/Wasabi.d.ts.map +1 -0
  259. package/dist/contracts/Wasabi.js +3300 -0
  260. package/dist/contracts/index.d.ts +86 -0
  261. package/dist/contracts/index.d.ts.map +1 -0
  262. package/dist/contracts/index.js +89 -0
  263. package/dist/contracts/sdk.d.ts +176 -0
  264. package/dist/contracts/sdk.d.ts.map +1 -0
  265. package/dist/contracts/sdk.js +178 -0
  266. package/dist/getSwapInstructions.d.ts +34 -0
  267. package/dist/getSwapInstructions.d.ts.map +1 -0
  268. package/dist/getSwapInstructions.js +21 -0
  269. package/dist/index.d.ts +135 -0
  270. package/dist/index.d.ts.map +1 -0
  271. package/dist/index.js +137 -0
  272. package/package.json +44 -17
  273. package/.claude/settings.local.json +0 -31
  274. package/.eslintrc.json +0 -27
  275. package/.prettierrc +0 -9
  276. package/.tool-versions +0 -1
  277. package/LICENSE +0 -41
  278. package/LICENSE_DATE.md +0 -34
  279. package/LICENSE_GRANTS.md +0 -33
  280. package/LICENSE_INFO.md +0 -90
  281. package/dapp.config.js +0 -154
  282. package/src/getSwapInstructions.ts +0 -55
  283. package/src/index.ts +0 -192
  284. package/tsconfig.json +0 -18
@@ -0,0 +1,3893 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /* @ts-nocheck */
5
+ import { singleQuery, mutate } from '@dappql/async';
6
+ import { encodeEventTopics, parseEventLogs } from 'viem';
7
+ export const abi = [
8
+ {
9
+ "name": "CanDepositSet",
10
+ "inputs": [
11
+ {
12
+ "name": "vaultAddr",
13
+ "type": "address",
14
+ "indexed": true
15
+ },
16
+ {
17
+ "name": "canDeposit",
18
+ "type": "bool",
19
+ "indexed": false
20
+ }
21
+ ],
22
+ "anonymous": false,
23
+ "type": "event"
24
+ },
25
+ {
26
+ "name": "CanWithdrawSet",
27
+ "inputs": [
28
+ {
29
+ "name": "vaultAddr",
30
+ "type": "address",
31
+ "indexed": true
32
+ },
33
+ {
34
+ "name": "canWithdraw",
35
+ "type": "bool",
36
+ "indexed": false
37
+ }
38
+ ],
39
+ "anonymous": false,
40
+ "type": "event"
41
+ },
42
+ {
43
+ "name": "MaxDepositAmountSet",
44
+ "inputs": [
45
+ {
46
+ "name": "vaultAddr",
47
+ "type": "address",
48
+ "indexed": true
49
+ },
50
+ {
51
+ "name": "maxDepositAmount",
52
+ "type": "uint256",
53
+ "indexed": false
54
+ }
55
+ ],
56
+ "anonymous": false,
57
+ "type": "event"
58
+ },
59
+ {
60
+ "name": "VaultOpsFrozenSet",
61
+ "inputs": [
62
+ {
63
+ "name": "vaultAddr",
64
+ "type": "address",
65
+ "indexed": true
66
+ },
67
+ {
68
+ "name": "isFrozen",
69
+ "type": "bool",
70
+ "indexed": false
71
+ }
72
+ ],
73
+ "anonymous": false,
74
+ "type": "event"
75
+ },
76
+ {
77
+ "name": "RedemptionBufferSet",
78
+ "inputs": [
79
+ {
80
+ "name": "vaultAddr",
81
+ "type": "address",
82
+ "indexed": true
83
+ },
84
+ {
85
+ "name": "buffer",
86
+ "type": "uint256",
87
+ "indexed": false
88
+ }
89
+ ],
90
+ "anonymous": false,
91
+ "type": "event"
92
+ },
93
+ {
94
+ "name": "MinYieldWithdrawAmountSet",
95
+ "inputs": [
96
+ {
97
+ "name": "vaultAddr",
98
+ "type": "address",
99
+ "indexed": true
100
+ },
101
+ {
102
+ "name": "amount",
103
+ "type": "uint256",
104
+ "indexed": false
105
+ }
106
+ ],
107
+ "anonymous": false,
108
+ "type": "event"
109
+ },
110
+ {
111
+ "name": "PerformanceFeeSet",
112
+ "inputs": [
113
+ {
114
+ "name": "vaultAddr",
115
+ "type": "address",
116
+ "indexed": true
117
+ },
118
+ {
119
+ "name": "performanceFee",
120
+ "type": "uint256",
121
+ "indexed": false
122
+ }
123
+ ],
124
+ "anonymous": false,
125
+ "type": "event"
126
+ },
127
+ {
128
+ "name": "DefaultTargetVaultTokenSet",
129
+ "inputs": [
130
+ {
131
+ "name": "vaultAddr",
132
+ "type": "address",
133
+ "indexed": true
134
+ },
135
+ {
136
+ "name": "targetVaultToken",
137
+ "type": "address",
138
+ "indexed": true
139
+ }
140
+ ],
141
+ "anonymous": false,
142
+ "type": "event"
143
+ },
144
+ {
145
+ "name": "ShouldAutoDepositSet",
146
+ "inputs": [
147
+ {
148
+ "name": "vaultAddr",
149
+ "type": "address",
150
+ "indexed": true
151
+ },
152
+ {
153
+ "name": "shouldAutoDeposit",
154
+ "type": "bool",
155
+ "indexed": false
156
+ }
157
+ ],
158
+ "anonymous": false,
159
+ "type": "event"
160
+ },
161
+ {
162
+ "name": "IsLeveragedVaultSet",
163
+ "inputs": [
164
+ {
165
+ "name": "vaultAddr",
166
+ "type": "address",
167
+ "indexed": true
168
+ },
169
+ {
170
+ "name": "isLeveragedVault",
171
+ "type": "bool",
172
+ "indexed": false
173
+ }
174
+ ],
175
+ "anonymous": false,
176
+ "type": "event"
177
+ },
178
+ {
179
+ "name": "ApprovedVaultTokenSet",
180
+ "inputs": [
181
+ {
182
+ "name": "undyVaultAddr",
183
+ "type": "address",
184
+ "indexed": true
185
+ },
186
+ {
187
+ "name": "underlyingAsset",
188
+ "type": "address",
189
+ "indexed": true
190
+ },
191
+ {
192
+ "name": "vaultToken",
193
+ "type": "address",
194
+ "indexed": true
195
+ },
196
+ {
197
+ "name": "isApproved",
198
+ "type": "bool",
199
+ "indexed": false
200
+ },
201
+ {
202
+ "name": "shouldMaxWithdraw",
203
+ "type": "bool",
204
+ "indexed": false
205
+ }
206
+ ],
207
+ "anonymous": false,
208
+ "type": "event"
209
+ },
210
+ {
211
+ "name": "VaultTokenAdded",
212
+ "inputs": [
213
+ {
214
+ "name": "undyVaultAddr",
215
+ "type": "address",
216
+ "indexed": true
217
+ },
218
+ {
219
+ "name": "underlyingAsset",
220
+ "type": "address",
221
+ "indexed": true
222
+ },
223
+ {
224
+ "name": "vaultToken",
225
+ "type": "address",
226
+ "indexed": true
227
+ }
228
+ ],
229
+ "anonymous": false,
230
+ "type": "event"
231
+ },
232
+ {
233
+ "name": "VaultTokenRemoved",
234
+ "inputs": [
235
+ {
236
+ "name": "undyVaultAddr",
237
+ "type": "address",
238
+ "indexed": true
239
+ },
240
+ {
241
+ "name": "underlyingAsset",
242
+ "type": "address",
243
+ "indexed": true
244
+ },
245
+ {
246
+ "name": "vaultToken",
247
+ "type": "address",
248
+ "indexed": true
249
+ }
250
+ ],
251
+ "anonymous": false,
252
+ "type": "event"
253
+ },
254
+ {
255
+ "name": "AssetVaultTokenAdded",
256
+ "inputs": [
257
+ {
258
+ "name": "asset",
259
+ "type": "address",
260
+ "indexed": true
261
+ },
262
+ {
263
+ "name": "vaultToken",
264
+ "type": "address",
265
+ "indexed": true
266
+ }
267
+ ],
268
+ "anonymous": false,
269
+ "type": "event"
270
+ },
271
+ {
272
+ "name": "AssetVaultTokenRemoved",
273
+ "inputs": [
274
+ {
275
+ "name": "asset",
276
+ "type": "address",
277
+ "indexed": true
278
+ },
279
+ {
280
+ "name": "vaultToken",
281
+ "type": "address",
282
+ "indexed": true
283
+ }
284
+ ],
285
+ "anonymous": false,
286
+ "type": "event"
287
+ },
288
+ {
289
+ "name": "ShouldEnforceAllowlistSet",
290
+ "inputs": [
291
+ {
292
+ "name": "undyVault",
293
+ "type": "address",
294
+ "indexed": true
295
+ },
296
+ {
297
+ "name": "shouldEnforce",
298
+ "type": "bool",
299
+ "indexed": false
300
+ }
301
+ ],
302
+ "anonymous": false,
303
+ "type": "event"
304
+ },
305
+ {
306
+ "name": "AllowlistSet",
307
+ "inputs": [
308
+ {
309
+ "name": "undyVault",
310
+ "type": "address",
311
+ "indexed": true
312
+ },
313
+ {
314
+ "name": "user",
315
+ "type": "address",
316
+ "indexed": true
317
+ },
318
+ {
319
+ "name": "isAllowed",
320
+ "type": "bool",
321
+ "indexed": false
322
+ }
323
+ ],
324
+ "anonymous": false,
325
+ "type": "event"
326
+ },
327
+ {
328
+ "name": "GovChangeTimeLockModified",
329
+ "inputs": [
330
+ {
331
+ "name": "prevTimeLock",
332
+ "type": "uint256",
333
+ "indexed": false
334
+ },
335
+ {
336
+ "name": "newTimeLock",
337
+ "type": "uint256",
338
+ "indexed": false
339
+ }
340
+ ],
341
+ "anonymous": false,
342
+ "type": "event"
343
+ },
344
+ {
345
+ "name": "RegistryTimeLockModified",
346
+ "inputs": [
347
+ {
348
+ "name": "newTimeLock",
349
+ "type": "uint256",
350
+ "indexed": false
351
+ },
352
+ {
353
+ "name": "prevTimeLock",
354
+ "type": "uint256",
355
+ "indexed": false
356
+ },
357
+ {
358
+ "name": "registry",
359
+ "type": "string",
360
+ "indexed": false
361
+ }
362
+ ],
363
+ "anonymous": false,
364
+ "type": "event"
365
+ },
366
+ {
367
+ "name": "GovChangeStarted",
368
+ "inputs": [
369
+ {
370
+ "name": "prevGov",
371
+ "type": "address",
372
+ "indexed": true
373
+ },
374
+ {
375
+ "name": "newGov",
376
+ "type": "address",
377
+ "indexed": true
378
+ },
379
+ {
380
+ "name": "confirmBlock",
381
+ "type": "uint256",
382
+ "indexed": false
383
+ }
384
+ ],
385
+ "anonymous": false,
386
+ "type": "event"
387
+ },
388
+ {
389
+ "name": "GovChangeConfirmed",
390
+ "inputs": [
391
+ {
392
+ "name": "prevGov",
393
+ "type": "address",
394
+ "indexed": true
395
+ },
396
+ {
397
+ "name": "newGov",
398
+ "type": "address",
399
+ "indexed": true
400
+ },
401
+ {
402
+ "name": "initiatedBlock",
403
+ "type": "uint256",
404
+ "indexed": false
405
+ },
406
+ {
407
+ "name": "confirmBlock",
408
+ "type": "uint256",
409
+ "indexed": false
410
+ }
411
+ ],
412
+ "anonymous": false,
413
+ "type": "event"
414
+ },
415
+ {
416
+ "name": "GovChangeCancelled",
417
+ "inputs": [
418
+ {
419
+ "name": "cancelledGov",
420
+ "type": "address",
421
+ "indexed": true
422
+ },
423
+ {
424
+ "name": "initiatedBlock",
425
+ "type": "uint256",
426
+ "indexed": false
427
+ },
428
+ {
429
+ "name": "confirmBlock",
430
+ "type": "uint256",
431
+ "indexed": false
432
+ }
433
+ ],
434
+ "anonymous": false,
435
+ "type": "event"
436
+ },
437
+ {
438
+ "name": "GovRelinquished",
439
+ "inputs": [
440
+ {
441
+ "name": "prevGov",
442
+ "type": "address",
443
+ "indexed": true
444
+ }
445
+ ],
446
+ "anonymous": false,
447
+ "type": "event"
448
+ },
449
+ {
450
+ "name": "UndyHqSetupFinished",
451
+ "inputs": [
452
+ {
453
+ "name": "prevGov",
454
+ "type": "address",
455
+ "indexed": true
456
+ },
457
+ {
458
+ "name": "newGov",
459
+ "type": "address",
460
+ "indexed": true
461
+ },
462
+ {
463
+ "name": "timeLock",
464
+ "type": "uint256",
465
+ "indexed": false
466
+ }
467
+ ],
468
+ "anonymous": false,
469
+ "type": "event"
470
+ },
471
+ {
472
+ "name": "DepartmentPauseModified",
473
+ "inputs": [
474
+ {
475
+ "name": "isPaused",
476
+ "type": "bool",
477
+ "indexed": false
478
+ }
479
+ ],
480
+ "anonymous": false,
481
+ "type": "event"
482
+ },
483
+ {
484
+ "name": "DepartmentFundsRecovered",
485
+ "inputs": [
486
+ {
487
+ "name": "asset",
488
+ "type": "address",
489
+ "indexed": true
490
+ },
491
+ {
492
+ "name": "recipient",
493
+ "type": "address",
494
+ "indexed": true
495
+ },
496
+ {
497
+ "name": "balance",
498
+ "type": "uint256",
499
+ "indexed": false
500
+ }
501
+ ],
502
+ "anonymous": false,
503
+ "type": "event"
504
+ },
505
+ {
506
+ "name": "NewAddressPending",
507
+ "inputs": [
508
+ {
509
+ "name": "addr",
510
+ "type": "address",
511
+ "indexed": true
512
+ },
513
+ {
514
+ "name": "description",
515
+ "type": "string",
516
+ "indexed": false
517
+ },
518
+ {
519
+ "name": "confirmBlock",
520
+ "type": "uint256",
521
+ "indexed": false
522
+ },
523
+ {
524
+ "name": "registry",
525
+ "type": "string",
526
+ "indexed": false
527
+ }
528
+ ],
529
+ "anonymous": false,
530
+ "type": "event"
531
+ },
532
+ {
533
+ "name": "NewAddressConfirmed",
534
+ "inputs": [
535
+ {
536
+ "name": "addr",
537
+ "type": "address",
538
+ "indexed": true
539
+ },
540
+ {
541
+ "name": "regId",
542
+ "type": "uint256",
543
+ "indexed": false
544
+ },
545
+ {
546
+ "name": "description",
547
+ "type": "string",
548
+ "indexed": false
549
+ },
550
+ {
551
+ "name": "registry",
552
+ "type": "string",
553
+ "indexed": false
554
+ }
555
+ ],
556
+ "anonymous": false,
557
+ "type": "event"
558
+ },
559
+ {
560
+ "name": "NewAddressCancelled",
561
+ "inputs": [
562
+ {
563
+ "name": "description",
564
+ "type": "string",
565
+ "indexed": false
566
+ },
567
+ {
568
+ "name": "addr",
569
+ "type": "address",
570
+ "indexed": true
571
+ },
572
+ {
573
+ "name": "initiatedBlock",
574
+ "type": "uint256",
575
+ "indexed": false
576
+ },
577
+ {
578
+ "name": "confirmBlock",
579
+ "type": "uint256",
580
+ "indexed": false
581
+ },
582
+ {
583
+ "name": "registry",
584
+ "type": "string",
585
+ "indexed": false
586
+ }
587
+ ],
588
+ "anonymous": false,
589
+ "type": "event"
590
+ },
591
+ {
592
+ "name": "AddressDisablePending",
593
+ "inputs": [
594
+ {
595
+ "name": "regId",
596
+ "type": "uint256",
597
+ "indexed": false
598
+ },
599
+ {
600
+ "name": "description",
601
+ "type": "string",
602
+ "indexed": false
603
+ },
604
+ {
605
+ "name": "addr",
606
+ "type": "address",
607
+ "indexed": true
608
+ },
609
+ {
610
+ "name": "version",
611
+ "type": "uint256",
612
+ "indexed": false
613
+ },
614
+ {
615
+ "name": "confirmBlock",
616
+ "type": "uint256",
617
+ "indexed": false
618
+ },
619
+ {
620
+ "name": "registry",
621
+ "type": "string",
622
+ "indexed": false
623
+ }
624
+ ],
625
+ "anonymous": false,
626
+ "type": "event"
627
+ },
628
+ {
629
+ "name": "AddressDisableConfirmed",
630
+ "inputs": [
631
+ {
632
+ "name": "regId",
633
+ "type": "uint256",
634
+ "indexed": false
635
+ },
636
+ {
637
+ "name": "description",
638
+ "type": "string",
639
+ "indexed": false
640
+ },
641
+ {
642
+ "name": "addr",
643
+ "type": "address",
644
+ "indexed": true
645
+ },
646
+ {
647
+ "name": "version",
648
+ "type": "uint256",
649
+ "indexed": false
650
+ },
651
+ {
652
+ "name": "registry",
653
+ "type": "string",
654
+ "indexed": false
655
+ }
656
+ ],
657
+ "anonymous": false,
658
+ "type": "event"
659
+ },
660
+ {
661
+ "name": "AddressDisableCancelled",
662
+ "inputs": [
663
+ {
664
+ "name": "regId",
665
+ "type": "uint256",
666
+ "indexed": false
667
+ },
668
+ {
669
+ "name": "description",
670
+ "type": "string",
671
+ "indexed": false
672
+ },
673
+ {
674
+ "name": "addr",
675
+ "type": "address",
676
+ "indexed": true
677
+ },
678
+ {
679
+ "name": "initiatedBlock",
680
+ "type": "uint256",
681
+ "indexed": false
682
+ },
683
+ {
684
+ "name": "confirmBlock",
685
+ "type": "uint256",
686
+ "indexed": false
687
+ },
688
+ {
689
+ "name": "registry",
690
+ "type": "string",
691
+ "indexed": false
692
+ }
693
+ ],
694
+ "anonymous": false,
695
+ "type": "event"
696
+ },
697
+ {
698
+ "stateMutability": "view",
699
+ "type": "function",
700
+ "name": "getUndyHqFromGov",
701
+ "inputs": [],
702
+ "outputs": [
703
+ {
704
+ "name": "",
705
+ "type": "address"
706
+ }
707
+ ]
708
+ },
709
+ {
710
+ "stateMutability": "view",
711
+ "type": "function",
712
+ "name": "canGovern",
713
+ "inputs": [
714
+ {
715
+ "name": "_addr",
716
+ "type": "address"
717
+ }
718
+ ],
719
+ "outputs": [
720
+ {
721
+ "name": "",
722
+ "type": "bool"
723
+ }
724
+ ]
725
+ },
726
+ {
727
+ "stateMutability": "view",
728
+ "type": "function",
729
+ "name": "getGovernors",
730
+ "inputs": [],
731
+ "outputs": [
732
+ {
733
+ "name": "",
734
+ "type": "address[]"
735
+ }
736
+ ]
737
+ },
738
+ {
739
+ "stateMutability": "view",
740
+ "type": "function",
741
+ "name": "hasPendingGovChange",
742
+ "inputs": [],
743
+ "outputs": [
744
+ {
745
+ "name": "",
746
+ "type": "bool"
747
+ }
748
+ ]
749
+ },
750
+ {
751
+ "stateMutability": "nonpayable",
752
+ "type": "function",
753
+ "name": "startGovernanceChange",
754
+ "inputs": [
755
+ {
756
+ "name": "_newGov",
757
+ "type": "address"
758
+ }
759
+ ],
760
+ "outputs": []
761
+ },
762
+ {
763
+ "stateMutability": "nonpayable",
764
+ "type": "function",
765
+ "name": "confirmGovernanceChange",
766
+ "inputs": [],
767
+ "outputs": []
768
+ },
769
+ {
770
+ "stateMutability": "nonpayable",
771
+ "type": "function",
772
+ "name": "cancelGovernanceChange",
773
+ "inputs": [],
774
+ "outputs": []
775
+ },
776
+ {
777
+ "stateMutability": "nonpayable",
778
+ "type": "function",
779
+ "name": "relinquishGov",
780
+ "inputs": [],
781
+ "outputs": []
782
+ },
783
+ {
784
+ "stateMutability": "nonpayable",
785
+ "type": "function",
786
+ "name": "setGovTimeLock",
787
+ "inputs": [
788
+ {
789
+ "name": "_numBlocks",
790
+ "type": "uint256"
791
+ }
792
+ ],
793
+ "outputs": [
794
+ {
795
+ "name": "",
796
+ "type": "bool"
797
+ }
798
+ ]
799
+ },
800
+ {
801
+ "stateMutability": "view",
802
+ "type": "function",
803
+ "name": "isValidGovTimeLock",
804
+ "inputs": [
805
+ {
806
+ "name": "_newTimeLock",
807
+ "type": "uint256"
808
+ }
809
+ ],
810
+ "outputs": [
811
+ {
812
+ "name": "",
813
+ "type": "bool"
814
+ }
815
+ ]
816
+ },
817
+ {
818
+ "stateMutability": "view",
819
+ "type": "function",
820
+ "name": "minGovChangeTimeLock",
821
+ "inputs": [],
822
+ "outputs": [
823
+ {
824
+ "name": "",
825
+ "type": "uint256"
826
+ }
827
+ ]
828
+ },
829
+ {
830
+ "stateMutability": "view",
831
+ "type": "function",
832
+ "name": "maxGovChangeTimeLock",
833
+ "inputs": [],
834
+ "outputs": [
835
+ {
836
+ "name": "",
837
+ "type": "uint256"
838
+ }
839
+ ]
840
+ },
841
+ {
842
+ "stateMutability": "nonpayable",
843
+ "type": "function",
844
+ "name": "finishUndyHqSetup",
845
+ "inputs": [
846
+ {
847
+ "name": "_newGov",
848
+ "type": "address"
849
+ }
850
+ ],
851
+ "outputs": [
852
+ {
853
+ "name": "",
854
+ "type": "bool"
855
+ }
856
+ ]
857
+ },
858
+ {
859
+ "stateMutability": "nonpayable",
860
+ "type": "function",
861
+ "name": "finishUndyHqSetup",
862
+ "inputs": [
863
+ {
864
+ "name": "_newGov",
865
+ "type": "address"
866
+ },
867
+ {
868
+ "name": "_timeLock",
869
+ "type": "uint256"
870
+ }
871
+ ],
872
+ "outputs": [
873
+ {
874
+ "name": "",
875
+ "type": "bool"
876
+ }
877
+ ]
878
+ },
879
+ {
880
+ "stateMutability": "view",
881
+ "type": "function",
882
+ "name": "governance",
883
+ "inputs": [],
884
+ "outputs": [
885
+ {
886
+ "name": "",
887
+ "type": "address"
888
+ }
889
+ ]
890
+ },
891
+ {
892
+ "stateMutability": "view",
893
+ "type": "function",
894
+ "name": "pendingGov",
895
+ "inputs": [],
896
+ "outputs": [
897
+ {
898
+ "name": "",
899
+ "type": "tuple",
900
+ "components": [
901
+ {
902
+ "name": "newGov",
903
+ "type": "address"
904
+ },
905
+ {
906
+ "name": "initiatedBlock",
907
+ "type": "uint256"
908
+ },
909
+ {
910
+ "name": "confirmBlock",
911
+ "type": "uint256"
912
+ }
913
+ ]
914
+ }
915
+ ]
916
+ },
917
+ {
918
+ "stateMutability": "view",
919
+ "type": "function",
920
+ "name": "numGovChanges",
921
+ "inputs": [],
922
+ "outputs": [
923
+ {
924
+ "name": "",
925
+ "type": "uint256"
926
+ }
927
+ ]
928
+ },
929
+ {
930
+ "stateMutability": "view",
931
+ "type": "function",
932
+ "name": "govChangeTimeLock",
933
+ "inputs": [],
934
+ "outputs": [
935
+ {
936
+ "name": "",
937
+ "type": "uint256"
938
+ }
939
+ ]
940
+ },
941
+ {
942
+ "stateMutability": "view",
943
+ "type": "function",
944
+ "name": "getRegistryDescription",
945
+ "inputs": [],
946
+ "outputs": [
947
+ {
948
+ "name": "",
949
+ "type": "string"
950
+ }
951
+ ]
952
+ },
953
+ {
954
+ "stateMutability": "view",
955
+ "type": "function",
956
+ "name": "isValidNewAddress",
957
+ "inputs": [
958
+ {
959
+ "name": "_addr",
960
+ "type": "address"
961
+ }
962
+ ],
963
+ "outputs": [
964
+ {
965
+ "name": "",
966
+ "type": "bool"
967
+ }
968
+ ]
969
+ },
970
+ {
971
+ "stateMutability": "view",
972
+ "type": "function",
973
+ "name": "isValidAddressUpdate",
974
+ "inputs": [
975
+ {
976
+ "name": "_regId",
977
+ "type": "uint256"
978
+ },
979
+ {
980
+ "name": "_newAddr",
981
+ "type": "address"
982
+ }
983
+ ],
984
+ "outputs": [
985
+ {
986
+ "name": "",
987
+ "type": "bool"
988
+ }
989
+ ]
990
+ },
991
+ {
992
+ "stateMutability": "view",
993
+ "type": "function",
994
+ "name": "isValidAddressDisable",
995
+ "inputs": [
996
+ {
997
+ "name": "_regId",
998
+ "type": "uint256"
999
+ }
1000
+ ],
1001
+ "outputs": [
1002
+ {
1003
+ "name": "",
1004
+ "type": "bool"
1005
+ }
1006
+ ]
1007
+ },
1008
+ {
1009
+ "stateMutability": "nonpayable",
1010
+ "type": "function",
1011
+ "name": "setRegistryTimeLock",
1012
+ "inputs": [
1013
+ {
1014
+ "name": "_numBlocks",
1015
+ "type": "uint256"
1016
+ }
1017
+ ],
1018
+ "outputs": [
1019
+ {
1020
+ "name": "",
1021
+ "type": "bool"
1022
+ }
1023
+ ]
1024
+ },
1025
+ {
1026
+ "stateMutability": "view",
1027
+ "type": "function",
1028
+ "name": "isValidRegistryTimeLock",
1029
+ "inputs": [
1030
+ {
1031
+ "name": "_numBlocks",
1032
+ "type": "uint256"
1033
+ }
1034
+ ],
1035
+ "outputs": [
1036
+ {
1037
+ "name": "",
1038
+ "type": "bool"
1039
+ }
1040
+ ]
1041
+ },
1042
+ {
1043
+ "stateMutability": "nonpayable",
1044
+ "type": "function",
1045
+ "name": "setRegistryTimeLockAfterSetup",
1046
+ "inputs": [],
1047
+ "outputs": [
1048
+ {
1049
+ "name": "",
1050
+ "type": "bool"
1051
+ }
1052
+ ]
1053
+ },
1054
+ {
1055
+ "stateMutability": "nonpayable",
1056
+ "type": "function",
1057
+ "name": "setRegistryTimeLockAfterSetup",
1058
+ "inputs": [
1059
+ {
1060
+ "name": "_numBlocks",
1061
+ "type": "uint256"
1062
+ }
1063
+ ],
1064
+ "outputs": [
1065
+ {
1066
+ "name": "",
1067
+ "type": "bool"
1068
+ }
1069
+ ]
1070
+ },
1071
+ {
1072
+ "stateMutability": "view",
1073
+ "type": "function",
1074
+ "name": "minRegistryTimeLock",
1075
+ "inputs": [],
1076
+ "outputs": [
1077
+ {
1078
+ "name": "",
1079
+ "type": "uint256"
1080
+ }
1081
+ ]
1082
+ },
1083
+ {
1084
+ "stateMutability": "view",
1085
+ "type": "function",
1086
+ "name": "maxRegistryTimeLock",
1087
+ "inputs": [],
1088
+ "outputs": [
1089
+ {
1090
+ "name": "",
1091
+ "type": "uint256"
1092
+ }
1093
+ ]
1094
+ },
1095
+ {
1096
+ "stateMutability": "view",
1097
+ "type": "function",
1098
+ "name": "isValidAddr",
1099
+ "inputs": [
1100
+ {
1101
+ "name": "_addr",
1102
+ "type": "address"
1103
+ }
1104
+ ],
1105
+ "outputs": [
1106
+ {
1107
+ "name": "",
1108
+ "type": "bool"
1109
+ }
1110
+ ]
1111
+ },
1112
+ {
1113
+ "stateMutability": "view",
1114
+ "type": "function",
1115
+ "name": "isValidRegId",
1116
+ "inputs": [
1117
+ {
1118
+ "name": "_regId",
1119
+ "type": "uint256"
1120
+ }
1121
+ ],
1122
+ "outputs": [
1123
+ {
1124
+ "name": "",
1125
+ "type": "bool"
1126
+ }
1127
+ ]
1128
+ },
1129
+ {
1130
+ "stateMutability": "view",
1131
+ "type": "function",
1132
+ "name": "getRegId",
1133
+ "inputs": [
1134
+ {
1135
+ "name": "_addr",
1136
+ "type": "address"
1137
+ }
1138
+ ],
1139
+ "outputs": [
1140
+ {
1141
+ "name": "",
1142
+ "type": "uint256"
1143
+ }
1144
+ ]
1145
+ },
1146
+ {
1147
+ "stateMutability": "view",
1148
+ "type": "function",
1149
+ "name": "getAddr",
1150
+ "inputs": [
1151
+ {
1152
+ "name": "_regId",
1153
+ "type": "uint256"
1154
+ }
1155
+ ],
1156
+ "outputs": [
1157
+ {
1158
+ "name": "",
1159
+ "type": "address"
1160
+ }
1161
+ ]
1162
+ },
1163
+ {
1164
+ "stateMutability": "view",
1165
+ "type": "function",
1166
+ "name": "getAddrInfo",
1167
+ "inputs": [
1168
+ {
1169
+ "name": "_regId",
1170
+ "type": "uint256"
1171
+ }
1172
+ ],
1173
+ "outputs": [
1174
+ {
1175
+ "name": "",
1176
+ "type": "tuple",
1177
+ "components": [
1178
+ {
1179
+ "name": "addr",
1180
+ "type": "address"
1181
+ },
1182
+ {
1183
+ "name": "version",
1184
+ "type": "uint256"
1185
+ },
1186
+ {
1187
+ "name": "lastModified",
1188
+ "type": "uint256"
1189
+ },
1190
+ {
1191
+ "name": "description",
1192
+ "type": "string"
1193
+ }
1194
+ ]
1195
+ }
1196
+ ]
1197
+ },
1198
+ {
1199
+ "stateMutability": "view",
1200
+ "type": "function",
1201
+ "name": "getAddrDescription",
1202
+ "inputs": [
1203
+ {
1204
+ "name": "_regId",
1205
+ "type": "uint256"
1206
+ }
1207
+ ],
1208
+ "outputs": [
1209
+ {
1210
+ "name": "",
1211
+ "type": "string"
1212
+ }
1213
+ ]
1214
+ },
1215
+ {
1216
+ "stateMutability": "view",
1217
+ "type": "function",
1218
+ "name": "getNumAddrs",
1219
+ "inputs": [],
1220
+ "outputs": [
1221
+ {
1222
+ "name": "",
1223
+ "type": "uint256"
1224
+ }
1225
+ ]
1226
+ },
1227
+ {
1228
+ "stateMutability": "view",
1229
+ "type": "function",
1230
+ "name": "getLastAddr",
1231
+ "inputs": [],
1232
+ "outputs": [
1233
+ {
1234
+ "name": "",
1235
+ "type": "address"
1236
+ }
1237
+ ]
1238
+ },
1239
+ {
1240
+ "stateMutability": "view",
1241
+ "type": "function",
1242
+ "name": "getLastRegId",
1243
+ "inputs": [],
1244
+ "outputs": [
1245
+ {
1246
+ "name": "",
1247
+ "type": "uint256"
1248
+ }
1249
+ ]
1250
+ },
1251
+ {
1252
+ "stateMutability": "view",
1253
+ "type": "function",
1254
+ "name": "registryChangeTimeLock",
1255
+ "inputs": [],
1256
+ "outputs": [
1257
+ {
1258
+ "name": "",
1259
+ "type": "uint256"
1260
+ }
1261
+ ]
1262
+ },
1263
+ {
1264
+ "stateMutability": "view",
1265
+ "type": "function",
1266
+ "name": "addrInfo",
1267
+ "inputs": [
1268
+ {
1269
+ "name": "arg0",
1270
+ "type": "uint256"
1271
+ }
1272
+ ],
1273
+ "outputs": [
1274
+ {
1275
+ "name": "",
1276
+ "type": "tuple",
1277
+ "components": [
1278
+ {
1279
+ "name": "addr",
1280
+ "type": "address"
1281
+ },
1282
+ {
1283
+ "name": "version",
1284
+ "type": "uint256"
1285
+ },
1286
+ {
1287
+ "name": "lastModified",
1288
+ "type": "uint256"
1289
+ },
1290
+ {
1291
+ "name": "description",
1292
+ "type": "string"
1293
+ }
1294
+ ]
1295
+ }
1296
+ ]
1297
+ },
1298
+ {
1299
+ "stateMutability": "view",
1300
+ "type": "function",
1301
+ "name": "addrToRegId",
1302
+ "inputs": [
1303
+ {
1304
+ "name": "arg0",
1305
+ "type": "address"
1306
+ }
1307
+ ],
1308
+ "outputs": [
1309
+ {
1310
+ "name": "",
1311
+ "type": "uint256"
1312
+ }
1313
+ ]
1314
+ },
1315
+ {
1316
+ "stateMutability": "view",
1317
+ "type": "function",
1318
+ "name": "numAddrs",
1319
+ "inputs": [],
1320
+ "outputs": [
1321
+ {
1322
+ "name": "",
1323
+ "type": "uint256"
1324
+ }
1325
+ ]
1326
+ },
1327
+ {
1328
+ "stateMutability": "view",
1329
+ "type": "function",
1330
+ "name": "pendingNewAddr",
1331
+ "inputs": [
1332
+ {
1333
+ "name": "arg0",
1334
+ "type": "address"
1335
+ }
1336
+ ],
1337
+ "outputs": [
1338
+ {
1339
+ "name": "",
1340
+ "type": "tuple",
1341
+ "components": [
1342
+ {
1343
+ "name": "description",
1344
+ "type": "string"
1345
+ },
1346
+ {
1347
+ "name": "initiatedBlock",
1348
+ "type": "uint256"
1349
+ },
1350
+ {
1351
+ "name": "confirmBlock",
1352
+ "type": "uint256"
1353
+ }
1354
+ ]
1355
+ }
1356
+ ]
1357
+ },
1358
+ {
1359
+ "stateMutability": "view",
1360
+ "type": "function",
1361
+ "name": "pendingAddrUpdate",
1362
+ "inputs": [
1363
+ {
1364
+ "name": "arg0",
1365
+ "type": "uint256"
1366
+ }
1367
+ ],
1368
+ "outputs": [
1369
+ {
1370
+ "name": "",
1371
+ "type": "tuple",
1372
+ "components": [
1373
+ {
1374
+ "name": "newAddr",
1375
+ "type": "address"
1376
+ },
1377
+ {
1378
+ "name": "initiatedBlock",
1379
+ "type": "uint256"
1380
+ },
1381
+ {
1382
+ "name": "confirmBlock",
1383
+ "type": "uint256"
1384
+ }
1385
+ ]
1386
+ }
1387
+ ]
1388
+ },
1389
+ {
1390
+ "stateMutability": "view",
1391
+ "type": "function",
1392
+ "name": "pendingAddrDisable",
1393
+ "inputs": [
1394
+ {
1395
+ "name": "arg0",
1396
+ "type": "uint256"
1397
+ }
1398
+ ],
1399
+ "outputs": [
1400
+ {
1401
+ "name": "",
1402
+ "type": "tuple",
1403
+ "components": [
1404
+ {
1405
+ "name": "initiatedBlock",
1406
+ "type": "uint256"
1407
+ },
1408
+ {
1409
+ "name": "confirmBlock",
1410
+ "type": "uint256"
1411
+ }
1412
+ ]
1413
+ }
1414
+ ]
1415
+ },
1416
+ {
1417
+ "stateMutability": "view",
1418
+ "type": "function",
1419
+ "name": "getAddys",
1420
+ "inputs": [],
1421
+ "outputs": [
1422
+ {
1423
+ "name": "",
1424
+ "type": "tuple",
1425
+ "components": [
1426
+ {
1427
+ "name": "hq",
1428
+ "type": "address"
1429
+ },
1430
+ {
1431
+ "name": "undyToken",
1432
+ "type": "address"
1433
+ },
1434
+ {
1435
+ "name": "ledger",
1436
+ "type": "address"
1437
+ },
1438
+ {
1439
+ "name": "missionControl",
1440
+ "type": "address"
1441
+ },
1442
+ {
1443
+ "name": "legoBook",
1444
+ "type": "address"
1445
+ },
1446
+ {
1447
+ "name": "switchboard",
1448
+ "type": "address"
1449
+ },
1450
+ {
1451
+ "name": "hatchery",
1452
+ "type": "address"
1453
+ },
1454
+ {
1455
+ "name": "lootDistributor",
1456
+ "type": "address"
1457
+ },
1458
+ {
1459
+ "name": "appraiser",
1460
+ "type": "address"
1461
+ },
1462
+ {
1463
+ "name": "walletBackpack",
1464
+ "type": "address"
1465
+ },
1466
+ {
1467
+ "name": "billing",
1468
+ "type": "address"
1469
+ },
1470
+ {
1471
+ "name": "vaultRegistry",
1472
+ "type": "address"
1473
+ }
1474
+ ]
1475
+ }
1476
+ ]
1477
+ },
1478
+ {
1479
+ "stateMutability": "view",
1480
+ "type": "function",
1481
+ "name": "getUndyHq",
1482
+ "inputs": [],
1483
+ "outputs": [
1484
+ {
1485
+ "name": "",
1486
+ "type": "address"
1487
+ }
1488
+ ]
1489
+ },
1490
+ {
1491
+ "stateMutability": "view",
1492
+ "type": "function",
1493
+ "name": "canMintUndy",
1494
+ "inputs": [],
1495
+ "outputs": [
1496
+ {
1497
+ "name": "",
1498
+ "type": "bool"
1499
+ }
1500
+ ]
1501
+ },
1502
+ {
1503
+ "stateMutability": "nonpayable",
1504
+ "type": "function",
1505
+ "name": "pause",
1506
+ "inputs": [
1507
+ {
1508
+ "name": "_shouldPause",
1509
+ "type": "bool"
1510
+ }
1511
+ ],
1512
+ "outputs": []
1513
+ },
1514
+ {
1515
+ "stateMutability": "nonpayable",
1516
+ "type": "function",
1517
+ "name": "recoverFunds",
1518
+ "inputs": [
1519
+ {
1520
+ "name": "_recipient",
1521
+ "type": "address"
1522
+ },
1523
+ {
1524
+ "name": "_asset",
1525
+ "type": "address"
1526
+ }
1527
+ ],
1528
+ "outputs": []
1529
+ },
1530
+ {
1531
+ "stateMutability": "nonpayable",
1532
+ "type": "function",
1533
+ "name": "recoverFundsMany",
1534
+ "inputs": [
1535
+ {
1536
+ "name": "_recipient",
1537
+ "type": "address"
1538
+ },
1539
+ {
1540
+ "name": "_assets",
1541
+ "type": "address[]"
1542
+ }
1543
+ ],
1544
+ "outputs": []
1545
+ },
1546
+ {
1547
+ "stateMutability": "view",
1548
+ "type": "function",
1549
+ "name": "isPaused",
1550
+ "inputs": [],
1551
+ "outputs": [
1552
+ {
1553
+ "name": "",
1554
+ "type": "bool"
1555
+ }
1556
+ ]
1557
+ },
1558
+ {
1559
+ "stateMutability": "view",
1560
+ "type": "function",
1561
+ "name": "isEarnVault",
1562
+ "inputs": [
1563
+ {
1564
+ "name": "_undyVaultAddr",
1565
+ "type": "address"
1566
+ }
1567
+ ],
1568
+ "outputs": [
1569
+ {
1570
+ "name": "",
1571
+ "type": "bool"
1572
+ }
1573
+ ]
1574
+ },
1575
+ {
1576
+ "stateMutability": "view",
1577
+ "type": "function",
1578
+ "name": "isLeveragedVault",
1579
+ "inputs": [
1580
+ {
1581
+ "name": "_undyVaultAddr",
1582
+ "type": "address"
1583
+ }
1584
+ ],
1585
+ "outputs": [
1586
+ {
1587
+ "name": "",
1588
+ "type": "bool"
1589
+ }
1590
+ ]
1591
+ },
1592
+ {
1593
+ "stateMutability": "view",
1594
+ "type": "function",
1595
+ "name": "isBasicEarnVault",
1596
+ "inputs": [
1597
+ {
1598
+ "name": "_undyVaultAddr",
1599
+ "type": "address"
1600
+ }
1601
+ ],
1602
+ "outputs": [
1603
+ {
1604
+ "name": "",
1605
+ "type": "bool"
1606
+ }
1607
+ ]
1608
+ },
1609
+ {
1610
+ "stateMutability": "view",
1611
+ "type": "function",
1612
+ "name": "hasConfig",
1613
+ "inputs": [
1614
+ {
1615
+ "name": "_undyVaultAddr",
1616
+ "type": "address"
1617
+ }
1618
+ ],
1619
+ "outputs": [
1620
+ {
1621
+ "name": "",
1622
+ "type": "bool"
1623
+ }
1624
+ ]
1625
+ },
1626
+ {
1627
+ "stateMutability": "nonpayable",
1628
+ "type": "function",
1629
+ "name": "startAddNewAddressToRegistry",
1630
+ "inputs": [
1631
+ {
1632
+ "name": "_undyVaultAddr",
1633
+ "type": "address"
1634
+ },
1635
+ {
1636
+ "name": "_description",
1637
+ "type": "string"
1638
+ }
1639
+ ],
1640
+ "outputs": [
1641
+ {
1642
+ "name": "",
1643
+ "type": "bool"
1644
+ }
1645
+ ]
1646
+ },
1647
+ {
1648
+ "stateMutability": "nonpayable",
1649
+ "type": "function",
1650
+ "name": "confirmNewAddressToRegistry",
1651
+ "inputs": [
1652
+ {
1653
+ "name": "_undyVaultAddr",
1654
+ "type": "address"
1655
+ }
1656
+ ],
1657
+ "outputs": [
1658
+ {
1659
+ "name": "",
1660
+ "type": "uint256"
1661
+ }
1662
+ ]
1663
+ },
1664
+ {
1665
+ "stateMutability": "nonpayable",
1666
+ "type": "function",
1667
+ "name": "confirmNewAddressToRegistry",
1668
+ "inputs": [
1669
+ {
1670
+ "name": "_undyVaultAddr",
1671
+ "type": "address"
1672
+ },
1673
+ {
1674
+ "name": "_isLeveragedVault",
1675
+ "type": "bool"
1676
+ }
1677
+ ],
1678
+ "outputs": [
1679
+ {
1680
+ "name": "",
1681
+ "type": "uint256"
1682
+ }
1683
+ ]
1684
+ },
1685
+ {
1686
+ "stateMutability": "nonpayable",
1687
+ "type": "function",
1688
+ "name": "confirmNewAddressToRegistry",
1689
+ "inputs": [
1690
+ {
1691
+ "name": "_undyVaultAddr",
1692
+ "type": "address"
1693
+ },
1694
+ {
1695
+ "name": "_isLeveragedVault",
1696
+ "type": "bool"
1697
+ },
1698
+ {
1699
+ "name": "_shouldEnforceAllowlist",
1700
+ "type": "bool"
1701
+ }
1702
+ ],
1703
+ "outputs": [
1704
+ {
1705
+ "name": "",
1706
+ "type": "uint256"
1707
+ }
1708
+ ]
1709
+ },
1710
+ {
1711
+ "stateMutability": "nonpayable",
1712
+ "type": "function",
1713
+ "name": "confirmNewAddressToRegistry",
1714
+ "inputs": [
1715
+ {
1716
+ "name": "_undyVaultAddr",
1717
+ "type": "address"
1718
+ },
1719
+ {
1720
+ "name": "_isLeveragedVault",
1721
+ "type": "bool"
1722
+ },
1723
+ {
1724
+ "name": "_shouldEnforceAllowlist",
1725
+ "type": "bool"
1726
+ },
1727
+ {
1728
+ "name": "_approvedVaultTokens",
1729
+ "type": "address[]"
1730
+ }
1731
+ ],
1732
+ "outputs": [
1733
+ {
1734
+ "name": "",
1735
+ "type": "uint256"
1736
+ }
1737
+ ]
1738
+ },
1739
+ {
1740
+ "stateMutability": "nonpayable",
1741
+ "type": "function",
1742
+ "name": "confirmNewAddressToRegistry",
1743
+ "inputs": [
1744
+ {
1745
+ "name": "_undyVaultAddr",
1746
+ "type": "address"
1747
+ },
1748
+ {
1749
+ "name": "_isLeveragedVault",
1750
+ "type": "bool"
1751
+ },
1752
+ {
1753
+ "name": "_shouldEnforceAllowlist",
1754
+ "type": "bool"
1755
+ },
1756
+ {
1757
+ "name": "_approvedVaultTokens",
1758
+ "type": "address[]"
1759
+ },
1760
+ {
1761
+ "name": "_maxDepositAmount",
1762
+ "type": "uint256"
1763
+ }
1764
+ ],
1765
+ "outputs": [
1766
+ {
1767
+ "name": "",
1768
+ "type": "uint256"
1769
+ }
1770
+ ]
1771
+ },
1772
+ {
1773
+ "stateMutability": "nonpayable",
1774
+ "type": "function",
1775
+ "name": "confirmNewAddressToRegistry",
1776
+ "inputs": [
1777
+ {
1778
+ "name": "_undyVaultAddr",
1779
+ "type": "address"
1780
+ },
1781
+ {
1782
+ "name": "_isLeveragedVault",
1783
+ "type": "bool"
1784
+ },
1785
+ {
1786
+ "name": "_shouldEnforceAllowlist",
1787
+ "type": "bool"
1788
+ },
1789
+ {
1790
+ "name": "_approvedVaultTokens",
1791
+ "type": "address[]"
1792
+ },
1793
+ {
1794
+ "name": "_maxDepositAmount",
1795
+ "type": "uint256"
1796
+ },
1797
+ {
1798
+ "name": "_minYieldWithdrawAmount",
1799
+ "type": "uint256"
1800
+ }
1801
+ ],
1802
+ "outputs": [
1803
+ {
1804
+ "name": "",
1805
+ "type": "uint256"
1806
+ }
1807
+ ]
1808
+ },
1809
+ {
1810
+ "stateMutability": "nonpayable",
1811
+ "type": "function",
1812
+ "name": "confirmNewAddressToRegistry",
1813
+ "inputs": [
1814
+ {
1815
+ "name": "_undyVaultAddr",
1816
+ "type": "address"
1817
+ },
1818
+ {
1819
+ "name": "_isLeveragedVault",
1820
+ "type": "bool"
1821
+ },
1822
+ {
1823
+ "name": "_shouldEnforceAllowlist",
1824
+ "type": "bool"
1825
+ },
1826
+ {
1827
+ "name": "_approvedVaultTokens",
1828
+ "type": "address[]"
1829
+ },
1830
+ {
1831
+ "name": "_maxDepositAmount",
1832
+ "type": "uint256"
1833
+ },
1834
+ {
1835
+ "name": "_minYieldWithdrawAmount",
1836
+ "type": "uint256"
1837
+ },
1838
+ {
1839
+ "name": "_performanceFee",
1840
+ "type": "uint256"
1841
+ }
1842
+ ],
1843
+ "outputs": [
1844
+ {
1845
+ "name": "",
1846
+ "type": "uint256"
1847
+ }
1848
+ ]
1849
+ },
1850
+ {
1851
+ "stateMutability": "nonpayable",
1852
+ "type": "function",
1853
+ "name": "confirmNewAddressToRegistry",
1854
+ "inputs": [
1855
+ {
1856
+ "name": "_undyVaultAddr",
1857
+ "type": "address"
1858
+ },
1859
+ {
1860
+ "name": "_isLeveragedVault",
1861
+ "type": "bool"
1862
+ },
1863
+ {
1864
+ "name": "_shouldEnforceAllowlist",
1865
+ "type": "bool"
1866
+ },
1867
+ {
1868
+ "name": "_approvedVaultTokens",
1869
+ "type": "address[]"
1870
+ },
1871
+ {
1872
+ "name": "_maxDepositAmount",
1873
+ "type": "uint256"
1874
+ },
1875
+ {
1876
+ "name": "_minYieldWithdrawAmount",
1877
+ "type": "uint256"
1878
+ },
1879
+ {
1880
+ "name": "_performanceFee",
1881
+ "type": "uint256"
1882
+ },
1883
+ {
1884
+ "name": "_defaultTargetVaultToken",
1885
+ "type": "address"
1886
+ }
1887
+ ],
1888
+ "outputs": [
1889
+ {
1890
+ "name": "",
1891
+ "type": "uint256"
1892
+ }
1893
+ ]
1894
+ },
1895
+ {
1896
+ "stateMutability": "nonpayable",
1897
+ "type": "function",
1898
+ "name": "confirmNewAddressToRegistry",
1899
+ "inputs": [
1900
+ {
1901
+ "name": "_undyVaultAddr",
1902
+ "type": "address"
1903
+ },
1904
+ {
1905
+ "name": "_isLeveragedVault",
1906
+ "type": "bool"
1907
+ },
1908
+ {
1909
+ "name": "_shouldEnforceAllowlist",
1910
+ "type": "bool"
1911
+ },
1912
+ {
1913
+ "name": "_approvedVaultTokens",
1914
+ "type": "address[]"
1915
+ },
1916
+ {
1917
+ "name": "_maxDepositAmount",
1918
+ "type": "uint256"
1919
+ },
1920
+ {
1921
+ "name": "_minYieldWithdrawAmount",
1922
+ "type": "uint256"
1923
+ },
1924
+ {
1925
+ "name": "_performanceFee",
1926
+ "type": "uint256"
1927
+ },
1928
+ {
1929
+ "name": "_defaultTargetVaultToken",
1930
+ "type": "address"
1931
+ },
1932
+ {
1933
+ "name": "_shouldAutoDeposit",
1934
+ "type": "bool"
1935
+ }
1936
+ ],
1937
+ "outputs": [
1938
+ {
1939
+ "name": "",
1940
+ "type": "uint256"
1941
+ }
1942
+ ]
1943
+ },
1944
+ {
1945
+ "stateMutability": "nonpayable",
1946
+ "type": "function",
1947
+ "name": "confirmNewAddressToRegistry",
1948
+ "inputs": [
1949
+ {
1950
+ "name": "_undyVaultAddr",
1951
+ "type": "address"
1952
+ },
1953
+ {
1954
+ "name": "_isLeveragedVault",
1955
+ "type": "bool"
1956
+ },
1957
+ {
1958
+ "name": "_shouldEnforceAllowlist",
1959
+ "type": "bool"
1960
+ },
1961
+ {
1962
+ "name": "_approvedVaultTokens",
1963
+ "type": "address[]"
1964
+ },
1965
+ {
1966
+ "name": "_maxDepositAmount",
1967
+ "type": "uint256"
1968
+ },
1969
+ {
1970
+ "name": "_minYieldWithdrawAmount",
1971
+ "type": "uint256"
1972
+ },
1973
+ {
1974
+ "name": "_performanceFee",
1975
+ "type": "uint256"
1976
+ },
1977
+ {
1978
+ "name": "_defaultTargetVaultToken",
1979
+ "type": "address"
1980
+ },
1981
+ {
1982
+ "name": "_shouldAutoDeposit",
1983
+ "type": "bool"
1984
+ },
1985
+ {
1986
+ "name": "_canDeposit",
1987
+ "type": "bool"
1988
+ }
1989
+ ],
1990
+ "outputs": [
1991
+ {
1992
+ "name": "",
1993
+ "type": "uint256"
1994
+ }
1995
+ ]
1996
+ },
1997
+ {
1998
+ "stateMutability": "nonpayable",
1999
+ "type": "function",
2000
+ "name": "confirmNewAddressToRegistry",
2001
+ "inputs": [
2002
+ {
2003
+ "name": "_undyVaultAddr",
2004
+ "type": "address"
2005
+ },
2006
+ {
2007
+ "name": "_isLeveragedVault",
2008
+ "type": "bool"
2009
+ },
2010
+ {
2011
+ "name": "_shouldEnforceAllowlist",
2012
+ "type": "bool"
2013
+ },
2014
+ {
2015
+ "name": "_approvedVaultTokens",
2016
+ "type": "address[]"
2017
+ },
2018
+ {
2019
+ "name": "_maxDepositAmount",
2020
+ "type": "uint256"
2021
+ },
2022
+ {
2023
+ "name": "_minYieldWithdrawAmount",
2024
+ "type": "uint256"
2025
+ },
2026
+ {
2027
+ "name": "_performanceFee",
2028
+ "type": "uint256"
2029
+ },
2030
+ {
2031
+ "name": "_defaultTargetVaultToken",
2032
+ "type": "address"
2033
+ },
2034
+ {
2035
+ "name": "_shouldAutoDeposit",
2036
+ "type": "bool"
2037
+ },
2038
+ {
2039
+ "name": "_canDeposit",
2040
+ "type": "bool"
2041
+ },
2042
+ {
2043
+ "name": "_canWithdraw",
2044
+ "type": "bool"
2045
+ }
2046
+ ],
2047
+ "outputs": [
2048
+ {
2049
+ "name": "",
2050
+ "type": "uint256"
2051
+ }
2052
+ ]
2053
+ },
2054
+ {
2055
+ "stateMutability": "nonpayable",
2056
+ "type": "function",
2057
+ "name": "confirmNewAddressToRegistry",
2058
+ "inputs": [
2059
+ {
2060
+ "name": "_undyVaultAddr",
2061
+ "type": "address"
2062
+ },
2063
+ {
2064
+ "name": "_isLeveragedVault",
2065
+ "type": "bool"
2066
+ },
2067
+ {
2068
+ "name": "_shouldEnforceAllowlist",
2069
+ "type": "bool"
2070
+ },
2071
+ {
2072
+ "name": "_approvedVaultTokens",
2073
+ "type": "address[]"
2074
+ },
2075
+ {
2076
+ "name": "_maxDepositAmount",
2077
+ "type": "uint256"
2078
+ },
2079
+ {
2080
+ "name": "_minYieldWithdrawAmount",
2081
+ "type": "uint256"
2082
+ },
2083
+ {
2084
+ "name": "_performanceFee",
2085
+ "type": "uint256"
2086
+ },
2087
+ {
2088
+ "name": "_defaultTargetVaultToken",
2089
+ "type": "address"
2090
+ },
2091
+ {
2092
+ "name": "_shouldAutoDeposit",
2093
+ "type": "bool"
2094
+ },
2095
+ {
2096
+ "name": "_canDeposit",
2097
+ "type": "bool"
2098
+ },
2099
+ {
2100
+ "name": "_canWithdraw",
2101
+ "type": "bool"
2102
+ },
2103
+ {
2104
+ "name": "_isVaultOpsFrozen",
2105
+ "type": "bool"
2106
+ }
2107
+ ],
2108
+ "outputs": [
2109
+ {
2110
+ "name": "",
2111
+ "type": "uint256"
2112
+ }
2113
+ ]
2114
+ },
2115
+ {
2116
+ "stateMutability": "nonpayable",
2117
+ "type": "function",
2118
+ "name": "confirmNewAddressToRegistry",
2119
+ "inputs": [
2120
+ {
2121
+ "name": "_undyVaultAddr",
2122
+ "type": "address"
2123
+ },
2124
+ {
2125
+ "name": "_isLeveragedVault",
2126
+ "type": "bool"
2127
+ },
2128
+ {
2129
+ "name": "_shouldEnforceAllowlist",
2130
+ "type": "bool"
2131
+ },
2132
+ {
2133
+ "name": "_approvedVaultTokens",
2134
+ "type": "address[]"
2135
+ },
2136
+ {
2137
+ "name": "_maxDepositAmount",
2138
+ "type": "uint256"
2139
+ },
2140
+ {
2141
+ "name": "_minYieldWithdrawAmount",
2142
+ "type": "uint256"
2143
+ },
2144
+ {
2145
+ "name": "_performanceFee",
2146
+ "type": "uint256"
2147
+ },
2148
+ {
2149
+ "name": "_defaultTargetVaultToken",
2150
+ "type": "address"
2151
+ },
2152
+ {
2153
+ "name": "_shouldAutoDeposit",
2154
+ "type": "bool"
2155
+ },
2156
+ {
2157
+ "name": "_canDeposit",
2158
+ "type": "bool"
2159
+ },
2160
+ {
2161
+ "name": "_canWithdraw",
2162
+ "type": "bool"
2163
+ },
2164
+ {
2165
+ "name": "_isVaultOpsFrozen",
2166
+ "type": "bool"
2167
+ },
2168
+ {
2169
+ "name": "_redemptionBuffer",
2170
+ "type": "uint256"
2171
+ }
2172
+ ],
2173
+ "outputs": [
2174
+ {
2175
+ "name": "",
2176
+ "type": "uint256"
2177
+ }
2178
+ ]
2179
+ },
2180
+ {
2181
+ "stateMutability": "nonpayable",
2182
+ "type": "function",
2183
+ "name": "cancelNewAddressToRegistry",
2184
+ "inputs": [
2185
+ {
2186
+ "name": "_undyVaultAddr",
2187
+ "type": "address"
2188
+ }
2189
+ ],
2190
+ "outputs": [
2191
+ {
2192
+ "name": "",
2193
+ "type": "bool"
2194
+ }
2195
+ ]
2196
+ },
2197
+ {
2198
+ "stateMutability": "nonpayable",
2199
+ "type": "function",
2200
+ "name": "startAddressDisableInRegistry",
2201
+ "inputs": [
2202
+ {
2203
+ "name": "_regId",
2204
+ "type": "uint256"
2205
+ }
2206
+ ],
2207
+ "outputs": [
2208
+ {
2209
+ "name": "",
2210
+ "type": "bool"
2211
+ }
2212
+ ]
2213
+ },
2214
+ {
2215
+ "stateMutability": "nonpayable",
2216
+ "type": "function",
2217
+ "name": "confirmAddressDisableInRegistry",
2218
+ "inputs": [
2219
+ {
2220
+ "name": "_regId",
2221
+ "type": "uint256"
2222
+ }
2223
+ ],
2224
+ "outputs": [
2225
+ {
2226
+ "name": "",
2227
+ "type": "bool"
2228
+ }
2229
+ ]
2230
+ },
2231
+ {
2232
+ "stateMutability": "nonpayable",
2233
+ "type": "function",
2234
+ "name": "cancelAddressDisableInRegistry",
2235
+ "inputs": [
2236
+ {
2237
+ "name": "_regId",
2238
+ "type": "uint256"
2239
+ }
2240
+ ],
2241
+ "outputs": [
2242
+ {
2243
+ "name": "",
2244
+ "type": "bool"
2245
+ }
2246
+ ]
2247
+ },
2248
+ {
2249
+ "stateMutability": "nonpayable",
2250
+ "type": "function",
2251
+ "name": "setCanDeposit",
2252
+ "inputs": [
2253
+ {
2254
+ "name": "_undyVaultAddr",
2255
+ "type": "address"
2256
+ },
2257
+ {
2258
+ "name": "_canDeposit",
2259
+ "type": "bool"
2260
+ }
2261
+ ],
2262
+ "outputs": []
2263
+ },
2264
+ {
2265
+ "stateMutability": "nonpayable",
2266
+ "type": "function",
2267
+ "name": "setCanWithdraw",
2268
+ "inputs": [
2269
+ {
2270
+ "name": "_undyVaultAddr",
2271
+ "type": "address"
2272
+ },
2273
+ {
2274
+ "name": "_canWithdraw",
2275
+ "type": "bool"
2276
+ }
2277
+ ],
2278
+ "outputs": []
2279
+ },
2280
+ {
2281
+ "stateMutability": "nonpayable",
2282
+ "type": "function",
2283
+ "name": "setMaxDepositAmount",
2284
+ "inputs": [
2285
+ {
2286
+ "name": "_undyVaultAddr",
2287
+ "type": "address"
2288
+ },
2289
+ {
2290
+ "name": "_maxDepositAmount",
2291
+ "type": "uint256"
2292
+ }
2293
+ ],
2294
+ "outputs": []
2295
+ },
2296
+ {
2297
+ "stateMutability": "nonpayable",
2298
+ "type": "function",
2299
+ "name": "setVaultOpsFrozen",
2300
+ "inputs": [
2301
+ {
2302
+ "name": "_undyVaultAddr",
2303
+ "type": "address"
2304
+ },
2305
+ {
2306
+ "name": "_isFrozen",
2307
+ "type": "bool"
2308
+ }
2309
+ ],
2310
+ "outputs": []
2311
+ },
2312
+ {
2313
+ "stateMutability": "nonpayable",
2314
+ "type": "function",
2315
+ "name": "setShouldAutoDeposit",
2316
+ "inputs": [
2317
+ {
2318
+ "name": "_undyVaultAddr",
2319
+ "type": "address"
2320
+ },
2321
+ {
2322
+ "name": "_shouldAutoDeposit",
2323
+ "type": "bool"
2324
+ }
2325
+ ],
2326
+ "outputs": []
2327
+ },
2328
+ {
2329
+ "stateMutability": "nonpayable",
2330
+ "type": "function",
2331
+ "name": "setMinYieldWithdrawAmount",
2332
+ "inputs": [
2333
+ {
2334
+ "name": "_undyVaultAddr",
2335
+ "type": "address"
2336
+ },
2337
+ {
2338
+ "name": "_amount",
2339
+ "type": "uint256"
2340
+ }
2341
+ ],
2342
+ "outputs": []
2343
+ },
2344
+ {
2345
+ "stateMutability": "nonpayable",
2346
+ "type": "function",
2347
+ "name": "setIsLeveragedVault",
2348
+ "inputs": [
2349
+ {
2350
+ "name": "_undyVaultAddr",
2351
+ "type": "address"
2352
+ },
2353
+ {
2354
+ "name": "_isLeveragedVault",
2355
+ "type": "bool"
2356
+ }
2357
+ ],
2358
+ "outputs": []
2359
+ },
2360
+ {
2361
+ "stateMutability": "nonpayable",
2362
+ "type": "function",
2363
+ "name": "setShouldEnforceAllowlist",
2364
+ "inputs": [
2365
+ {
2366
+ "name": "_undyVaultAddr",
2367
+ "type": "address"
2368
+ },
2369
+ {
2370
+ "name": "_shouldEnforce",
2371
+ "type": "bool"
2372
+ }
2373
+ ],
2374
+ "outputs": []
2375
+ },
2376
+ {
2377
+ "stateMutability": "nonpayable",
2378
+ "type": "function",
2379
+ "name": "setAllowed",
2380
+ "inputs": [
2381
+ {
2382
+ "name": "_undyVaultAddr",
2383
+ "type": "address"
2384
+ },
2385
+ {
2386
+ "name": "_user",
2387
+ "type": "address"
2388
+ },
2389
+ {
2390
+ "name": "_isAllowed",
2391
+ "type": "bool"
2392
+ }
2393
+ ],
2394
+ "outputs": []
2395
+ },
2396
+ {
2397
+ "stateMutability": "nonpayable",
2398
+ "type": "function",
2399
+ "name": "setAllowedBatch",
2400
+ "inputs": [
2401
+ {
2402
+ "name": "_undyVaultAddr",
2403
+ "type": "address"
2404
+ },
2405
+ {
2406
+ "name": "_users",
2407
+ "type": "address[]"
2408
+ },
2409
+ {
2410
+ "name": "_isAllowed",
2411
+ "type": "bool"
2412
+ }
2413
+ ],
2414
+ "outputs": []
2415
+ },
2416
+ {
2417
+ "stateMutability": "nonpayable",
2418
+ "type": "function",
2419
+ "name": "setDefaultTargetVaultToken",
2420
+ "inputs": [
2421
+ {
2422
+ "name": "_undyVaultAddr",
2423
+ "type": "address"
2424
+ },
2425
+ {
2426
+ "name": "_targetVaultToken",
2427
+ "type": "address"
2428
+ }
2429
+ ],
2430
+ "outputs": []
2431
+ },
2432
+ {
2433
+ "stateMutability": "view",
2434
+ "type": "function",
2435
+ "name": "isValidDefaultTargetVaultToken",
2436
+ "inputs": [
2437
+ {
2438
+ "name": "_undyVaultAddr",
2439
+ "type": "address"
2440
+ },
2441
+ {
2442
+ "name": "_targetVaultToken",
2443
+ "type": "address"
2444
+ }
2445
+ ],
2446
+ "outputs": [
2447
+ {
2448
+ "name": "",
2449
+ "type": "bool"
2450
+ }
2451
+ ]
2452
+ },
2453
+ {
2454
+ "stateMutability": "nonpayable",
2455
+ "type": "function",
2456
+ "name": "setPerformanceFee",
2457
+ "inputs": [
2458
+ {
2459
+ "name": "_undyVaultAddr",
2460
+ "type": "address"
2461
+ },
2462
+ {
2463
+ "name": "_performanceFee",
2464
+ "type": "uint256"
2465
+ }
2466
+ ],
2467
+ "outputs": []
2468
+ },
2469
+ {
2470
+ "stateMutability": "view",
2471
+ "type": "function",
2472
+ "name": "isValidPerformanceFee",
2473
+ "inputs": [
2474
+ {
2475
+ "name": "_performanceFee",
2476
+ "type": "uint256"
2477
+ }
2478
+ ],
2479
+ "outputs": [
2480
+ {
2481
+ "name": "",
2482
+ "type": "bool"
2483
+ }
2484
+ ]
2485
+ },
2486
+ {
2487
+ "stateMutability": "nonpayable",
2488
+ "type": "function",
2489
+ "name": "setRedemptionBuffer",
2490
+ "inputs": [
2491
+ {
2492
+ "name": "_undyVaultAddr",
2493
+ "type": "address"
2494
+ },
2495
+ {
2496
+ "name": "_buffer",
2497
+ "type": "uint256"
2498
+ }
2499
+ ],
2500
+ "outputs": []
2501
+ },
2502
+ {
2503
+ "stateMutability": "view",
2504
+ "type": "function",
2505
+ "name": "isValidRedemptionBuffer",
2506
+ "inputs": [
2507
+ {
2508
+ "name": "_buffer",
2509
+ "type": "uint256"
2510
+ }
2511
+ ],
2512
+ "outputs": [
2513
+ {
2514
+ "name": "",
2515
+ "type": "bool"
2516
+ }
2517
+ ]
2518
+ },
2519
+ {
2520
+ "stateMutability": "nonpayable",
2521
+ "type": "function",
2522
+ "name": "setApprovedVaultToken",
2523
+ "inputs": [
2524
+ {
2525
+ "name": "_undyVaultAddr",
2526
+ "type": "address"
2527
+ },
2528
+ {
2529
+ "name": "_vaultToken",
2530
+ "type": "address"
2531
+ },
2532
+ {
2533
+ "name": "_isApproved",
2534
+ "type": "bool"
2535
+ },
2536
+ {
2537
+ "name": "_shouldMaxWithdraw",
2538
+ "type": "bool"
2539
+ }
2540
+ ],
2541
+ "outputs": []
2542
+ },
2543
+ {
2544
+ "stateMutability": "nonpayable",
2545
+ "type": "function",
2546
+ "name": "setApprovedVaultTokens",
2547
+ "inputs": [
2548
+ {
2549
+ "name": "_undyVaultAddr",
2550
+ "type": "address"
2551
+ },
2552
+ {
2553
+ "name": "_vaultTokens",
2554
+ "type": "address[]"
2555
+ },
2556
+ {
2557
+ "name": "_isApproved",
2558
+ "type": "bool"
2559
+ },
2560
+ {
2561
+ "name": "_shouldMaxWithdraw",
2562
+ "type": "bool"
2563
+ }
2564
+ ],
2565
+ "outputs": []
2566
+ },
2567
+ {
2568
+ "stateMutability": "view",
2569
+ "type": "function",
2570
+ "name": "getApprovedVaultTokens",
2571
+ "inputs": [
2572
+ {
2573
+ "name": "_undyVaultAddr",
2574
+ "type": "address"
2575
+ }
2576
+ ],
2577
+ "outputs": [
2578
+ {
2579
+ "name": "",
2580
+ "type": "address[]"
2581
+ }
2582
+ ]
2583
+ },
2584
+ {
2585
+ "stateMutability": "view",
2586
+ "type": "function",
2587
+ "name": "getAssetVaultTokens",
2588
+ "inputs": [
2589
+ {
2590
+ "name": "_asset",
2591
+ "type": "address"
2592
+ }
2593
+ ],
2594
+ "outputs": [
2595
+ {
2596
+ "name": "",
2597
+ "type": "address[]"
2598
+ }
2599
+ ]
2600
+ },
2601
+ {
2602
+ "stateMutability": "view",
2603
+ "type": "function",
2604
+ "name": "getNumApprovedVaultTokens",
2605
+ "inputs": [
2606
+ {
2607
+ "name": "_undyVaultAddr",
2608
+ "type": "address"
2609
+ }
2610
+ ],
2611
+ "outputs": [
2612
+ {
2613
+ "name": "",
2614
+ "type": "uint256"
2615
+ }
2616
+ ]
2617
+ },
2618
+ {
2619
+ "stateMutability": "view",
2620
+ "type": "function",
2621
+ "name": "getNumAssetVaultTokens",
2622
+ "inputs": [
2623
+ {
2624
+ "name": "_asset",
2625
+ "type": "address"
2626
+ }
2627
+ ],
2628
+ "outputs": [
2629
+ {
2630
+ "name": "",
2631
+ "type": "uint256"
2632
+ }
2633
+ ]
2634
+ },
2635
+ {
2636
+ "stateMutability": "view",
2637
+ "type": "function",
2638
+ "name": "isApprovedVaultTokenForAsset",
2639
+ "inputs": [
2640
+ {
2641
+ "name": "_underlyingAsset",
2642
+ "type": "address"
2643
+ },
2644
+ {
2645
+ "name": "_vaultToken",
2646
+ "type": "address"
2647
+ }
2648
+ ],
2649
+ "outputs": [
2650
+ {
2651
+ "name": "",
2652
+ "type": "bool"
2653
+ }
2654
+ ]
2655
+ },
2656
+ {
2657
+ "stateMutability": "view",
2658
+ "type": "function",
2659
+ "name": "canDeposit",
2660
+ "inputs": [
2661
+ {
2662
+ "name": "_undyVaultAddr",
2663
+ "type": "address"
2664
+ }
2665
+ ],
2666
+ "outputs": [
2667
+ {
2668
+ "name": "",
2669
+ "type": "bool"
2670
+ }
2671
+ ]
2672
+ },
2673
+ {
2674
+ "stateMutability": "view",
2675
+ "type": "function",
2676
+ "name": "canWithdraw",
2677
+ "inputs": [
2678
+ {
2679
+ "name": "_undyVaultAddr",
2680
+ "type": "address"
2681
+ }
2682
+ ],
2683
+ "outputs": [
2684
+ {
2685
+ "name": "",
2686
+ "type": "bool"
2687
+ }
2688
+ ]
2689
+ },
2690
+ {
2691
+ "stateMutability": "view",
2692
+ "type": "function",
2693
+ "name": "maxDepositAmount",
2694
+ "inputs": [
2695
+ {
2696
+ "name": "_undyVaultAddr",
2697
+ "type": "address"
2698
+ }
2699
+ ],
2700
+ "outputs": [
2701
+ {
2702
+ "name": "",
2703
+ "type": "uint256"
2704
+ }
2705
+ ]
2706
+ },
2707
+ {
2708
+ "stateMutability": "view",
2709
+ "type": "function",
2710
+ "name": "isVaultOpsFrozen",
2711
+ "inputs": [
2712
+ {
2713
+ "name": "_undyVaultAddr",
2714
+ "type": "address"
2715
+ }
2716
+ ],
2717
+ "outputs": [
2718
+ {
2719
+ "name": "",
2720
+ "type": "bool"
2721
+ }
2722
+ ]
2723
+ },
2724
+ {
2725
+ "stateMutability": "view",
2726
+ "type": "function",
2727
+ "name": "redemptionBuffer",
2728
+ "inputs": [
2729
+ {
2730
+ "name": "_undyVaultAddr",
2731
+ "type": "address"
2732
+ }
2733
+ ],
2734
+ "outputs": [
2735
+ {
2736
+ "name": "",
2737
+ "type": "uint256"
2738
+ }
2739
+ ]
2740
+ },
2741
+ {
2742
+ "stateMutability": "view",
2743
+ "type": "function",
2744
+ "name": "minYieldWithdrawAmount",
2745
+ "inputs": [
2746
+ {
2747
+ "name": "_undyVaultAddr",
2748
+ "type": "address"
2749
+ }
2750
+ ],
2751
+ "outputs": [
2752
+ {
2753
+ "name": "",
2754
+ "type": "uint256"
2755
+ }
2756
+ ]
2757
+ },
2758
+ {
2759
+ "stateMutability": "view",
2760
+ "type": "function",
2761
+ "name": "redemptionConfig",
2762
+ "inputs": [
2763
+ {
2764
+ "name": "_undyVaultAddr",
2765
+ "type": "address"
2766
+ }
2767
+ ],
2768
+ "outputs": [
2769
+ {
2770
+ "name": "",
2771
+ "type": "uint256"
2772
+ },
2773
+ {
2774
+ "name": "",
2775
+ "type": "uint256"
2776
+ }
2777
+ ]
2778
+ },
2779
+ {
2780
+ "stateMutability": "view",
2781
+ "type": "function",
2782
+ "name": "getPerformanceFee",
2783
+ "inputs": [
2784
+ {
2785
+ "name": "_undyVaultAddr",
2786
+ "type": "address"
2787
+ }
2788
+ ],
2789
+ "outputs": [
2790
+ {
2791
+ "name": "",
2792
+ "type": "uint256"
2793
+ }
2794
+ ]
2795
+ },
2796
+ {
2797
+ "stateMutability": "view",
2798
+ "type": "function",
2799
+ "name": "getDefaultTargetVaultToken",
2800
+ "inputs": [
2801
+ {
2802
+ "name": "_undyVaultAddr",
2803
+ "type": "address"
2804
+ }
2805
+ ],
2806
+ "outputs": [
2807
+ {
2808
+ "name": "",
2809
+ "type": "address"
2810
+ }
2811
+ ]
2812
+ },
2813
+ {
2814
+ "stateMutability": "view",
2815
+ "type": "function",
2816
+ "name": "shouldAutoDeposit",
2817
+ "inputs": [
2818
+ {
2819
+ "name": "_undyVaultAddr",
2820
+ "type": "address"
2821
+ }
2822
+ ],
2823
+ "outputs": [
2824
+ {
2825
+ "name": "",
2826
+ "type": "bool"
2827
+ }
2828
+ ]
2829
+ },
2830
+ {
2831
+ "stateMutability": "view",
2832
+ "type": "function",
2833
+ "name": "shouldEnforceAllowlist",
2834
+ "inputs": [
2835
+ {
2836
+ "name": "_undyVaultAddr",
2837
+ "type": "address"
2838
+ }
2839
+ ],
2840
+ "outputs": [
2841
+ {
2842
+ "name": "",
2843
+ "type": "bool"
2844
+ }
2845
+ ]
2846
+ },
2847
+ {
2848
+ "stateMutability": "view",
2849
+ "type": "function",
2850
+ "name": "isUserAllowed",
2851
+ "inputs": [
2852
+ {
2853
+ "name": "_undyVaultAddr",
2854
+ "type": "address"
2855
+ },
2856
+ {
2857
+ "name": "_userAddr",
2858
+ "type": "address"
2859
+ }
2860
+ ],
2861
+ "outputs": [
2862
+ {
2863
+ "name": "",
2864
+ "type": "bool"
2865
+ }
2866
+ ]
2867
+ },
2868
+ {
2869
+ "stateMutability": "view",
2870
+ "type": "function",
2871
+ "name": "isApprovedVaultTokenByAddr",
2872
+ "inputs": [
2873
+ {
2874
+ "name": "_undyVaultAddr",
2875
+ "type": "address"
2876
+ },
2877
+ {
2878
+ "name": "_vaultToken",
2879
+ "type": "address"
2880
+ }
2881
+ ],
2882
+ "outputs": [
2883
+ {
2884
+ "name": "",
2885
+ "type": "bool"
2886
+ }
2887
+ ]
2888
+ },
2889
+ {
2890
+ "stateMutability": "view",
2891
+ "type": "function",
2892
+ "name": "checkVaultApprovals",
2893
+ "inputs": [
2894
+ {
2895
+ "name": "_undyVaultAddr",
2896
+ "type": "address"
2897
+ },
2898
+ {
2899
+ "name": "_vaultToken",
2900
+ "type": "address"
2901
+ }
2902
+ ],
2903
+ "outputs": [
2904
+ {
2905
+ "name": "",
2906
+ "type": "bool"
2907
+ }
2908
+ ]
2909
+ },
2910
+ {
2911
+ "stateMutability": "view",
2912
+ "type": "function",
2913
+ "name": "getVaultConfig",
2914
+ "inputs": [
2915
+ {
2916
+ "name": "_regId",
2917
+ "type": "uint256"
2918
+ }
2919
+ ],
2920
+ "outputs": [
2921
+ {
2922
+ "name": "",
2923
+ "type": "tuple",
2924
+ "components": [
2925
+ {
2926
+ "name": "canDeposit",
2927
+ "type": "bool"
2928
+ },
2929
+ {
2930
+ "name": "canWithdraw",
2931
+ "type": "bool"
2932
+ },
2933
+ {
2934
+ "name": "maxDepositAmount",
2935
+ "type": "uint256"
2936
+ },
2937
+ {
2938
+ "name": "isVaultOpsFrozen",
2939
+ "type": "bool"
2940
+ },
2941
+ {
2942
+ "name": "redemptionBuffer",
2943
+ "type": "uint256"
2944
+ },
2945
+ {
2946
+ "name": "minYieldWithdrawAmount",
2947
+ "type": "uint256"
2948
+ },
2949
+ {
2950
+ "name": "performanceFee",
2951
+ "type": "uint256"
2952
+ },
2953
+ {
2954
+ "name": "shouldAutoDeposit",
2955
+ "type": "bool"
2956
+ },
2957
+ {
2958
+ "name": "defaultTargetVaultToken",
2959
+ "type": "address"
2960
+ },
2961
+ {
2962
+ "name": "isLeveragedVault",
2963
+ "type": "bool"
2964
+ },
2965
+ {
2966
+ "name": "shouldEnforceAllowlist",
2967
+ "type": "bool"
2968
+ }
2969
+ ]
2970
+ }
2971
+ ]
2972
+ },
2973
+ {
2974
+ "stateMutability": "view",
2975
+ "type": "function",
2976
+ "name": "getVaultConfigByAddr",
2977
+ "inputs": [
2978
+ {
2979
+ "name": "_undyVaultAddr",
2980
+ "type": "address"
2981
+ }
2982
+ ],
2983
+ "outputs": [
2984
+ {
2985
+ "name": "",
2986
+ "type": "tuple",
2987
+ "components": [
2988
+ {
2989
+ "name": "canDeposit",
2990
+ "type": "bool"
2991
+ },
2992
+ {
2993
+ "name": "canWithdraw",
2994
+ "type": "bool"
2995
+ },
2996
+ {
2997
+ "name": "maxDepositAmount",
2998
+ "type": "uint256"
2999
+ },
3000
+ {
3001
+ "name": "isVaultOpsFrozen",
3002
+ "type": "bool"
3003
+ },
3004
+ {
3005
+ "name": "redemptionBuffer",
3006
+ "type": "uint256"
3007
+ },
3008
+ {
3009
+ "name": "minYieldWithdrawAmount",
3010
+ "type": "uint256"
3011
+ },
3012
+ {
3013
+ "name": "performanceFee",
3014
+ "type": "uint256"
3015
+ },
3016
+ {
3017
+ "name": "shouldAutoDeposit",
3018
+ "type": "bool"
3019
+ },
3020
+ {
3021
+ "name": "defaultTargetVaultToken",
3022
+ "type": "address"
3023
+ },
3024
+ {
3025
+ "name": "isLeveragedVault",
3026
+ "type": "bool"
3027
+ },
3028
+ {
3029
+ "name": "shouldEnforceAllowlist",
3030
+ "type": "bool"
3031
+ }
3032
+ ]
3033
+ }
3034
+ ]
3035
+ },
3036
+ {
3037
+ "stateMutability": "view",
3038
+ "type": "function",
3039
+ "name": "getVaultActionDataBundle",
3040
+ "inputs": [
3041
+ {
3042
+ "name": "_legoId",
3043
+ "type": "uint256"
3044
+ },
3045
+ {
3046
+ "name": "_signer",
3047
+ "type": "address"
3048
+ }
3049
+ ],
3050
+ "outputs": [
3051
+ {
3052
+ "name": "",
3053
+ "type": "tuple",
3054
+ "components": [
3055
+ {
3056
+ "name": "ledger",
3057
+ "type": "address"
3058
+ },
3059
+ {
3060
+ "name": "missionControl",
3061
+ "type": "address"
3062
+ },
3063
+ {
3064
+ "name": "legoBook",
3065
+ "type": "address"
3066
+ },
3067
+ {
3068
+ "name": "appraiser",
3069
+ "type": "address"
3070
+ },
3071
+ {
3072
+ "name": "vaultRegistry",
3073
+ "type": "address"
3074
+ },
3075
+ {
3076
+ "name": "vaultAsset",
3077
+ "type": "address"
3078
+ },
3079
+ {
3080
+ "name": "signer",
3081
+ "type": "address"
3082
+ },
3083
+ {
3084
+ "name": "legoId",
3085
+ "type": "uint256"
3086
+ },
3087
+ {
3088
+ "name": "legoAddr",
3089
+ "type": "address"
3090
+ }
3091
+ ]
3092
+ }
3093
+ ]
3094
+ },
3095
+ {
3096
+ "stateMutability": "view",
3097
+ "type": "function",
3098
+ "name": "getVaultActionDataWithFrozenStatus",
3099
+ "inputs": [
3100
+ {
3101
+ "name": "_legoId",
3102
+ "type": "uint256"
3103
+ },
3104
+ {
3105
+ "name": "_signer",
3106
+ "type": "address"
3107
+ },
3108
+ {
3109
+ "name": "_undyVaultAddr",
3110
+ "type": "address"
3111
+ }
3112
+ ],
3113
+ "outputs": [
3114
+ {
3115
+ "name": "",
3116
+ "type": "tuple",
3117
+ "components": [
3118
+ {
3119
+ "name": "ledger",
3120
+ "type": "address"
3121
+ },
3122
+ {
3123
+ "name": "missionControl",
3124
+ "type": "address"
3125
+ },
3126
+ {
3127
+ "name": "legoBook",
3128
+ "type": "address"
3129
+ },
3130
+ {
3131
+ "name": "appraiser",
3132
+ "type": "address"
3133
+ },
3134
+ {
3135
+ "name": "vaultRegistry",
3136
+ "type": "address"
3137
+ },
3138
+ {
3139
+ "name": "vaultAsset",
3140
+ "type": "address"
3141
+ },
3142
+ {
3143
+ "name": "signer",
3144
+ "type": "address"
3145
+ },
3146
+ {
3147
+ "name": "legoId",
3148
+ "type": "uint256"
3149
+ },
3150
+ {
3151
+ "name": "legoAddr",
3152
+ "type": "address"
3153
+ }
3154
+ ]
3155
+ },
3156
+ {
3157
+ "name": "",
3158
+ "type": "bool"
3159
+ }
3160
+ ]
3161
+ },
3162
+ {
3163
+ "stateMutability": "view",
3164
+ "type": "function",
3165
+ "name": "getLegoDataFromVaultToken",
3166
+ "inputs": [
3167
+ {
3168
+ "name": "_vaultToken",
3169
+ "type": "address"
3170
+ }
3171
+ ],
3172
+ "outputs": [
3173
+ {
3174
+ "name": "",
3175
+ "type": "uint256"
3176
+ },
3177
+ {
3178
+ "name": "",
3179
+ "type": "address"
3180
+ }
3181
+ ]
3182
+ },
3183
+ {
3184
+ "stateMutability": "view",
3185
+ "type": "function",
3186
+ "name": "getLegoAddrFromVaultToken",
3187
+ "inputs": [
3188
+ {
3189
+ "name": "_vaultToken",
3190
+ "type": "address"
3191
+ }
3192
+ ],
3193
+ "outputs": [
3194
+ {
3195
+ "name": "",
3196
+ "type": "address"
3197
+ }
3198
+ ]
3199
+ },
3200
+ {
3201
+ "stateMutability": "view",
3202
+ "type": "function",
3203
+ "name": "getDepositConfig",
3204
+ "inputs": [
3205
+ {
3206
+ "name": "_undyVaultAddr",
3207
+ "type": "address"
3208
+ }
3209
+ ],
3210
+ "outputs": [
3211
+ {
3212
+ "name": "",
3213
+ "type": "bool"
3214
+ },
3215
+ {
3216
+ "name": "",
3217
+ "type": "uint256"
3218
+ },
3219
+ {
3220
+ "name": "",
3221
+ "type": "bool"
3222
+ },
3223
+ {
3224
+ "name": "",
3225
+ "type": "address"
3226
+ }
3227
+ ]
3228
+ },
3229
+ {
3230
+ "stateMutability": "view",
3231
+ "type": "function",
3232
+ "name": "getDepositConfig",
3233
+ "inputs": [
3234
+ {
3235
+ "name": "_undyVaultAddr",
3236
+ "type": "address"
3237
+ },
3238
+ {
3239
+ "name": "_user",
3240
+ "type": "address"
3241
+ }
3242
+ ],
3243
+ "outputs": [
3244
+ {
3245
+ "name": "",
3246
+ "type": "bool"
3247
+ },
3248
+ {
3249
+ "name": "",
3250
+ "type": "uint256"
3251
+ },
3252
+ {
3253
+ "name": "",
3254
+ "type": "bool"
3255
+ },
3256
+ {
3257
+ "name": "",
3258
+ "type": "address"
3259
+ }
3260
+ ]
3261
+ },
3262
+ {
3263
+ "stateMutability": "view",
3264
+ "type": "function",
3265
+ "name": "canUserDeposit",
3266
+ "inputs": [
3267
+ {
3268
+ "name": "_undyVaultAddr",
3269
+ "type": "address"
3270
+ }
3271
+ ],
3272
+ "outputs": [
3273
+ {
3274
+ "name": "",
3275
+ "type": "bool"
3276
+ }
3277
+ ]
3278
+ },
3279
+ {
3280
+ "stateMutability": "view",
3281
+ "type": "function",
3282
+ "name": "canUserDeposit",
3283
+ "inputs": [
3284
+ {
3285
+ "name": "_undyVaultAddr",
3286
+ "type": "address"
3287
+ },
3288
+ {
3289
+ "name": "_user",
3290
+ "type": "address"
3291
+ }
3292
+ ],
3293
+ "outputs": [
3294
+ {
3295
+ "name": "",
3296
+ "type": "bool"
3297
+ }
3298
+ ]
3299
+ },
3300
+ {
3301
+ "stateMutability": "view",
3302
+ "type": "function",
3303
+ "name": "vaultConfigs",
3304
+ "inputs": [
3305
+ {
3306
+ "name": "arg0",
3307
+ "type": "address"
3308
+ }
3309
+ ],
3310
+ "outputs": [
3311
+ {
3312
+ "name": "",
3313
+ "type": "tuple",
3314
+ "components": [
3315
+ {
3316
+ "name": "canDeposit",
3317
+ "type": "bool"
3318
+ },
3319
+ {
3320
+ "name": "canWithdraw",
3321
+ "type": "bool"
3322
+ },
3323
+ {
3324
+ "name": "maxDepositAmount",
3325
+ "type": "uint256"
3326
+ },
3327
+ {
3328
+ "name": "isVaultOpsFrozen",
3329
+ "type": "bool"
3330
+ },
3331
+ {
3332
+ "name": "redemptionBuffer",
3333
+ "type": "uint256"
3334
+ },
3335
+ {
3336
+ "name": "minYieldWithdrawAmount",
3337
+ "type": "uint256"
3338
+ },
3339
+ {
3340
+ "name": "performanceFee",
3341
+ "type": "uint256"
3342
+ },
3343
+ {
3344
+ "name": "shouldAutoDeposit",
3345
+ "type": "bool"
3346
+ },
3347
+ {
3348
+ "name": "defaultTargetVaultToken",
3349
+ "type": "address"
3350
+ },
3351
+ {
3352
+ "name": "isLeveragedVault",
3353
+ "type": "bool"
3354
+ },
3355
+ {
3356
+ "name": "shouldEnforceAllowlist",
3357
+ "type": "bool"
3358
+ }
3359
+ ]
3360
+ }
3361
+ ]
3362
+ },
3363
+ {
3364
+ "stateMutability": "view",
3365
+ "type": "function",
3366
+ "name": "isApprovedVaultToken",
3367
+ "inputs": [
3368
+ {
3369
+ "name": "arg0",
3370
+ "type": "address"
3371
+ },
3372
+ {
3373
+ "name": "arg1",
3374
+ "type": "address"
3375
+ }
3376
+ ],
3377
+ "outputs": [
3378
+ {
3379
+ "name": "",
3380
+ "type": "bool"
3381
+ }
3382
+ ]
3383
+ },
3384
+ {
3385
+ "stateMutability": "view",
3386
+ "type": "function",
3387
+ "name": "approvedVaultTokens",
3388
+ "inputs": [
3389
+ {
3390
+ "name": "arg0",
3391
+ "type": "address"
3392
+ },
3393
+ {
3394
+ "name": "arg1",
3395
+ "type": "uint256"
3396
+ }
3397
+ ],
3398
+ "outputs": [
3399
+ {
3400
+ "name": "",
3401
+ "type": "address"
3402
+ }
3403
+ ]
3404
+ },
3405
+ {
3406
+ "stateMutability": "view",
3407
+ "type": "function",
3408
+ "name": "indexOfApprovedVaultToken",
3409
+ "inputs": [
3410
+ {
3411
+ "name": "arg0",
3412
+ "type": "address"
3413
+ },
3414
+ {
3415
+ "name": "arg1",
3416
+ "type": "address"
3417
+ }
3418
+ ],
3419
+ "outputs": [
3420
+ {
3421
+ "name": "",
3422
+ "type": "uint256"
3423
+ }
3424
+ ]
3425
+ },
3426
+ {
3427
+ "stateMutability": "view",
3428
+ "type": "function",
3429
+ "name": "numApprovedVaultTokens",
3430
+ "inputs": [
3431
+ {
3432
+ "name": "arg0",
3433
+ "type": "address"
3434
+ }
3435
+ ],
3436
+ "outputs": [
3437
+ {
3438
+ "name": "",
3439
+ "type": "uint256"
3440
+ }
3441
+ ]
3442
+ },
3443
+ {
3444
+ "stateMutability": "view",
3445
+ "type": "function",
3446
+ "name": "assetVaultTokens",
3447
+ "inputs": [
3448
+ {
3449
+ "name": "arg0",
3450
+ "type": "address"
3451
+ },
3452
+ {
3453
+ "name": "arg1",
3454
+ "type": "uint256"
3455
+ }
3456
+ ],
3457
+ "outputs": [
3458
+ {
3459
+ "name": "",
3460
+ "type": "address"
3461
+ }
3462
+ ]
3463
+ },
3464
+ {
3465
+ "stateMutability": "view",
3466
+ "type": "function",
3467
+ "name": "indexOfAssetVaultToken",
3468
+ "inputs": [
3469
+ {
3470
+ "name": "arg0",
3471
+ "type": "address"
3472
+ },
3473
+ {
3474
+ "name": "arg1",
3475
+ "type": "address"
3476
+ }
3477
+ ],
3478
+ "outputs": [
3479
+ {
3480
+ "name": "",
3481
+ "type": "uint256"
3482
+ }
3483
+ ]
3484
+ },
3485
+ {
3486
+ "stateMutability": "view",
3487
+ "type": "function",
3488
+ "name": "numAssetVaultTokens",
3489
+ "inputs": [
3490
+ {
3491
+ "name": "arg0",
3492
+ "type": "address"
3493
+ }
3494
+ ],
3495
+ "outputs": [
3496
+ {
3497
+ "name": "",
3498
+ "type": "uint256"
3499
+ }
3500
+ ]
3501
+ },
3502
+ {
3503
+ "stateMutability": "view",
3504
+ "type": "function",
3505
+ "name": "assetVaultTokenRefCount",
3506
+ "inputs": [
3507
+ {
3508
+ "name": "arg0",
3509
+ "type": "address"
3510
+ },
3511
+ {
3512
+ "name": "arg1",
3513
+ "type": "address"
3514
+ }
3515
+ ],
3516
+ "outputs": [
3517
+ {
3518
+ "name": "",
3519
+ "type": "uint256"
3520
+ }
3521
+ ]
3522
+ },
3523
+ {
3524
+ "stateMutability": "view",
3525
+ "type": "function",
3526
+ "name": "isAllowed",
3527
+ "inputs": [
3528
+ {
3529
+ "name": "arg0",
3530
+ "type": "address"
3531
+ },
3532
+ {
3533
+ "name": "arg1",
3534
+ "type": "address"
3535
+ }
3536
+ ],
3537
+ "outputs": [
3538
+ {
3539
+ "name": "",
3540
+ "type": "bool"
3541
+ }
3542
+ ]
3543
+ },
3544
+ {
3545
+ "stateMutability": "nonpayable",
3546
+ "type": "constructor",
3547
+ "inputs": [
3548
+ {
3549
+ "name": "_undyHq",
3550
+ "type": "address"
3551
+ },
3552
+ {
3553
+ "name": "_tempGov",
3554
+ "type": "address"
3555
+ },
3556
+ {
3557
+ "name": "_minRegistryTimeLock",
3558
+ "type": "uint256"
3559
+ },
3560
+ {
3561
+ "name": "_maxRegistryTimeLock",
3562
+ "type": "uint256"
3563
+ }
3564
+ ],
3565
+ "outputs": []
3566
+ }
3567
+ ];
3568
+ export const deployAddress = '0x1C17ef5Ef2AefcEE958E7e3dC345e96aBfF4e3Cf';
3569
+ function getRequest(method, args, contractAddressOrOptions) {
3570
+ const address = typeof contractAddressOrOptions === 'string' ? contractAddressOrOptions : contractAddressOrOptions?.contractAddress;
3571
+ const defaultValue = typeof contractAddressOrOptions === 'string' ? undefined : contractAddressOrOptions?.defaultValue;
3572
+ const call = {
3573
+ contractName: 'VaultRegistry',
3574
+ method,
3575
+ args,
3576
+ address,
3577
+ deployAddress,
3578
+ defaultValue,
3579
+ getAbi: () => abi,
3580
+ with: (options) => {
3581
+ call.address = options.contractAddress;
3582
+ call.defaultValue = options.defaultValue;
3583
+ return call;
3584
+ },
3585
+ defaultTo: (defaultValue) => {
3586
+ call.defaultValue = defaultValue;
3587
+ return call;
3588
+ },
3589
+ at: (address) => {
3590
+ call.address = address;
3591
+ return call;
3592
+ },
3593
+ };
3594
+ return call;
3595
+ }
3596
+ export const call = {
3597
+ getUndyHqFromGov: (...args) => getRequest('getUndyHqFromGov', args),
3598
+ canGovern: (...args) => getRequest('canGovern', args),
3599
+ getGovernors: (...args) => getRequest('getGovernors', args),
3600
+ hasPendingGovChange: (...args) => getRequest('hasPendingGovChange', args),
3601
+ isValidGovTimeLock: (...args) => getRequest('isValidGovTimeLock', args),
3602
+ minGovChangeTimeLock: (...args) => getRequest('minGovChangeTimeLock', args),
3603
+ maxGovChangeTimeLock: (...args) => getRequest('maxGovChangeTimeLock', args),
3604
+ governance: (...args) => getRequest('governance', args),
3605
+ pendingGov: (...args) => getRequest('pendingGov', args),
3606
+ numGovChanges: (...args) => getRequest('numGovChanges', args),
3607
+ govChangeTimeLock: (...args) => getRequest('govChangeTimeLock', args),
3608
+ getRegistryDescription: (...args) => getRequest('getRegistryDescription', args),
3609
+ isValidNewAddress: (...args) => getRequest('isValidNewAddress', args),
3610
+ isValidAddressUpdate: (...args) => getRequest('isValidAddressUpdate', args),
3611
+ isValidAddressDisable: (...args) => getRequest('isValidAddressDisable', args),
3612
+ isValidRegistryTimeLock: (...args) => getRequest('isValidRegistryTimeLock', args),
3613
+ minRegistryTimeLock: (...args) => getRequest('minRegistryTimeLock', args),
3614
+ maxRegistryTimeLock: (...args) => getRequest('maxRegistryTimeLock', args),
3615
+ isValidAddr: (...args) => getRequest('isValidAddr', args),
3616
+ isValidRegId: (...args) => getRequest('isValidRegId', args),
3617
+ getRegId: (...args) => getRequest('getRegId', args),
3618
+ getAddr: (...args) => getRequest('getAddr', args),
3619
+ getAddrInfo: (...args) => getRequest('getAddrInfo', args),
3620
+ getAddrDescription: (...args) => getRequest('getAddrDescription', args),
3621
+ getNumAddrs: (...args) => getRequest('getNumAddrs', args),
3622
+ getLastAddr: (...args) => getRequest('getLastAddr', args),
3623
+ getLastRegId: (...args) => getRequest('getLastRegId', args),
3624
+ registryChangeTimeLock: (...args) => getRequest('registryChangeTimeLock', args),
3625
+ addrInfo: (...args) => getRequest('addrInfo', args),
3626
+ addrToRegId: (...args) => getRequest('addrToRegId', args),
3627
+ numAddrs: (...args) => getRequest('numAddrs', args),
3628
+ pendingNewAddr: (...args) => getRequest('pendingNewAddr', args),
3629
+ pendingAddrUpdate: (...args) => getRequest('pendingAddrUpdate', args),
3630
+ pendingAddrDisable: (...args) => getRequest('pendingAddrDisable', args),
3631
+ getAddys: (...args) => getRequest('getAddys', args),
3632
+ getUndyHq: (...args) => getRequest('getUndyHq', args),
3633
+ canMintUndy: (...args) => getRequest('canMintUndy', args),
3634
+ isPaused: (...args) => getRequest('isPaused', args),
3635
+ isEarnVault: (...args) => getRequest('isEarnVault', args),
3636
+ isLeveragedVault: (...args) => getRequest('isLeveragedVault', args),
3637
+ isBasicEarnVault: (...args) => getRequest('isBasicEarnVault', args),
3638
+ hasConfig: (...args) => getRequest('hasConfig', args),
3639
+ isValidDefaultTargetVaultToken: (...args) => getRequest('isValidDefaultTargetVaultToken', args),
3640
+ isValidPerformanceFee: (...args) => getRequest('isValidPerformanceFee', args),
3641
+ isValidRedemptionBuffer: (...args) => getRequest('isValidRedemptionBuffer', args),
3642
+ getApprovedVaultTokens: (...args) => getRequest('getApprovedVaultTokens', args),
3643
+ getAssetVaultTokens: (...args) => getRequest('getAssetVaultTokens', args),
3644
+ getNumApprovedVaultTokens: (...args) => getRequest('getNumApprovedVaultTokens', args),
3645
+ getNumAssetVaultTokens: (...args) => getRequest('getNumAssetVaultTokens', args),
3646
+ isApprovedVaultTokenForAsset: (...args) => getRequest('isApprovedVaultTokenForAsset', args),
3647
+ canDeposit: (...args) => getRequest('canDeposit', args),
3648
+ canWithdraw: (...args) => getRequest('canWithdraw', args),
3649
+ maxDepositAmount: (...args) => getRequest('maxDepositAmount', args),
3650
+ isVaultOpsFrozen: (...args) => getRequest('isVaultOpsFrozen', args),
3651
+ redemptionBuffer: (...args) => getRequest('redemptionBuffer', args),
3652
+ minYieldWithdrawAmount: (...args) => getRequest('minYieldWithdrawAmount', args),
3653
+ redemptionConfig: (...args) => getRequest('redemptionConfig', args),
3654
+ getPerformanceFee: (...args) => getRequest('getPerformanceFee', args),
3655
+ getDefaultTargetVaultToken: (...args) => getRequest('getDefaultTargetVaultToken', args),
3656
+ shouldAutoDeposit: (...args) => getRequest('shouldAutoDeposit', args),
3657
+ shouldEnforceAllowlist: (...args) => getRequest('shouldEnforceAllowlist', args),
3658
+ isUserAllowed: (...args) => getRequest('isUserAllowed', args),
3659
+ isApprovedVaultTokenByAddr: (...args) => getRequest('isApprovedVaultTokenByAddr', args),
3660
+ checkVaultApprovals: (...args) => getRequest('checkVaultApprovals', args),
3661
+ getVaultConfig: (...args) => getRequest('getVaultConfig', args),
3662
+ getVaultConfigByAddr: (...args) => getRequest('getVaultConfigByAddr', args),
3663
+ getVaultActionDataBundle: (...args) => getRequest('getVaultActionDataBundle', args),
3664
+ getVaultActionDataWithFrozenStatus: (...args) => getRequest('getVaultActionDataWithFrozenStatus', args),
3665
+ getLegoDataFromVaultToken: (...args) => getRequest('getLegoDataFromVaultToken', args),
3666
+ getLegoAddrFromVaultToken: (...args) => getRequest('getLegoAddrFromVaultToken', args),
3667
+ getDepositConfig: (...args) => getRequest('getDepositConfig', args),
3668
+ canUserDeposit: (...args) => getRequest('canUserDeposit', args),
3669
+ vaultConfigs: (...args) => getRequest('vaultConfigs', args),
3670
+ isApprovedVaultToken: (...args) => getRequest('isApprovedVaultToken', args),
3671
+ approvedVaultTokens: (...args) => getRequest('approvedVaultTokens', args),
3672
+ indexOfApprovedVaultToken: (...args) => getRequest('indexOfApprovedVaultToken', args),
3673
+ numApprovedVaultTokens: (...args) => getRequest('numApprovedVaultTokens', args),
3674
+ assetVaultTokens: (...args) => getRequest('assetVaultTokens', args),
3675
+ indexOfAssetVaultToken: (...args) => getRequest('indexOfAssetVaultToken', args),
3676
+ numAssetVaultTokens: (...args) => getRequest('numAssetVaultTokens', args),
3677
+ assetVaultTokenRefCount: (...args) => getRequest('assetVaultTokenRefCount', args),
3678
+ isAllowed: (...args) => getRequest('isAllowed', args),
3679
+ };
3680
+ function getMutation(functionName) {
3681
+ return {
3682
+ contractName: 'VaultRegistry',
3683
+ functionName,
3684
+ deployAddress,
3685
+ argsType: undefined,
3686
+ getAbi: () => abi,
3687
+ };
3688
+ }
3689
+ export const mutation = {
3690
+ startGovernanceChange: getMutation('startGovernanceChange'),
3691
+ confirmGovernanceChange: getMutation('confirmGovernanceChange'),
3692
+ cancelGovernanceChange: getMutation('cancelGovernanceChange'),
3693
+ relinquishGov: getMutation('relinquishGov'),
3694
+ setGovTimeLock: getMutation('setGovTimeLock'),
3695
+ finishUndyHqSetup: getMutation('finishUndyHqSetup'),
3696
+ setRegistryTimeLock: getMutation('setRegistryTimeLock'),
3697
+ setRegistryTimeLockAfterSetup: getMutation('setRegistryTimeLockAfterSetup'),
3698
+ pause: getMutation('pause'),
3699
+ recoverFunds: getMutation('recoverFunds'),
3700
+ recoverFundsMany: getMutation('recoverFundsMany'),
3701
+ startAddNewAddressToRegistry: getMutation('startAddNewAddressToRegistry'),
3702
+ confirmNewAddressToRegistry: getMutation('confirmNewAddressToRegistry'),
3703
+ cancelNewAddressToRegistry: getMutation('cancelNewAddressToRegistry'),
3704
+ startAddressDisableInRegistry: getMutation('startAddressDisableInRegistry'),
3705
+ confirmAddressDisableInRegistry: getMutation('confirmAddressDisableInRegistry'),
3706
+ cancelAddressDisableInRegistry: getMutation('cancelAddressDisableInRegistry'),
3707
+ setCanDeposit: getMutation('setCanDeposit'),
3708
+ setCanWithdraw: getMutation('setCanWithdraw'),
3709
+ setMaxDepositAmount: getMutation('setMaxDepositAmount'),
3710
+ setVaultOpsFrozen: getMutation('setVaultOpsFrozen'),
3711
+ setShouldAutoDeposit: getMutation('setShouldAutoDeposit'),
3712
+ setMinYieldWithdrawAmount: getMutation('setMinYieldWithdrawAmount'),
3713
+ setIsLeveragedVault: getMutation('setIsLeveragedVault'),
3714
+ setShouldEnforceAllowlist: getMutation('setShouldEnforceAllowlist'),
3715
+ setAllowed: getMutation('setAllowed'),
3716
+ setAllowedBatch: getMutation('setAllowedBatch'),
3717
+ setDefaultTargetVaultToken: getMutation('setDefaultTargetVaultToken'),
3718
+ setPerformanceFee: getMutation('setPerformanceFee'),
3719
+ setRedemptionBuffer: getMutation('setRedemptionBuffer'),
3720
+ setApprovedVaultToken: getMutation('setApprovedVaultToken'),
3721
+ setApprovedVaultTokens: getMutation('setApprovedVaultTokens'),
3722
+ };
3723
+ export function parseEvents(eventName, events) {
3724
+ return events.map((event) => {
3725
+ return {
3726
+ event,
3727
+ parsed: parseEventLogs({
3728
+ abi,
3729
+ eventName,
3730
+ logs: [event],
3731
+ }),
3732
+ };
3733
+ });
3734
+ }
3735
+ export function getEventTopic(eventName) {
3736
+ return encodeEventTopics({ abi, eventName })[0];
3737
+ }
3738
+ export function toSdk(publicClient, walletClient, addressResolver) {
3739
+ return {
3740
+ deployAddress,
3741
+ abi,
3742
+ events: {
3743
+ CanDepositSet: { topic: getEventTopic('CanDepositSet'), parse: (events) => parseEvents('CanDepositSet', events) },
3744
+ CanWithdrawSet: { topic: getEventTopic('CanWithdrawSet'), parse: (events) => parseEvents('CanWithdrawSet', events) },
3745
+ MaxDepositAmountSet: { topic: getEventTopic('MaxDepositAmountSet'), parse: (events) => parseEvents('MaxDepositAmountSet', events) },
3746
+ VaultOpsFrozenSet: { topic: getEventTopic('VaultOpsFrozenSet'), parse: (events) => parseEvents('VaultOpsFrozenSet', events) },
3747
+ RedemptionBufferSet: { topic: getEventTopic('RedemptionBufferSet'), parse: (events) => parseEvents('RedemptionBufferSet', events) },
3748
+ MinYieldWithdrawAmountSet: { topic: getEventTopic('MinYieldWithdrawAmountSet'), parse: (events) => parseEvents('MinYieldWithdrawAmountSet', events) },
3749
+ PerformanceFeeSet: { topic: getEventTopic('PerformanceFeeSet'), parse: (events) => parseEvents('PerformanceFeeSet', events) },
3750
+ DefaultTargetVaultTokenSet: { topic: getEventTopic('DefaultTargetVaultTokenSet'), parse: (events) => parseEvents('DefaultTargetVaultTokenSet', events) },
3751
+ ShouldAutoDepositSet: { topic: getEventTopic('ShouldAutoDepositSet'), parse: (events) => parseEvents('ShouldAutoDepositSet', events) },
3752
+ IsLeveragedVaultSet: { topic: getEventTopic('IsLeveragedVaultSet'), parse: (events) => parseEvents('IsLeveragedVaultSet', events) },
3753
+ ApprovedVaultTokenSet: { topic: getEventTopic('ApprovedVaultTokenSet'), parse: (events) => parseEvents('ApprovedVaultTokenSet', events) },
3754
+ VaultTokenAdded: { topic: getEventTopic('VaultTokenAdded'), parse: (events) => parseEvents('VaultTokenAdded', events) },
3755
+ VaultTokenRemoved: { topic: getEventTopic('VaultTokenRemoved'), parse: (events) => parseEvents('VaultTokenRemoved', events) },
3756
+ AssetVaultTokenAdded: { topic: getEventTopic('AssetVaultTokenAdded'), parse: (events) => parseEvents('AssetVaultTokenAdded', events) },
3757
+ AssetVaultTokenRemoved: { topic: getEventTopic('AssetVaultTokenRemoved'), parse: (events) => parseEvents('AssetVaultTokenRemoved', events) },
3758
+ ShouldEnforceAllowlistSet: { topic: getEventTopic('ShouldEnforceAllowlistSet'), parse: (events) => parseEvents('ShouldEnforceAllowlistSet', events) },
3759
+ AllowlistSet: { topic: getEventTopic('AllowlistSet'), parse: (events) => parseEvents('AllowlistSet', events) },
3760
+ GovChangeTimeLockModified: { topic: getEventTopic('GovChangeTimeLockModified'), parse: (events) => parseEvents('GovChangeTimeLockModified', events) },
3761
+ RegistryTimeLockModified: { topic: getEventTopic('RegistryTimeLockModified'), parse: (events) => parseEvents('RegistryTimeLockModified', events) },
3762
+ GovChangeStarted: { topic: getEventTopic('GovChangeStarted'), parse: (events) => parseEvents('GovChangeStarted', events) },
3763
+ GovChangeConfirmed: { topic: getEventTopic('GovChangeConfirmed'), parse: (events) => parseEvents('GovChangeConfirmed', events) },
3764
+ GovChangeCancelled: { topic: getEventTopic('GovChangeCancelled'), parse: (events) => parseEvents('GovChangeCancelled', events) },
3765
+ GovRelinquished: { topic: getEventTopic('GovRelinquished'), parse: (events) => parseEvents('GovRelinquished', events) },
3766
+ UndyHqSetupFinished: { topic: getEventTopic('UndyHqSetupFinished'), parse: (events) => parseEvents('UndyHqSetupFinished', events) },
3767
+ DepartmentPauseModified: { topic: getEventTopic('DepartmentPauseModified'), parse: (events) => parseEvents('DepartmentPauseModified', events) },
3768
+ DepartmentFundsRecovered: { topic: getEventTopic('DepartmentFundsRecovered'), parse: (events) => parseEvents('DepartmentFundsRecovered', events) },
3769
+ NewAddressPending: { topic: getEventTopic('NewAddressPending'), parse: (events) => parseEvents('NewAddressPending', events) },
3770
+ NewAddressConfirmed: { topic: getEventTopic('NewAddressConfirmed'), parse: (events) => parseEvents('NewAddressConfirmed', events) },
3771
+ NewAddressCancelled: { topic: getEventTopic('NewAddressCancelled'), parse: (events) => parseEvents('NewAddressCancelled', events) },
3772
+ AddressDisablePending: { topic: getEventTopic('AddressDisablePending'), parse: (events) => parseEvents('AddressDisablePending', events) },
3773
+ AddressDisableConfirmed: { topic: getEventTopic('AddressDisableConfirmed'), parse: (events) => parseEvents('AddressDisableConfirmed', events) },
3774
+ AddressDisableCancelled: { topic: getEventTopic('AddressDisableCancelled'), parse: (events) => parseEvents('AddressDisableCancelled', events) },
3775
+ },
3776
+ // Queries
3777
+ getUndyHqFromGov: (...args) => singleQuery(publicClient, call.getUndyHqFromGov(...args), {}, addressResolver),
3778
+ canGovern: (...args) => singleQuery(publicClient, call.canGovern(...args), {}, addressResolver),
3779
+ getGovernors: (...args) => singleQuery(publicClient, call.getGovernors(...args), {}, addressResolver),
3780
+ hasPendingGovChange: (...args) => singleQuery(publicClient, call.hasPendingGovChange(...args), {}, addressResolver),
3781
+ isValidGovTimeLock: (...args) => singleQuery(publicClient, call.isValidGovTimeLock(...args), {}, addressResolver),
3782
+ minGovChangeTimeLock: (...args) => singleQuery(publicClient, call.minGovChangeTimeLock(...args), {}, addressResolver),
3783
+ maxGovChangeTimeLock: (...args) => singleQuery(publicClient, call.maxGovChangeTimeLock(...args), {}, addressResolver),
3784
+ governance: (...args) => singleQuery(publicClient, call.governance(...args), {}, addressResolver),
3785
+ pendingGov: (...args) => singleQuery(publicClient, call.pendingGov(...args), {}, addressResolver),
3786
+ numGovChanges: (...args) => singleQuery(publicClient, call.numGovChanges(...args), {}, addressResolver),
3787
+ govChangeTimeLock: (...args) => singleQuery(publicClient, call.govChangeTimeLock(...args), {}, addressResolver),
3788
+ getRegistryDescription: (...args) => singleQuery(publicClient, call.getRegistryDescription(...args), {}, addressResolver),
3789
+ isValidNewAddress: (...args) => singleQuery(publicClient, call.isValidNewAddress(...args), {}, addressResolver),
3790
+ isValidAddressUpdate: (...args) => singleQuery(publicClient, call.isValidAddressUpdate(...args), {}, addressResolver),
3791
+ isValidAddressDisable: (...args) => singleQuery(publicClient, call.isValidAddressDisable(...args), {}, addressResolver),
3792
+ isValidRegistryTimeLock: (...args) => singleQuery(publicClient, call.isValidRegistryTimeLock(...args), {}, addressResolver),
3793
+ minRegistryTimeLock: (...args) => singleQuery(publicClient, call.minRegistryTimeLock(...args), {}, addressResolver),
3794
+ maxRegistryTimeLock: (...args) => singleQuery(publicClient, call.maxRegistryTimeLock(...args), {}, addressResolver),
3795
+ isValidAddr: (...args) => singleQuery(publicClient, call.isValidAddr(...args), {}, addressResolver),
3796
+ isValidRegId: (...args) => singleQuery(publicClient, call.isValidRegId(...args), {}, addressResolver),
3797
+ getRegId: (...args) => singleQuery(publicClient, call.getRegId(...args), {}, addressResolver),
3798
+ getAddr: (...args) => singleQuery(publicClient, call.getAddr(...args), {}, addressResolver),
3799
+ getAddrInfo: (...args) => singleQuery(publicClient, call.getAddrInfo(...args), {}, addressResolver),
3800
+ getAddrDescription: (...args) => singleQuery(publicClient, call.getAddrDescription(...args), {}, addressResolver),
3801
+ getNumAddrs: (...args) => singleQuery(publicClient, call.getNumAddrs(...args), {}, addressResolver),
3802
+ getLastAddr: (...args) => singleQuery(publicClient, call.getLastAddr(...args), {}, addressResolver),
3803
+ getLastRegId: (...args) => singleQuery(publicClient, call.getLastRegId(...args), {}, addressResolver),
3804
+ registryChangeTimeLock: (...args) => singleQuery(publicClient, call.registryChangeTimeLock(...args), {}, addressResolver),
3805
+ addrInfo: (...args) => singleQuery(publicClient, call.addrInfo(...args), {}, addressResolver),
3806
+ addrToRegId: (...args) => singleQuery(publicClient, call.addrToRegId(...args), {}, addressResolver),
3807
+ numAddrs: (...args) => singleQuery(publicClient, call.numAddrs(...args), {}, addressResolver),
3808
+ pendingNewAddr: (...args) => singleQuery(publicClient, call.pendingNewAddr(...args), {}, addressResolver),
3809
+ pendingAddrUpdate: (...args) => singleQuery(publicClient, call.pendingAddrUpdate(...args), {}, addressResolver),
3810
+ pendingAddrDisable: (...args) => singleQuery(publicClient, call.pendingAddrDisable(...args), {}, addressResolver),
3811
+ getAddys: (...args) => singleQuery(publicClient, call.getAddys(...args), {}, addressResolver),
3812
+ getUndyHq: (...args) => singleQuery(publicClient, call.getUndyHq(...args), {}, addressResolver),
3813
+ canMintUndy: (...args) => singleQuery(publicClient, call.canMintUndy(...args), {}, addressResolver),
3814
+ isPaused: (...args) => singleQuery(publicClient, call.isPaused(...args), {}, addressResolver),
3815
+ isEarnVault: (...args) => singleQuery(publicClient, call.isEarnVault(...args), {}, addressResolver),
3816
+ isLeveragedVault: (...args) => singleQuery(publicClient, call.isLeveragedVault(...args), {}, addressResolver),
3817
+ isBasicEarnVault: (...args) => singleQuery(publicClient, call.isBasicEarnVault(...args), {}, addressResolver),
3818
+ hasConfig: (...args) => singleQuery(publicClient, call.hasConfig(...args), {}, addressResolver),
3819
+ isValidDefaultTargetVaultToken: (...args) => singleQuery(publicClient, call.isValidDefaultTargetVaultToken(...args), {}, addressResolver),
3820
+ isValidPerformanceFee: (...args) => singleQuery(publicClient, call.isValidPerformanceFee(...args), {}, addressResolver),
3821
+ isValidRedemptionBuffer: (...args) => singleQuery(publicClient, call.isValidRedemptionBuffer(...args), {}, addressResolver),
3822
+ getApprovedVaultTokens: (...args) => singleQuery(publicClient, call.getApprovedVaultTokens(...args), {}, addressResolver),
3823
+ getAssetVaultTokens: (...args) => singleQuery(publicClient, call.getAssetVaultTokens(...args), {}, addressResolver),
3824
+ getNumApprovedVaultTokens: (...args) => singleQuery(publicClient, call.getNumApprovedVaultTokens(...args), {}, addressResolver),
3825
+ getNumAssetVaultTokens: (...args) => singleQuery(publicClient, call.getNumAssetVaultTokens(...args), {}, addressResolver),
3826
+ isApprovedVaultTokenForAsset: (...args) => singleQuery(publicClient, call.isApprovedVaultTokenForAsset(...args), {}, addressResolver),
3827
+ canDeposit: (...args) => singleQuery(publicClient, call.canDeposit(...args), {}, addressResolver),
3828
+ canWithdraw: (...args) => singleQuery(publicClient, call.canWithdraw(...args), {}, addressResolver),
3829
+ maxDepositAmount: (...args) => singleQuery(publicClient, call.maxDepositAmount(...args), {}, addressResolver),
3830
+ isVaultOpsFrozen: (...args) => singleQuery(publicClient, call.isVaultOpsFrozen(...args), {}, addressResolver),
3831
+ redemptionBuffer: (...args) => singleQuery(publicClient, call.redemptionBuffer(...args), {}, addressResolver),
3832
+ minYieldWithdrawAmount: (...args) => singleQuery(publicClient, call.minYieldWithdrawAmount(...args), {}, addressResolver),
3833
+ redemptionConfig: (...args) => singleQuery(publicClient, call.redemptionConfig(...args), {}, addressResolver),
3834
+ getPerformanceFee: (...args) => singleQuery(publicClient, call.getPerformanceFee(...args), {}, addressResolver),
3835
+ getDefaultTargetVaultToken: (...args) => singleQuery(publicClient, call.getDefaultTargetVaultToken(...args), {}, addressResolver),
3836
+ shouldAutoDeposit: (...args) => singleQuery(publicClient, call.shouldAutoDeposit(...args), {}, addressResolver),
3837
+ shouldEnforceAllowlist: (...args) => singleQuery(publicClient, call.shouldEnforceAllowlist(...args), {}, addressResolver),
3838
+ isUserAllowed: (...args) => singleQuery(publicClient, call.isUserAllowed(...args), {}, addressResolver),
3839
+ isApprovedVaultTokenByAddr: (...args) => singleQuery(publicClient, call.isApprovedVaultTokenByAddr(...args), {}, addressResolver),
3840
+ checkVaultApprovals: (...args) => singleQuery(publicClient, call.checkVaultApprovals(...args), {}, addressResolver),
3841
+ getVaultConfig: (...args) => singleQuery(publicClient, call.getVaultConfig(...args), {}, addressResolver),
3842
+ getVaultConfigByAddr: (...args) => singleQuery(publicClient, call.getVaultConfigByAddr(...args), {}, addressResolver),
3843
+ getVaultActionDataBundle: (...args) => singleQuery(publicClient, call.getVaultActionDataBundle(...args), {}, addressResolver),
3844
+ getVaultActionDataWithFrozenStatus: (...args) => singleQuery(publicClient, call.getVaultActionDataWithFrozenStatus(...args), {}, addressResolver),
3845
+ getLegoDataFromVaultToken: (...args) => singleQuery(publicClient, call.getLegoDataFromVaultToken(...args), {}, addressResolver),
3846
+ getLegoAddrFromVaultToken: (...args) => singleQuery(publicClient, call.getLegoAddrFromVaultToken(...args), {}, addressResolver),
3847
+ getDepositConfig: (...args) => singleQuery(publicClient, call.getDepositConfig(...args), {}, addressResolver),
3848
+ canUserDeposit: (...args) => singleQuery(publicClient, call.canUserDeposit(...args), {}, addressResolver),
3849
+ vaultConfigs: (...args) => singleQuery(publicClient, call.vaultConfigs(...args), {}, addressResolver),
3850
+ isApprovedVaultToken: (...args) => singleQuery(publicClient, call.isApprovedVaultToken(...args), {}, addressResolver),
3851
+ approvedVaultTokens: (...args) => singleQuery(publicClient, call.approvedVaultTokens(...args), {}, addressResolver),
3852
+ indexOfApprovedVaultToken: (...args) => singleQuery(publicClient, call.indexOfApprovedVaultToken(...args), {}, addressResolver),
3853
+ numApprovedVaultTokens: (...args) => singleQuery(publicClient, call.numApprovedVaultTokens(...args), {}, addressResolver),
3854
+ assetVaultTokens: (...args) => singleQuery(publicClient, call.assetVaultTokens(...args), {}, addressResolver),
3855
+ indexOfAssetVaultToken: (...args) => singleQuery(publicClient, call.indexOfAssetVaultToken(...args), {}, addressResolver),
3856
+ numAssetVaultTokens: (...args) => singleQuery(publicClient, call.numAssetVaultTokens(...args), {}, addressResolver),
3857
+ assetVaultTokenRefCount: (...args) => singleQuery(publicClient, call.assetVaultTokenRefCount(...args), {}, addressResolver),
3858
+ isAllowed: (...args) => singleQuery(publicClient, call.isAllowed(...args), {}, addressResolver),
3859
+ // Mutations
3860
+ startGovernanceChange: (...args) => mutate(walletClient, mutation.startGovernanceChange, { addressResolver })(...args),
3861
+ confirmGovernanceChange: (...args) => mutate(walletClient, mutation.confirmGovernanceChange, { addressResolver })(...args),
3862
+ cancelGovernanceChange: (...args) => mutate(walletClient, mutation.cancelGovernanceChange, { addressResolver })(...args),
3863
+ relinquishGov: (...args) => mutate(walletClient, mutation.relinquishGov, { addressResolver })(...args),
3864
+ setGovTimeLock: (...args) => mutate(walletClient, mutation.setGovTimeLock, { addressResolver })(...args),
3865
+ finishUndyHqSetup: (...args) => mutate(walletClient, mutation.finishUndyHqSetup, { addressResolver })(...args),
3866
+ setRegistryTimeLock: (...args) => mutate(walletClient, mutation.setRegistryTimeLock, { addressResolver })(...args),
3867
+ setRegistryTimeLockAfterSetup: (...args) => mutate(walletClient, mutation.setRegistryTimeLockAfterSetup, { addressResolver })(...args),
3868
+ pause: (...args) => mutate(walletClient, mutation.pause, { addressResolver })(...args),
3869
+ recoverFunds: (...args) => mutate(walletClient, mutation.recoverFunds, { addressResolver })(...args),
3870
+ recoverFundsMany: (...args) => mutate(walletClient, mutation.recoverFundsMany, { addressResolver })(...args),
3871
+ startAddNewAddressToRegistry: (...args) => mutate(walletClient, mutation.startAddNewAddressToRegistry, { addressResolver })(...args),
3872
+ confirmNewAddressToRegistry: (...args) => mutate(walletClient, mutation.confirmNewAddressToRegistry, { addressResolver })(...args),
3873
+ cancelNewAddressToRegistry: (...args) => mutate(walletClient, mutation.cancelNewAddressToRegistry, { addressResolver })(...args),
3874
+ startAddressDisableInRegistry: (...args) => mutate(walletClient, mutation.startAddressDisableInRegistry, { addressResolver })(...args),
3875
+ confirmAddressDisableInRegistry: (...args) => mutate(walletClient, mutation.confirmAddressDisableInRegistry, { addressResolver })(...args),
3876
+ cancelAddressDisableInRegistry: (...args) => mutate(walletClient, mutation.cancelAddressDisableInRegistry, { addressResolver })(...args),
3877
+ setCanDeposit: (...args) => mutate(walletClient, mutation.setCanDeposit, { addressResolver })(...args),
3878
+ setCanWithdraw: (...args) => mutate(walletClient, mutation.setCanWithdraw, { addressResolver })(...args),
3879
+ setMaxDepositAmount: (...args) => mutate(walletClient, mutation.setMaxDepositAmount, { addressResolver })(...args),
3880
+ setVaultOpsFrozen: (...args) => mutate(walletClient, mutation.setVaultOpsFrozen, { addressResolver })(...args),
3881
+ setShouldAutoDeposit: (...args) => mutate(walletClient, mutation.setShouldAutoDeposit, { addressResolver })(...args),
3882
+ setMinYieldWithdrawAmount: (...args) => mutate(walletClient, mutation.setMinYieldWithdrawAmount, { addressResolver })(...args),
3883
+ setIsLeveragedVault: (...args) => mutate(walletClient, mutation.setIsLeveragedVault, { addressResolver })(...args),
3884
+ setShouldEnforceAllowlist: (...args) => mutate(walletClient, mutation.setShouldEnforceAllowlist, { addressResolver })(...args),
3885
+ setAllowed: (...args) => mutate(walletClient, mutation.setAllowed, { addressResolver })(...args),
3886
+ setAllowedBatch: (...args) => mutate(walletClient, mutation.setAllowedBatch, { addressResolver })(...args),
3887
+ setDefaultTargetVaultToken: (...args) => mutate(walletClient, mutation.setDefaultTargetVaultToken, { addressResolver })(...args),
3888
+ setPerformanceFee: (...args) => mutate(walletClient, mutation.setPerformanceFee, { addressResolver })(...args),
3889
+ setRedemptionBuffer: (...args) => mutate(walletClient, mutation.setRedemptionBuffer, { addressResolver })(...args),
3890
+ setApprovedVaultToken: (...args) => mutate(walletClient, mutation.setApprovedVaultToken, { addressResolver })(...args),
3891
+ setApprovedVaultTokens: (...args) => mutate(walletClient, mutation.setApprovedVaultTokens, { addressResolver })(...args),
3892
+ };
3893
+ }