@guru-fund/sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +226 -0
  3. package/dist/GuruProtocol.d.ts +44 -0
  4. package/dist/GuruProtocol.js +75 -0
  5. package/dist/addresses.d.ts +40 -0
  6. package/dist/addresses.js +111 -0
  7. package/dist/constants.d.ts +22 -0
  8. package/dist/constants.js +23 -0
  9. package/dist/helpers/FundDataFetcher.d.ts +24 -0
  10. package/dist/helpers/FundDataFetcher.js +66 -0
  11. package/dist/helpers/ReceiptParser.d.ts +23 -0
  12. package/dist/helpers/ReceiptParser.js +59 -0
  13. package/dist/helpers/Token.d.ts +18 -0
  14. package/dist/helpers/Token.js +43 -0
  15. package/dist/helpers/compareAddresses.d.ts +1 -0
  16. package/dist/helpers/compareAddresses.js +15 -0
  17. package/dist/index.d.ts +17 -0
  18. package/dist/index.js +3 -0
  19. package/dist/quotes/quoteDeposit.d.ts +41 -0
  20. package/dist/quotes/quoteDeposit.js +186 -0
  21. package/dist/quotes/quoteHarvest.d.ts +34 -0
  22. package/dist/quotes/quoteHarvest.js +105 -0
  23. package/dist/quotes/quoteRebalance.d.ts +51 -0
  24. package/dist/quotes/quoteRebalance.js +201 -0
  25. package/dist/quotes/quoteTrade.d.ts +18 -0
  26. package/dist/quotes/quoteTrade.js +51 -0
  27. package/dist/quotes/quoteWithdrawal.d.ts +41 -0
  28. package/dist/quotes/quoteWithdrawal.js +113 -0
  29. package/dist/router/constants.d.ts +18 -0
  30. package/dist/router/constants.js +25 -0
  31. package/dist/router/finalizeRoute.d.ts +16 -0
  32. package/dist/router/finalizeRoute.js +29 -0
  33. package/dist/router/getFallbackRoutes.d.ts +10 -0
  34. package/dist/router/getFallbackRoutes.js +91 -0
  35. package/dist/router/getUniswapV4Route.d.ts +42 -0
  36. package/dist/router/getUniswapV4Route.js +324 -0
  37. package/dist/router/getVeloraRoute.d.ts +10 -0
  38. package/dist/router/getVeloraRoute.js +68 -0
  39. package/dist/router/helpers.d.ts +11 -0
  40. package/dist/router/helpers.js +30 -0
  41. package/dist/router/index.d.ts +22 -0
  42. package/dist/router/index.js +135 -0
  43. package/dist/router/pathCache.d.ts +16 -0
  44. package/dist/router/pathCache.js +116 -0
  45. package/dist/router/poolHelper.d.ts +126 -0
  46. package/dist/router/poolHelper.js +807 -0
  47. package/dist/router/quoteWethTrade.d.ts +14 -0
  48. package/dist/router/quoteWethTrade.js +125 -0
  49. package/dist/router/simulation.d.ts +43 -0
  50. package/dist/router/simulation.js +70 -0
  51. package/dist/router/types.d.ts +149 -0
  52. package/dist/router/types.js +1 -0
  53. package/dist/router/v4PoolDiscovery.d.ts +30 -0
  54. package/dist/router/v4PoolDiscovery.js +147 -0
  55. package/dist/router/velora.d.ts +42 -0
  56. package/dist/router/velora.js +279 -0
  57. package/dist/schemas/index.d.ts +6 -0
  58. package/dist/schemas/index.js +6 -0
  59. package/dist/schemas/primitives.d.ts +3 -0
  60. package/dist/schemas/primitives.js +9 -0
  61. package/dist/schemas/quoteDeposit.d.ts +23 -0
  62. package/dist/schemas/quoteDeposit.js +10 -0
  63. package/dist/schemas/quoteHarvest.d.ts +17 -0
  64. package/dist/schemas/quoteHarvest.js +8 -0
  65. package/dist/schemas/quoteRebalance.d.ts +29 -0
  66. package/dist/schemas/quoteRebalance.js +10 -0
  67. package/dist/schemas/quoteTrade.d.ts +20 -0
  68. package/dist/schemas/quoteTrade.js +9 -0
  69. package/dist/schemas/quoteWithdrawal.d.ts +23 -0
  70. package/dist/schemas/quoteWithdrawal.js +10 -0
  71. package/dist/txBuilders/buildDepositTx.d.ts +17 -0
  72. package/dist/txBuilders/buildDepositTx.js +18 -0
  73. package/dist/txBuilders/buildHarvestTx.d.ts +16 -0
  74. package/dist/txBuilders/buildHarvestTx.js +17 -0
  75. package/dist/txBuilders/buildTradeTx.d.ts +9 -0
  76. package/dist/txBuilders/buildTradeTx.js +9 -0
  77. package/dist/txBuilders/buildWithdrawTx.d.ts +16 -0
  78. package/dist/txBuilders/buildWithdrawTx.js +17 -0
  79. package/dist/txBuilders/index.d.ts +8 -0
  80. package/dist/txBuilders/index.js +4 -0
  81. package/dist/typechain/common.d.ts +50 -0
  82. package/dist/typechain/common.js +1 -0
  83. package/dist/typechain/factories/include/IPancakeQuoterV2__factory.d.ts +225 -0
  84. package/dist/typechain/factories/include/IPancakeQuoterV2__factory.js +295 -0
  85. package/dist/typechain/factories/include/ISwapRouter02__factory.d.ts +826 -0
  86. package/dist/typechain/factories/include/ISwapRouter02__factory.js +1073 -0
  87. package/dist/typechain/factories/include/index.d.ts +2 -0
  88. package/dist/typechain/factories/include/index.js +2 -0
  89. package/dist/typechain/factories/index.d.ts +2 -0
  90. package/dist/typechain/factories/index.js +2 -0
  91. package/dist/typechain/factories/out/Adapter__factory.d.ts +31 -0
  92. package/dist/typechain/factories/out/Adapter__factory.js +43 -0
  93. package/dist/typechain/factories/out/AerodromeV2Adapter__factory.d.ts +179 -0
  94. package/dist/typechain/factories/out/AerodromeV2Adapter__factory.js +237 -0
  95. package/dist/typechain/factories/out/AerodromeV3Adapter__factory.d.ts +162 -0
  96. package/dist/typechain/factories/out/AerodromeV3Adapter__factory.js +215 -0
  97. package/dist/typechain/factories/out/AssetManager.sol/LedgerAssetManager__factory.d.ts +1032 -0
  98. package/dist/typechain/factories/out/AssetManager.sol/LedgerAssetManager__factory.js +1357 -0
  99. package/dist/typechain/factories/out/AssetManager.sol/index.d.ts +1 -0
  100. package/dist/typechain/factories/out/AssetManager.sol/index.js +1 -0
  101. package/dist/typechain/factories/out/Bookkeeper.sol/LedgerBookkeeper__factory.d.ts +950 -0
  102. package/dist/typechain/factories/out/Bookkeeper.sol/LedgerBookkeeper__factory.js +1250 -0
  103. package/dist/typechain/factories/out/Bookkeeper.sol/index.d.ts +1 -0
  104. package/dist/typechain/factories/out/Bookkeeper.sol/index.js +1 -0
  105. package/dist/typechain/factories/out/Checkpoint.sol/CheckpointController__factory.d.ts +33 -0
  106. package/dist/typechain/factories/out/Checkpoint.sol/CheckpointController__factory.js +47 -0
  107. package/dist/typechain/factories/out/Checkpoint.sol/index.d.ts +1 -0
  108. package/dist/typechain/factories/out/Checkpoint.sol/index.js +1 -0
  109. package/dist/typechain/factories/out/Closure.sol/ClosureController__factory.d.ts +459 -0
  110. package/dist/typechain/factories/out/Closure.sol/ClosureController__factory.js +603 -0
  111. package/dist/typechain/factories/out/Closure.sol/index.d.ts +1 -0
  112. package/dist/typechain/factories/out/Closure.sol/index.js +1 -0
  113. package/dist/typechain/factories/out/ContextBuilder__factory.d.ts +671 -0
  114. package/dist/typechain/factories/out/ContextBuilder__factory.js +870 -0
  115. package/dist/typechain/factories/out/Control.sol/Controllable__factory.d.ts +107 -0
  116. package/dist/typechain/factories/out/Control.sol/Controllable__factory.js +141 -0
  117. package/dist/typechain/factories/out/Control.sol/Controller__factory.d.ts +21 -0
  118. package/dist/typechain/factories/out/Control.sol/Controller__factory.js +30 -0
  119. package/dist/typechain/factories/out/Control.sol/index.d.ts +2 -0
  120. package/dist/typechain/factories/out/Control.sol/index.js +2 -0
  121. package/dist/typechain/factories/out/Controller.sol/ClosureDelegate__factory.d.ts +57 -0
  122. package/dist/typechain/factories/out/Controller.sol/ClosureDelegate__factory.js +77 -0
  123. package/dist/typechain/factories/out/Controller.sol/CreationDelegate__factory.d.ts +58 -0
  124. package/dist/typechain/factories/out/Controller.sol/CreationDelegate__factory.js +77 -0
  125. package/dist/typechain/factories/out/Controller.sol/DepositDelegate__factory.d.ts +55 -0
  126. package/dist/typechain/factories/out/Controller.sol/DepositDelegate__factory.js +74 -0
  127. package/dist/typechain/factories/out/Controller.sol/FundController__factory.d.ts +703 -0
  128. package/dist/typechain/factories/out/Controller.sol/FundController__factory.js +911 -0
  129. package/dist/typechain/factories/out/Controller.sol/HarvestDelegate__factory.d.ts +234 -0
  130. package/dist/typechain/factories/out/Controller.sol/HarvestDelegate__factory.js +303 -0
  131. package/dist/typechain/factories/out/Controller.sol/TradeDelegate__factory.d.ts +61 -0
  132. package/dist/typechain/factories/out/Controller.sol/TradeDelegate__factory.js +81 -0
  133. package/dist/typechain/factories/out/Controller.sol/TransferDelegate__factory.d.ts +29 -0
  134. package/dist/typechain/factories/out/Controller.sol/TransferDelegate__factory.js +40 -0
  135. package/dist/typechain/factories/out/Controller.sol/WithdrawalDelegate__factory.d.ts +51 -0
  136. package/dist/typechain/factories/out/Controller.sol/WithdrawalDelegate__factory.js +69 -0
  137. package/dist/typechain/factories/out/Controller.sol/index.d.ts +8 -0
  138. package/dist/typechain/factories/out/Controller.sol/index.js +8 -0
  139. package/dist/typechain/factories/out/Cooldown.sol/LedgerCooldown__factory.d.ts +747 -0
  140. package/dist/typechain/factories/out/Cooldown.sol/LedgerCooldown__factory.js +982 -0
  141. package/dist/typechain/factories/out/Cooldown.sol/index.d.ts +1 -0
  142. package/dist/typechain/factories/out/Cooldown.sol/index.js +1 -0
  143. package/dist/typechain/factories/out/Creation.sol/CreationController__factory.d.ts +172 -0
  144. package/dist/typechain/factories/out/Creation.sol/CreationController__factory.js +225 -0
  145. package/dist/typechain/factories/out/Creation.sol/index.d.ts +1 -0
  146. package/dist/typechain/factories/out/Creation.sol/index.js +1 -0
  147. package/dist/typechain/factories/out/Deposit.sol/DepositController__factory.d.ts +162 -0
  148. package/dist/typechain/factories/out/Deposit.sol/DepositController__factory.js +223 -0
  149. package/dist/typechain/factories/out/Deposit.sol/index.d.ts +1 -0
  150. package/dist/typechain/factories/out/Deposit.sol/index.js +1 -0
  151. package/dist/typechain/factories/out/Error__factory.d.ts +318 -0
  152. package/dist/typechain/factories/out/Error__factory.js +423 -0
  153. package/dist/typechain/factories/out/Harvest.sol/HarvestController__factory.d.ts +401 -0
  154. package/dist/typechain/factories/out/Harvest.sol/HarvestController__factory.js +527 -0
  155. package/dist/typechain/factories/out/Harvest.sol/index.d.ts +1 -0
  156. package/dist/typechain/factories/out/Harvest.sol/index.js +1 -0
  157. package/dist/typechain/factories/out/IAerodromeRouter__factory.d.ts +85 -0
  158. package/dist/typechain/factories/out/IAerodromeRouter__factory.js +113 -0
  159. package/dist/typechain/factories/out/IAerodromeSwapRouter__factory.d.ts +89 -0
  160. package/dist/typechain/factories/out/IAerodromeSwapRouter__factory.js +119 -0
  161. package/dist/typechain/factories/out/IUniswapV4.sol/IPermit2__factory.d.ts +29 -0
  162. package/dist/typechain/factories/out/IUniswapV4.sol/IPermit2__factory.js +40 -0
  163. package/dist/typechain/factories/out/IUniswapV4.sol/IUniversalRouter__factory.d.ts +25 -0
  164. package/dist/typechain/factories/out/IUniswapV4.sol/IUniversalRouter__factory.js +35 -0
  165. package/dist/typechain/factories/out/IUniswapV4.sol/index.d.ts +2 -0
  166. package/dist/typechain/factories/out/IUniswapV4.sol/index.js +2 -0
  167. package/dist/typechain/factories/out/IV0Fund__factory.d.ts +129 -0
  168. package/dist/typechain/factories/out/IV0Fund__factory.js +173 -0
  169. package/dist/typechain/factories/out/IV3SwapRouter__factory.d.ts +38 -0
  170. package/dist/typechain/factories/out/IV3SwapRouter__factory.js +53 -0
  171. package/dist/typechain/factories/out/Initializer.sol/LedgerInitializer__factory.d.ts +655 -0
  172. package/dist/typechain/factories/out/Initializer.sol/LedgerInitializer__factory.js +859 -0
  173. package/dist/typechain/factories/out/Initializer.sol/VaultInitializer__factory.d.ts +141 -0
  174. package/dist/typechain/factories/out/Initializer.sol/VaultInitializer__factory.js +185 -0
  175. package/dist/typechain/factories/out/Initializer.sol/index.d.ts +2 -0
  176. package/dist/typechain/factories/out/Initializer.sol/index.js +2 -0
  177. package/dist/typechain/factories/out/Ledger.sol/FundLedger__factory.d.ts +1502 -0
  178. package/dist/typechain/factories/out/Ledger.sol/FundLedger__factory.js +1959 -0
  179. package/dist/typechain/factories/out/Ledger.sol/index.d.ts +1 -0
  180. package/dist/typechain/factories/out/Ledger.sol/index.js +1 -0
  181. package/dist/typechain/factories/out/LotusP2P__factory.d.ts +847 -0
  182. package/dist/typechain/factories/out/LotusP2P__factory.js +1095 -0
  183. package/dist/typechain/factories/out/MulticallStatic__factory.d.ts +29 -0
  184. package/dist/typechain/factories/out/MulticallStatic__factory.js +42 -0
  185. package/dist/typechain/factories/out/Operator.sol/VaultOperator__factory.d.ts +235 -0
  186. package/dist/typechain/factories/out/Operator.sol/VaultOperator__factory.js +308 -0
  187. package/dist/typechain/factories/out/Operator.sol/index.d.ts +1 -0
  188. package/dist/typechain/factories/out/Operator.sol/index.js +1 -0
  189. package/dist/typechain/factories/out/P2PAdapter__factory.d.ts +216 -0
  190. package/dist/typechain/factories/out/P2PAdapter__factory.js +287 -0
  191. package/dist/typechain/factories/out/ProtocolMigrationExtension__factory.d.ts +1084 -0
  192. package/dist/typechain/factories/out/ProtocolMigrationExtension__factory.js +1409 -0
  193. package/dist/typechain/factories/out/ProtocolProvider__factory.d.ts +21 -0
  194. package/dist/typechain/factories/out/ProtocolProvider__factory.js +30 -0
  195. package/dist/typechain/factories/out/Protocol__factory.d.ts +1095 -0
  196. package/dist/typechain/factories/out/Protocol__factory.js +1424 -0
  197. package/dist/typechain/factories/out/Registrar.sol/LedgerRegistrar__factory.d.ts +1375 -0
  198. package/dist/typechain/factories/out/Registrar.sol/LedgerRegistrar__factory.js +1791 -0
  199. package/dist/typechain/factories/out/Registrar.sol/index.d.ts +1 -0
  200. package/dist/typechain/factories/out/Registrar.sol/index.js +1 -0
  201. package/dist/typechain/factories/out/Settings.sol/SettingsController__factory.d.ts +143 -0
  202. package/dist/typechain/factories/out/Settings.sol/SettingsController__factory.js +188 -0
  203. package/dist/typechain/factories/out/Settings.sol/index.d.ts +1 -0
  204. package/dist/typechain/factories/out/Settings.sol/index.js +1 -0
  205. package/dist/typechain/factories/out/Shares.sol/ICheckpointController__factory.d.ts +21 -0
  206. package/dist/typechain/factories/out/Shares.sol/ICheckpointController__factory.js +31 -0
  207. package/dist/typechain/factories/out/Shares.sol/ITransferController__factory.d.ts +25 -0
  208. package/dist/typechain/factories/out/Shares.sol/ITransferController__factory.js +35 -0
  209. package/dist/typechain/factories/out/Shares.sol/LedgerShares__factory.d.ts +829 -0
  210. package/dist/typechain/factories/out/Shares.sol/LedgerShares__factory.js +1089 -0
  211. package/dist/typechain/factories/out/Shares.sol/index.d.ts +3 -0
  212. package/dist/typechain/factories/out/Shares.sol/index.js +3 -0
  213. package/dist/typechain/factories/out/SignatureVerifier__factory.d.ts +171 -0
  214. package/dist/typechain/factories/out/SignatureVerifier__factory.js +224 -0
  215. package/dist/typechain/factories/out/Storage.sol/LedgerStorage__factory.d.ts +527 -0
  216. package/dist/typechain/factories/out/Storage.sol/LedgerStorage__factory.js +695 -0
  217. package/dist/typechain/factories/out/Storage.sol/index.d.ts +1 -0
  218. package/dist/typechain/factories/out/Storage.sol/index.js +1 -0
  219. package/dist/typechain/factories/out/Trade.sol/TradeController__factory.d.ts +200 -0
  220. package/dist/typechain/factories/out/Trade.sol/TradeController__factory.js +262 -0
  221. package/dist/typechain/factories/out/Trade.sol/index.d.ts +1 -0
  222. package/dist/typechain/factories/out/Trade.sol/index.js +1 -0
  223. package/dist/typechain/factories/out/Transfer.sol/TransferController__factory.d.ts +100 -0
  224. package/dist/typechain/factories/out/Transfer.sol/TransferController__factory.js +141 -0
  225. package/dist/typechain/factories/out/Transfer.sol/index.d.ts +1 -0
  226. package/dist/typechain/factories/out/Transfer.sol/index.js +1 -0
  227. package/dist/typechain/factories/out/UniswapV2Adapter__factory.d.ts +162 -0
  228. package/dist/typechain/factories/out/UniswapV2Adapter__factory.js +215 -0
  229. package/dist/typechain/factories/out/UniswapV3Adapter__factory.d.ts +162 -0
  230. package/dist/typechain/factories/out/UniswapV3Adapter__factory.js +215 -0
  231. package/dist/typechain/factories/out/UniswapV3SwapRouter02Adapter__factory.d.ts +162 -0
  232. package/dist/typechain/factories/out/UniswapV3SwapRouter02Adapter__factory.js +215 -0
  233. package/dist/typechain/factories/out/UniswapV4Adapter__factory.d.ts +203 -0
  234. package/dist/typechain/factories/out/UniswapV4Adapter__factory.js +268 -0
  235. package/dist/typechain/factories/out/V0ToLotusMigrator__factory.d.ts +216 -0
  236. package/dist/typechain/factories/out/V0ToLotusMigrator__factory.js +284 -0
  237. package/dist/typechain/factories/out/Vault.sol/FundVault__factory.d.ts +258 -0
  238. package/dist/typechain/factories/out/Vault.sol/FundVault__factory.js +339 -0
  239. package/dist/typechain/factories/out/Vault.sol/index.d.ts +1 -0
  240. package/dist/typechain/factories/out/Vault.sol/index.js +1 -0
  241. package/dist/typechain/factories/out/Withdrawal.sol/WithdrawalController__factory.d.ts +285 -0
  242. package/dist/typechain/factories/out/Withdrawal.sol/WithdrawalController__factory.js +377 -0
  243. package/dist/typechain/factories/out/Withdrawal.sol/index.d.ts +1 -0
  244. package/dist/typechain/factories/out/Withdrawal.sol/index.js +1 -0
  245. package/dist/typechain/factories/out/index.d.ts +43 -0
  246. package/dist/typechain/factories/out/index.js +43 -0
  247. package/dist/typechain/include/IPancakeQuoterV2.d.ts +223 -0
  248. package/dist/typechain/include/IPancakeQuoterV2.js +1 -0
  249. package/dist/typechain/include/ISwapRouter02.d.ts +682 -0
  250. package/dist/typechain/include/ISwapRouter02.js +1 -0
  251. package/dist/typechain/include/index.d.ts +2 -0
  252. package/dist/typechain/include/index.js +1 -0
  253. package/dist/typechain/index.d.ts +119 -0
  254. package/dist/typechain/index.js +58 -0
  255. package/dist/typechain/out/Adapter.d.ts +29 -0
  256. package/dist/typechain/out/Adapter.js +1 -0
  257. package/dist/typechain/out/AerodromeV2Adapter.d.ts +106 -0
  258. package/dist/typechain/out/AerodromeV2Adapter.js +1 -0
  259. package/dist/typechain/out/AerodromeV3Adapter.d.ts +87 -0
  260. package/dist/typechain/out/AerodromeV3Adapter.js +1 -0
  261. package/dist/typechain/out/AssetManager.sol/LedgerAssetManager.d.ts +604 -0
  262. package/dist/typechain/out/AssetManager.sol/LedgerAssetManager.js +1 -0
  263. package/dist/typechain/out/AssetManager.sol/index.d.ts +1 -0
  264. package/dist/typechain/out/AssetManager.sol/index.js +1 -0
  265. package/dist/typechain/out/Bookkeeper.sol/LedgerBookkeeper.d.ts +548 -0
  266. package/dist/typechain/out/Bookkeeper.sol/LedgerBookkeeper.js +1 -0
  267. package/dist/typechain/out/Bookkeeper.sol/index.d.ts +1 -0
  268. package/dist/typechain/out/Bookkeeper.sol/index.js +1 -0
  269. package/dist/typechain/out/Checkpoint.sol/CheckpointController.d.ts +29 -0
  270. package/dist/typechain/out/Checkpoint.sol/CheckpointController.js +1 -0
  271. package/dist/typechain/out/Checkpoint.sol/index.d.ts +1 -0
  272. package/dist/typechain/out/Checkpoint.sol/index.js +1 -0
  273. package/dist/typechain/out/Closure.sol/ClosureController.d.ts +273 -0
  274. package/dist/typechain/out/Closure.sol/ClosureController.js +1 -0
  275. package/dist/typechain/out/Closure.sol/index.d.ts +1 -0
  276. package/dist/typechain/out/Closure.sol/index.js +1 -0
  277. package/dist/typechain/out/ContextBuilder.d.ts +403 -0
  278. package/dist/typechain/out/ContextBuilder.js +1 -0
  279. package/dist/typechain/out/Control.sol/Controllable.d.ts +97 -0
  280. package/dist/typechain/out/Control.sol/Controllable.js +1 -0
  281. package/dist/typechain/out/Control.sol/Controller.d.ts +25 -0
  282. package/dist/typechain/out/Control.sol/Controller.js +1 -0
  283. package/dist/typechain/out/Control.sol/index.d.ts +2 -0
  284. package/dist/typechain/out/Control.sol/index.js +1 -0
  285. package/dist/typechain/out/Controller.sol/ClosureDelegate.d.ts +61 -0
  286. package/dist/typechain/out/Controller.sol/ClosureDelegate.js +1 -0
  287. package/dist/typechain/out/Controller.sol/CreationDelegate.d.ts +61 -0
  288. package/dist/typechain/out/Controller.sol/CreationDelegate.js +1 -0
  289. package/dist/typechain/out/Controller.sol/DepositDelegate.d.ts +56 -0
  290. package/dist/typechain/out/Controller.sol/DepositDelegate.js +1 -0
  291. package/dist/typechain/out/Controller.sol/FundController.d.ts +464 -0
  292. package/dist/typechain/out/Controller.sol/FundController.js +1 -0
  293. package/dist/typechain/out/Controller.sol/HarvestDelegate.d.ts +163 -0
  294. package/dist/typechain/out/Controller.sol/HarvestDelegate.js +1 -0
  295. package/dist/typechain/out/Controller.sol/TradeDelegate.d.ts +67 -0
  296. package/dist/typechain/out/Controller.sol/TradeDelegate.js +1 -0
  297. package/dist/typechain/out/Controller.sol/TransferDelegate.d.ts +37 -0
  298. package/dist/typechain/out/Controller.sol/TransferDelegate.js +1 -0
  299. package/dist/typechain/out/Controller.sol/WithdrawalDelegate.d.ts +53 -0
  300. package/dist/typechain/out/Controller.sol/WithdrawalDelegate.js +1 -0
  301. package/dist/typechain/out/Controller.sol/index.d.ts +8 -0
  302. package/dist/typechain/out/Controller.sol/index.js +1 -0
  303. package/dist/typechain/out/Cooldown.sol/LedgerCooldown.d.ts +446 -0
  304. package/dist/typechain/out/Cooldown.sol/LedgerCooldown.js +1 -0
  305. package/dist/typechain/out/Cooldown.sol/index.d.ts +1 -0
  306. package/dist/typechain/out/Cooldown.sol/index.js +1 -0
  307. package/dist/typechain/out/Creation.sol/CreationController.d.ts +102 -0
  308. package/dist/typechain/out/Creation.sol/CreationController.js +1 -0
  309. package/dist/typechain/out/Creation.sol/index.d.ts +1 -0
  310. package/dist/typechain/out/Creation.sol/index.js +1 -0
  311. package/dist/typechain/out/Deposit.sol/DepositController.d.ts +68 -0
  312. package/dist/typechain/out/Deposit.sol/DepositController.js +1 -0
  313. package/dist/typechain/out/Deposit.sol/index.d.ts +1 -0
  314. package/dist/typechain/out/Deposit.sol/index.js +1 -0
  315. package/dist/typechain/out/Error.d.ts +20 -0
  316. package/dist/typechain/out/Error.js +1 -0
  317. package/dist/typechain/out/Harvest.sol/HarvestController.d.ts +241 -0
  318. package/dist/typechain/out/Harvest.sol/HarvestController.js +1 -0
  319. package/dist/typechain/out/Harvest.sol/index.d.ts +1 -0
  320. package/dist/typechain/out/Harvest.sol/index.js +1 -0
  321. package/dist/typechain/out/IAerodromeRouter.d.ts +80 -0
  322. package/dist/typechain/out/IAerodromeRouter.js +1 -0
  323. package/dist/typechain/out/IAerodromeSwapRouter.d.ts +96 -0
  324. package/dist/typechain/out/IAerodromeSwapRouter.js +1 -0
  325. package/dist/typechain/out/IUniswapV4.sol/IPermit2.d.ts +39 -0
  326. package/dist/typechain/out/IUniswapV4.sol/IPermit2.js +1 -0
  327. package/dist/typechain/out/IUniswapV4.sol/IUniversalRouter.d.ts +37 -0
  328. package/dist/typechain/out/IUniswapV4.sol/IUniversalRouter.js +1 -0
  329. package/dist/typechain/out/IUniswapV4.sol/index.d.ts +2 -0
  330. package/dist/typechain/out/IUniswapV4.sol/index.js +1 -0
  331. package/dist/typechain/out/IV0Fund.d.ts +69 -0
  332. package/dist/typechain/out/IV0Fund.js +1 -0
  333. package/dist/typechain/out/IV3SwapRouter.d.ts +52 -0
  334. package/dist/typechain/out/IV3SwapRouter.js +1 -0
  335. package/dist/typechain/out/Initializer.sol/LedgerInitializer.d.ts +379 -0
  336. package/dist/typechain/out/Initializer.sol/LedgerInitializer.js +1 -0
  337. package/dist/typechain/out/Initializer.sol/VaultInitializer.d.ts +129 -0
  338. package/dist/typechain/out/Initializer.sol/VaultInitializer.js +1 -0
  339. package/dist/typechain/out/Initializer.sol/index.d.ts +2 -0
  340. package/dist/typechain/out/Initializer.sol/index.js +1 -0
  341. package/dist/typechain/out/Ledger.sol/FundLedger.d.ts +926 -0
  342. package/dist/typechain/out/Ledger.sol/FundLedger.js +1 -0
  343. package/dist/typechain/out/Ledger.sol/index.d.ts +1 -0
  344. package/dist/typechain/out/Ledger.sol/index.js +1 -0
  345. package/dist/typechain/out/LotusP2P.d.ts +610 -0
  346. package/dist/typechain/out/LotusP2P.js +1 -0
  347. package/dist/typechain/out/MulticallStatic.d.ts +25 -0
  348. package/dist/typechain/out/MulticallStatic.js +1 -0
  349. package/dist/typechain/out/Operator.sol/VaultOperator.d.ts +197 -0
  350. package/dist/typechain/out/Operator.sol/VaultOperator.js +1 -0
  351. package/dist/typechain/out/Operator.sol/index.d.ts +1 -0
  352. package/dist/typechain/out/Operator.sol/index.js +1 -0
  353. package/dist/typechain/out/P2PAdapter.d.ts +100 -0
  354. package/dist/typechain/out/P2PAdapter.js +1 -0
  355. package/dist/typechain/out/Protocol.d.ts +815 -0
  356. package/dist/typechain/out/Protocol.js +1 -0
  357. package/dist/typechain/out/ProtocolMigrationExtension.d.ts +806 -0
  358. package/dist/typechain/out/ProtocolMigrationExtension.js +1 -0
  359. package/dist/typechain/out/ProtocolProvider.d.ts +25 -0
  360. package/dist/typechain/out/ProtocolProvider.js +1 -0
  361. package/dist/typechain/out/Registrar.sol/LedgerRegistrar.d.ts +866 -0
  362. package/dist/typechain/out/Registrar.sol/LedgerRegistrar.js +1 -0
  363. package/dist/typechain/out/Registrar.sol/index.d.ts +1 -0
  364. package/dist/typechain/out/Registrar.sol/index.js +1 -0
  365. package/dist/typechain/out/Settings.sol/SettingsController.d.ts +97 -0
  366. package/dist/typechain/out/Settings.sol/SettingsController.js +1 -0
  367. package/dist/typechain/out/Settings.sol/index.d.ts +1 -0
  368. package/dist/typechain/out/Settings.sol/index.js +1 -0
  369. package/dist/typechain/out/Shares.sol/ICheckpointController.d.ts +29 -0
  370. package/dist/typechain/out/Shares.sol/ICheckpointController.js +1 -0
  371. package/dist/typechain/out/Shares.sol/ITransferController.d.ts +37 -0
  372. package/dist/typechain/out/Shares.sol/ITransferController.js +1 -0
  373. package/dist/typechain/out/Shares.sol/LedgerShares.d.ts +494 -0
  374. package/dist/typechain/out/Shares.sol/LedgerShares.js +1 -0
  375. package/dist/typechain/out/Shares.sol/index.d.ts +3 -0
  376. package/dist/typechain/out/Shares.sol/index.js +1 -0
  377. package/dist/typechain/out/SignatureVerifier.d.ts +139 -0
  378. package/dist/typechain/out/SignatureVerifier.js +1 -0
  379. package/dist/typechain/out/Storage.sol/LedgerStorage.d.ts +281 -0
  380. package/dist/typechain/out/Storage.sol/LedgerStorage.js +1 -0
  381. package/dist/typechain/out/Storage.sol/index.d.ts +1 -0
  382. package/dist/typechain/out/Storage.sol/index.js +1 -0
  383. package/dist/typechain/out/Trade.sol/TradeController.d.ts +137 -0
  384. package/dist/typechain/out/Trade.sol/TradeController.js +1 -0
  385. package/dist/typechain/out/Trade.sol/index.d.ts +1 -0
  386. package/dist/typechain/out/Trade.sol/index.js +1 -0
  387. package/dist/typechain/out/Transfer.sol/TransferController.d.ts +49 -0
  388. package/dist/typechain/out/Transfer.sol/TransferController.js +1 -0
  389. package/dist/typechain/out/Transfer.sol/index.d.ts +1 -0
  390. package/dist/typechain/out/Transfer.sol/index.js +1 -0
  391. package/dist/typechain/out/UniswapV2Adapter.d.ts +87 -0
  392. package/dist/typechain/out/UniswapV2Adapter.js +1 -0
  393. package/dist/typechain/out/UniswapV3Adapter.d.ts +87 -0
  394. package/dist/typechain/out/UniswapV3Adapter.js +1 -0
  395. package/dist/typechain/out/UniswapV3SwapRouter02Adapter.d.ts +87 -0
  396. package/dist/typechain/out/UniswapV3SwapRouter02Adapter.js +1 -0
  397. package/dist/typechain/out/UniswapV4Adapter.d.ts +110 -0
  398. package/dist/typechain/out/UniswapV4Adapter.js +1 -0
  399. package/dist/typechain/out/V0ToLotusMigrator.d.ts +94 -0
  400. package/dist/typechain/out/V0ToLotusMigrator.js +1 -0
  401. package/dist/typechain/out/Vault.sol/FundVault.d.ts +197 -0
  402. package/dist/typechain/out/Vault.sol/FundVault.js +1 -0
  403. package/dist/typechain/out/Vault.sol/index.d.ts +1 -0
  404. package/dist/typechain/out/Vault.sol/index.js +1 -0
  405. package/dist/typechain/out/Withdrawal.sol/WithdrawalController.d.ts +152 -0
  406. package/dist/typechain/out/Withdrawal.sol/WithdrawalController.js +1 -0
  407. package/dist/typechain/out/Withdrawal.sol/index.d.ts +1 -0
  408. package/dist/typechain/out/Withdrawal.sol/index.js +1 -0
  409. package/dist/typechain/out/index.d.ts +65 -0
  410. package/dist/typechain/out/index.js +1 -0
  411. package/dist/types/Fund.d.ts +27 -0
  412. package/dist/types/Fund.js +1 -0
  413. package/package.json +67 -0
@@ -0,0 +1,703 @@
1
+ import { ContractFactory, ContractTransactionResponse } from "ethers";
2
+ import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
3
+ import type { NonPayableOverrides } from "../../../common";
4
+ import type { FundController, FundControllerInterface } from "../../../out/Controller.sol/FundController";
5
+ type FundControllerConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class FundController__factory extends ContractFactory {
7
+ constructor(...args: FundControllerConstructorParams);
8
+ getDeployTransaction(protocolAddress: AddressLike, ctrl: FundController.ControllerDelegatesStruct, overrides?: NonPayableOverrides & {
9
+ from?: string;
10
+ }): Promise<ContractDeployTransaction>;
11
+ deploy(protocolAddress: AddressLike, ctrl: FundController.ControllerDelegatesStruct, overrides?: NonPayableOverrides & {
12
+ from?: string;
13
+ }): Promise<FundController & {
14
+ deploymentTransaction(): ContractTransactionResponse;
15
+ }>;
16
+ connect(runner: ContractRunner | null): FundController__factory;
17
+ static readonly bytecode = "0x610180604052348015610010575f5ffd5b50604051612b41380380612b4183398101604081905261002f9161017c565b60a081015160c082015160808301516060840151604085015160208601518651886001600160a01b0381166100775760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805261008c81610129565b6001600160a01b031660a052506100a281610129565b6001600160a01b031660c052506100b881610129565b6001600160a01b031660e052506100ce81610129565b6001600160a01b031661010052506100e581610129565b6001600160a01b031661012052506100fc81610129565b6001600160a01b0316610140525061011381610129565b6001600160a01b0316610160525061025e915050565b5f6001600160a01b0382166101515760405163e6c4247b60e01b815260040160405180910390fd5b5090565b6001600160a01b0381168114610169575f5ffd5b50565b805161017781610155565b919050565b5f5f82840361010081121561018f575f5ffd5b835161019a81610155565b925060e0601f19820112156101ad575f5ffd5b5060405160e081016001600160401b03811182821017156101dc57634e487b7160e01b5f52604160045260245ffd5b6040526101eb6020850161016c565b81526101f96040850161016c565b602082015261020a6060850161016c565b604082015261021b6080850161016c565b606082015261022c60a0850161016c565b608082015261023d60c0850161016c565b60a082015261024e60e0850161016c565b60c0820152809150509250929050565b60805160a05160c05160e0516101005161012051610140516101605161283461030d5f395f61111b01525f8181610a64015261114401525f818161033d015261036c01525f8181610cdb01526110c901525f610cb201525f6110f201525f61031001525f8181610295015281816103bc015281816106090152818161090d01528181610aaf01528181610d2501528181610e4601528181610ecf01528181610f590152610fd901526128345ff3fe608060405234801561000f575f5ffd5b506004361061011c575f3560e01c80635f436da2116100a95780638ce744261161006e5780638ce7442614610288578063981da12f146102bf5780639cb7590c146102d2578063beabacc8146102e5578063df039c2b146102f8575f5ffd5b80635f436da21461022e578063660b1a521461024157806368813fc214610254578063695c179c1461026257806369fabd1e14610275575f5ffd5b80633e2e9b14116100ef5780633e2e9b14146101ac57806351d550d2146101bf57806354fd4d50146101e0578063566bf738146102085780635c4e58e51461021b575f5ffd5b80630dced77b146101205780630fa218d2146101355780633cbf871c146101485780633e2c51c414610199575b5f5ffd5b61013361012e366004611a2d565b61030b565b005b610133610143366004611a80565b610338565b61015b610156366004611ed4565b610361565b604080519687526020870195909552938501929092526001600160801b03908116606085015216608083015260a082015260c0015b60405180910390f35b6101336101a7366004612094565b61039b565b6101336101ba3660046120da565b6105e8565b6101d26101cd366004612122565b6108cb565b604051908152602001610190565b6040805180820182526006815265076302e312e360d41b60208201529051610190919061216b565b61013361021636600461217d565b6108ec565b6101336102293660046121b9565b610a5f565b61013361023c366004612094565b610a8e565b61013361024f366004611a80565b610cad565b610133610229366004612294565b610133610270366004612094565b610cd6565b61013361028336600461235e565b610d04565b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152602001610190565b6101336102cd366004612392565b6110c4565b6101336102e03660046123c8565b6110ed565b6101336102f33660046123ff565b611116565b610133610306366004612094565b61113f565b6103347f0000000000000000000000000000000000000000000000000000000000000000611164565b5050565b6103347f0000000000000000000000000000000000000000000000000000000000000000611164565b5f5f5f5f5f5f6103907f0000000000000000000000000000000000000000000000000000000000000000611164565b509295509295509295565b6040516384145e3960e01b81526001600160a01b03808416600483015283917f0000000000000000000000000000000000000000000000000000000000000000909116906384145e3990602401602060405180830381865afa158015610403573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610427919061243d565b610444576040516328bb3bf960e21b815260040160405180910390fd5b806001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610480573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a49190612458565b6001600160a01b0316336001600160a01b0316146104d4576040516282b42960e81b815260040160405180910390fd5b6040516301322e7160e01b81526001600160a01b0383811660048301528416906301322e71906024015f604051808303815f87803b158015610514575f5ffd5b505af1158015610526573d5f5f3e3d5ffd5b50505050826001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610566573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061058a9190612458565b6040516301322e7160e01b81526001600160a01b03848116600483015291909116906301322e71906024015b5f604051808303815f87803b1580156105cd575f5ffd5b505af11580156105df573d5f5f3e3d5ffd5b50505050505050565b6040516384145e3960e01b81526001600160a01b03808516600483015284917f0000000000000000000000000000000000000000000000000000000000000000909116906384145e3990602401602060405180830381865afa158015610650573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610674919061243d565b610691576040516328bb3bf960e21b815260040160405180910390fd5b806001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106cd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f19190612458565b6001600160a01b0316336001600160a01b031614610721576040516282b42960e81b815260040160405180910390fd5b5f846001600160a01b0316630475a9e26040518163ffffffff1660e01b8152600401602060405180830381865afa15801561075e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107829190612473565b90505f856001600160a01b031663b7d17b236040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e59190612473565b9050818561ffff8083169082161115610824576040516341185d6b60e11b815261ffff9283166004820152911660248201526044015b60405180910390fd5b50508061ffff168461ffff1611158185909161086157604051630e5954af60e01b815261ffff92831660048201529116602482015260440161081b565b50506040516379e91a8760e11b815261ffff8087166004830152851660248201526001600160a01b0387169063f3d2350e906044015f604051808303815f87803b1580156108ad575f5ffd5b505af11580156108bf573d5f5f3e3d5ffd5b50505050505050505050565b5f806108d73384611184565b90506108e2816116be565b60c0015192915050565b6040516384145e3960e01b81526001600160a01b03808416600483015283917f0000000000000000000000000000000000000000000000000000000000000000909116906384145e3990602401602060405180830381865afa158015610954573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610978919061243d565b610995576040516328bb3bf960e21b815260040160405180910390fd5b806001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f59190612458565b6001600160a01b0316336001600160a01b031614610a25576040516282b42960e81b815260040160405180910390fd5b60405163ce408be360e01b81526bffffffffffffffffffffffff831660048201526001600160a01b0384169063ce408be3906024016105b6565b610a887f0000000000000000000000000000000000000000000000000000000000000000611164565b50505050565b6040516384145e3960e01b81526001600160a01b03808416600483015283917f0000000000000000000000000000000000000000000000000000000000000000909116906384145e3990602401602060405180830381865afa158015610af6573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b1a919061243d565b610b37576040516328bb3bf960e21b815260040160405180910390fd5b806001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b73573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b979190612458565b6001600160a01b0316336001600160a01b031614610bc7576040516282b42960e81b815260040160405180910390fd5b604051630365adb360e11b81526001600160a01b0383811660048301528416906306cb5b66906024015f604051808303815f87803b158015610c07575f5ffd5b505af1158015610c19573d5f5f3e3d5ffd5b50505050826001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c59573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c7d9190612458565b604051630365adb360e11b81526001600160a01b03848116600483015291909116906306cb5b66906024016105b6565b6103347f0000000000000000000000000000000000000000000000000000000000000000611164565b610cff7f0000000000000000000000000000000000000000000000000000000000000000611164565b505050565b6040516384145e3960e01b81526001600160a01b03808416600483015283917f0000000000000000000000000000000000000000000000000000000000000000909116906384145e3990602401602060405180830381865afa158015610d6c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d90919061243d565b610dad576040516328bb3bf960e21b815260040160405180910390fd5b806001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610de9573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e0d9190612458565b6001600160a01b0316336001600160a01b031614610e3d576040516282b42960e81b815260040160405180910390fd5b8163ffffffff167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e15be2ec6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ea0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ec4919061248e565b11158015610f5757507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166354d6df3d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f29573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4d919061248e565b8263ffffffff1611155b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e15be2ec6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb3573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fd7919061248e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166354d6df3d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611033573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611057919061248e565b8490919261108f576040516346572a0160e01b81526004810193909352602483019190915263ffffffff16604482015260640161081b565b505060405163fe6967ed60e01b815263ffffffff841660048201526001600160a01b038516915063fe6967ed906024016105b6565b6103347f0000000000000000000000000000000000000000000000000000000000000000611164565b6103347f0000000000000000000000000000000000000000000000000000000000000000611164565b610a887f0000000000000000000000000000000000000000000000000000000000000000611164565b610cff7f00000000000000000000000000000000000000000000000000000000000000005b6060365f5f375f5f365f855af43d5f5f3e808015611180573d5ff35b3d5ffd5b61118c61196a565b60408051600880825261012082019092525f91816020015b60608152602001906001900390816111a4579050506040805160048152602481019091526020810180516001600160e01b031663027e5f8f60e61b17905281519192509082905f906111f8576111f86124a5565b602090810291909101810191909152604080516001600160a01b03861660248083019190915282518083039091018152604490910190915290810180516001600160e01b0316636b50985960e11b17905281518290600190811061125e5761125e6124a5565b602090810291909101810191909152604080516001600160a01b03861660248083019190915282518083039091018152604490910190915290810180516001600160e01b031663900c043560e01b1790528151829060029081106112c4576112c46124a5565b60209081029190910181019190915260408051600481526024810190915290810180516001600160e01b03166318160ddd60e01b179052815182906003908110611310576113106124a5565b6020908102919091018101919091526040805160048082526024820190925291820180516001600160e01b03166373d9f6c760e01b1790528251839190811061135b5761135b6124a5565b602090810291909101810191909152604080516001600160a01b03861660248083019190915282518083039091018152604490910190915290810180516001600160e01b031663363b414760e21b1790528151829060059081106113c1576113c16124a5565b60209081029190910181019190915260408051600481526024810190915290810180516001600160e01b03166328172be960e21b17905281518290600690811061140d5761140d6124a5565b60209081029190910181019190915260408051600481526024810190915290810180516001600160e01b03166327523cf560e11b179052815182906007908110611459576114596124a5565b60200260200101819052505f846001600160a01b031663ac9650d8836040518263ffffffff1660e01b815260040161149191906124b9565b5f60405180830381865afa1580156114ab573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526114d2919081019061251c565b6001600160a01b03808716855285166040850152805190915081905f906114fb576114fb6124a5565b6020026020010151806020019051810190611516919061260b565b6001600160801b03166020840152805181906001908110611539576115396124a5565b60200260200101518060200190518101906115549190612626565b608084018190526060840152805181906002908110611575576115756124a5565b6020026020010151806020019051810190611590919061248e565b60a08401528051819060039081106115aa576115aa6124a5565b60200260200101518060200190518101906115c5919061248e565b6101008401528051819060049081106115e0576115e06124a5565b60200260200101518060200190518101906115fb919061248e565b610180840152805181906005908110611616576116166124a5565b60200260200101518060200190518101906116319190612685565b61016084015280518190600690811061164c5761164c6124a5565b6020026020010151806020019051810190611667919061260b565b6001600160801b031661012084015280518190600790811061168b5761168b6124a5565b60200260200101518060200190518101906116a6919061260b565b6001600160801b031661014084015250909392505050565b6117138160a001518260600151602001516001600160681b031683606001515f01516116ea9190612764565b6001600160801b03168361012001516001600160801b0316846101800151856101600151611729565b6001600160681b031660e083015260c090910152565b5f5f865f0361173c57505f905080611917565b82515f0361174e57508590505f611917565b8691505f5b8351811015611915575f84828151811061176f5761176f6124a5565b602002602001015190505f836001600160681b03168961178f9190612783565b90505f856117a5670de0b6b3a764000084612796565b6117af91906127ad565b90505f6127106117cc8386602001516001600160801b0316611921565b85602001516001600160801b03166117e491906127cc565b6117ee908b612796565b6117f891906127ad565b90505f8185602001516001600160801b031661181491906127cc565b85519091506001600160801b031661182c828a612796565b61183691906127ad565b9750875f03611849575050505050611915565b84516001600160801b03168310801561186157505f8b115b15611907575f670de0b6b3a76400006001670de0b6b3a7640000885f01516001600160801b03168c6118939190612796565b61189d9190612783565b6118a791906127cc565b6118b191906127ad565b90508481116118c55750505050505061190d565b5f6118e16118dc6118d688856127cc565b8f611921565b611933565b90506118ed818a6127df565b98506119026001600160681b0382168e6127cc565b9c5050505b50505050505b600101611753565b505b9550959350505050565b818181111561192d5750805b92915050565b5f6001600160681b03821115611966576040516306dfcc6560e41b8152606860048201526024810183905260440161081b565b5090565b604051806101a001604052805f6001600160a01b031681526020015f81526020015f6001600160a01b031681526020016119bc604080516060810182525f808252602082018190529181019190915290565b8152604080516060810182525f80825260208281018290529282015291019081526020015f81526020015f81526020015f6001600160681b031681526020015f81526020015f6001600160801b031681526020015f6001600160801b03168152602001606081526020015f81525090565b5f60208284031215611a3d575f5ffd5b81356001600160401b03811115611a52575f5ffd5b820160c08185031215611a63575f5ffd5b9392505050565b5f60a08284031215611a7a575f5ffd5b50919050565b5f60208284031215611a90575f5ffd5b81356001600160401b03811115611aa5575f5ffd5b611ab184828501611a6a565b949350505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715611aef57611aef611ab9565b60405290565b60405160a081016001600160401b0381118282101715611aef57611aef611ab9565b604051606081016001600160401b0381118282101715611aef57611aef611ab9565b6040516102e081016001600160401b0381118282101715611aef57611aef611ab9565b604051601f8201601f191681016001600160401b0381118282101715611b8457611b84611ab9565b604052919050565b6001600160a01b0381168114611ba0575f5ffd5b50565b8015158114611ba0575f5ffd5b8035611bbb81611ba3565b919050565b5f6001600160401b03821115611bd857611bd8611ab9565b5060051b60200190565b8035611bbb81611b8c565b5f6001600160401b03821115611c0557611c05611ab9565b50601f01601f191660200190565b5f82601f830112611c22575f5ffd5b8135611c35611c3082611bed565b611b5c565b818152846020838601011115611c49575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611c74575f5ffd5b8135611c82611c3082611bc0565b8082825260208201915060208360051b860101925085831115611ca3575f5ffd5b602085015b83811015611d355780356001600160401b03811115611cc5575f5ffd5b86016040818903601f19011215611cda575f5ffd5b611ce2611acd565b6020820135611cf081611b8c565b815260408201356001600160401b03811115611d0a575f5ffd5b611d198a602083860101611c13565b6020830152508085525050602083019250602081019050611ca8565b5095945050505050565b5f60a08284031215611d4f575f5ffd5b611d57611af5565b90508135611d6481611b8c565b81526020820135611d7481611b8c565b602082015260408201356001600160401b0381168114611d92575f5ffd5b6040820152611da360608301611bb0565b606082015260808201356001600160401b03811115611dc0575f5ffd5b611dcc84828501611c65565b60808301525092915050565b5f82601f830112611de7575f5ffd5b8135611df5611c3082611bc0565b8082825260208201915060208360051b860101925085831115611e16575f5ffd5b602085015b83811015611d35578035611e2e81611b8c565b835260209283019201611e1b565b6001600160801b0381168114611ba0575f5ffd5b8035611bbb81611e3c565b5f60408284031215611e6b575f5ffd5b611e73611acd565b90508135611e8081611e3c565b81526020820135611e9081611e3c565b602082015292915050565b5f60608284031215611eab575f5ffd5b611eb3611b17565b82358152602080840135908201526040928301359281019290925250919050565b5f5f60408385031215611ee5575f5ffd5b82356001600160401b03811115611efa575f5ffd5b83016103408186031215611f0c575f5ffd5b611f14611b39565b81356001600160401b03811115611f29575f5ffd5b611f3587828501611d3f565b825250611f4460208301611be2565b6020820152611f5560408301611bb0565b6040820152611f6660608301611be2565b60608201526080828101359082015260a0808301359082015260c0808301359082015260e08083013590820152610100808301359082015261012080830135908201526101408083013590820152610160808301359082015261018080830135908201526101a080830135908201526101c080830135908201526101e08201356001600160401b03811115611ff9575f5ffd5b61200587828501611dd8565b6101e0830152506120196102008301611e50565b61020082015261202c6102208301611e50565b61022082015261203f6102408301611e50565b610240820152612053866102608401611e5b565b610260820152612067866102a08401611e9b565b6102808201526103008201356102a0820152610320909101356102c0820152946020939093013593505050565b5f5f604083850312156120a5575f5ffd5b82356120b081611b8c565b915060208301356120c081611b8c565b809150509250929050565b61ffff81168114611ba0575f5ffd5b5f5f5f606084860312156120ec575f5ffd5b83356120f781611b8c565b92506020840135612107816120cb565b91506040840135612117816120cb565b809150509250925092565b5f60208284031215612132575f5ffd5b8135611a6381611b8c565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f611a63602083018461213d565b5f5f6040838503121561218e575f5ffd5b823561219981611b8c565b915060208301356bffffffffffffffffffffffff811681146120c0575f5ffd5b5f5f5f606084860312156121cb575f5ffd5b83356121d681611b8c565b925060208401356121e681611b8c565b915060408401356001600160401b03811115612200575f5ffd5b61220c86828701611c13565b9150509250925092565b5f82601f830112612225575f5ffd5b8135612233611c3082611bc0565b8082825260208201915060208360051b860101925085831115612254575f5ffd5b602085015b83811015611d355780356001600160401b03811115612276575f5ffd5b612285886020838a0101611c13565b84525060209283019201612259565b5f5f5f606084860312156122a6575f5ffd5b83356122b181611b8c565b925060208401356001600160401b038111156122cb575f5ffd5b8401601f810186136122db575f5ffd5b80356122e9611c3082611bc0565b8082825260208201915060208360051b85010192508883111561230a575f5ffd5b6020840193505b8284101561233557833561232481611b8c565b825260209384019390910190612311565b945050505060408401356001600160401b03811115612352575f5ffd5b61220c86828701612216565b5f5f6040838503121561236f575f5ffd5b823561237a81611b8c565b9150602083013563ffffffff811681146120c0575f5ffd5b5f602082840312156123a2575f5ffd5b81356001600160401b038111156123b7575f5ffd5b820160608185031215611a63575f5ffd5b5f602082840312156123d8575f5ffd5b81356001600160401b038111156123ed575f5ffd5b82016101208185031215611a63575f5ffd5b5f5f5f60608486031215612411575f5ffd5b833561241c81611b8c565b9250602084013561242c81611b8c565b929592945050506040919091013590565b5f6020828403121561244d575f5ffd5b8151611a6381611ba3565b5f60208284031215612468575f5ffd5b8151611a6381611b8c565b5f60208284031215612483575f5ffd5b8151611a63816120cb565b5f6020828403121561249e575f5ffd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b8281101561251057603f198786030184526124fb85835161213d565b945060209384019391909101906001016124df565b50929695505050505050565b5f6020828403121561252c575f5ffd5b81516001600160401b03811115612541575f5ffd5b8201601f81018413612551575f5ffd5b805161255f611c3082611bc0565b8082825260208201915060208360051b850101925086831115612580575f5ffd5b602084015b838110156126005780516001600160401b038111156125a2575f5ffd5b8501603f810189136125b2575f5ffd5b60208101516125c3611c3082611bed565b8181526040838301018b10156125d7575f5ffd5b8160408401602083015e5f60208383010152808652505050602083019250602081019050612585565b509695505050505050565b5f6020828403121561261b575f5ffd5b8151611a6381611e3c565b5f6060828403128015612637575f5ffd5b50612640611b17565b825161264b81611e3c565b815260208301516001600160681b0381168114612666575f5ffd5b60208201526040830151612679816120cb565b60408201529392505050565b5f60208284031215612695575f5ffd5b81516001600160401b038111156126aa575f5ffd5b8201601f810184136126ba575f5ffd5b80516126c8611c3082611bc0565b8082825260208201915060208360061b8501019250868311156126e9575f5ffd5b6020840193505b828410156127465760408488031215612707575f5ffd5b61270f611acd565b845161271a81611e3c565b8152602085015161272a81611e3c565b80602083015250808352506020820191506040840193506126f0565b9695505050505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160801b03818116838216019081111561192d5761192d612750565b8082018082111561192d5761192d612750565b808202811582820484141761192d5761192d612750565b5f826127c757634e487b7160e01b5f52601260045260245ffd5b500490565b8181038181111561192d5761192d612750565b6001600160681b03818116838216019081111561192d5761192d61275056fea2646970667358221220d805fd589dc870709cee906190243934956b412b4e40a479f37cb2831508c7ec64736f6c634300081e0033";
18
+ static readonly abi: readonly [{
19
+ readonly type: "constructor";
20
+ readonly inputs: readonly [{
21
+ readonly name: "protocolAddress";
22
+ readonly type: "address";
23
+ readonly internalType: "address payable";
24
+ }, {
25
+ readonly name: "ctrl";
26
+ readonly type: "tuple";
27
+ readonly internalType: "struct FundController.ControllerDelegates";
28
+ readonly components: readonly [{
29
+ readonly name: "deposit";
30
+ readonly type: "address";
31
+ readonly internalType: "address";
32
+ }, {
33
+ readonly name: "creation";
34
+ readonly type: "address";
35
+ readonly internalType: "address";
36
+ }, {
37
+ readonly name: "withdrawal";
38
+ readonly type: "address";
39
+ readonly internalType: "address";
40
+ }, {
41
+ readonly name: "closure";
42
+ readonly type: "address";
43
+ readonly internalType: "address";
44
+ }, {
45
+ readonly name: "harvest";
46
+ readonly type: "address";
47
+ readonly internalType: "address";
48
+ }, {
49
+ readonly name: "transfer";
50
+ readonly type: "address";
51
+ readonly internalType: "address";
52
+ }, {
53
+ readonly name: "trade";
54
+ readonly type: "address";
55
+ readonly internalType: "address";
56
+ }];
57
+ }];
58
+ readonly stateMutability: "nonpayable";
59
+ }, {
60
+ readonly type: "function";
61
+ readonly name: "closeFund";
62
+ readonly inputs: readonly [{
63
+ readonly name: "";
64
+ readonly type: "tuple";
65
+ readonly internalType: "struct Closing";
66
+ readonly components: readonly [{
67
+ readonly name: "ledger";
68
+ readonly type: "address";
69
+ readonly internalType: "contract FundLedger";
70
+ }, {
71
+ readonly name: "coin";
72
+ readonly type: "address";
73
+ readonly internalType: "contract IERC20";
74
+ }, {
75
+ readonly name: "extCalls";
76
+ readonly type: "tuple[]";
77
+ readonly internalType: "struct ExternalCall[]";
78
+ readonly components: readonly [{
79
+ readonly name: "adapter";
80
+ readonly type: "address";
81
+ readonly internalType: "address";
82
+ }, {
83
+ readonly name: "callData";
84
+ readonly type: "bytes";
85
+ readonly internalType: "bytes";
86
+ }];
87
+ }];
88
+ }];
89
+ readonly outputs: readonly [];
90
+ readonly stateMutability: "nonpayable";
91
+ }, {
92
+ readonly type: "function";
93
+ readonly name: "collectRelinquishedCoins";
94
+ readonly inputs: readonly [{
95
+ readonly name: "";
96
+ readonly type: "address";
97
+ readonly internalType: "contract FundLedger";
98
+ }, {
99
+ readonly name: "";
100
+ readonly type: "address";
101
+ readonly internalType: "contract IERC20";
102
+ }];
103
+ readonly outputs: readonly [];
104
+ readonly stateMutability: "nonpayable";
105
+ }, {
106
+ readonly type: "function";
107
+ readonly name: "computeHarvestableFees";
108
+ readonly inputs: readonly [{
109
+ readonly name: "";
110
+ readonly type: "tuple";
111
+ readonly internalType: "struct HarvestContext";
112
+ readonly components: readonly [{
113
+ readonly name: "harvest";
114
+ readonly type: "tuple";
115
+ readonly internalType: "struct Harvest";
116
+ readonly components: readonly [{
117
+ readonly name: "ledger";
118
+ readonly type: "address";
119
+ readonly internalType: "contract FundLedger";
120
+ }, {
121
+ readonly name: "coin";
122
+ readonly type: "address";
123
+ readonly internalType: "contract IERC20";
124
+ }, {
125
+ readonly name: "fraction";
126
+ readonly type: "uint64";
127
+ readonly internalType: "uint64";
128
+ }, {
129
+ readonly name: "isManagementFeeEligible";
130
+ readonly type: "bool";
131
+ readonly internalType: "bool";
132
+ }, {
133
+ readonly name: "extCalls";
134
+ readonly type: "tuple[]";
135
+ readonly internalType: "struct ExternalCall[]";
136
+ readonly components: readonly [{
137
+ readonly name: "adapter";
138
+ readonly type: "address";
139
+ readonly internalType: "address";
140
+ }, {
141
+ readonly name: "callData";
142
+ readonly type: "bytes";
143
+ readonly internalType: "bytes";
144
+ }];
145
+ }];
146
+ }, {
147
+ readonly name: "vault";
148
+ readonly type: "address";
149
+ readonly internalType: "contract FundVault";
150
+ }, {
151
+ readonly name: "isFinal";
152
+ readonly type: "bool";
153
+ readonly internalType: "bool";
154
+ }, {
155
+ readonly name: "referrer";
156
+ readonly type: "address";
157
+ readonly internalType: "address";
158
+ }, {
159
+ readonly name: "coinSlot";
160
+ readonly type: "uint256";
161
+ readonly internalType: "uint256";
162
+ }, {
163
+ readonly name: "latestManagementFeeTimestamp";
164
+ readonly type: "uint256";
165
+ readonly internalType: "uint256";
166
+ }, {
167
+ readonly name: "normalizedTvl";
168
+ readonly type: "uint256";
169
+ readonly internalType: "uint256";
170
+ }, {
171
+ readonly name: "normalizer";
172
+ readonly type: "uint256";
173
+ readonly internalType: "uint256";
174
+ }, {
175
+ readonly name: "proceeds";
176
+ readonly type: "uint256";
177
+ readonly internalType: "uint256";
178
+ }, {
179
+ readonly name: "totalSupply";
180
+ readonly type: "uint256";
181
+ readonly internalType: "uint256";
182
+ }, {
183
+ readonly name: "managerBalance";
184
+ readonly type: "uint256";
185
+ readonly internalType: "uint256";
186
+ }, {
187
+ readonly name: "ledgerBalance";
188
+ readonly type: "uint256";
189
+ readonly internalType: "uint256";
190
+ }, {
191
+ readonly name: "totalVirtualPrincipal";
192
+ readonly type: "uint256";
193
+ readonly internalType: "uint256";
194
+ }, {
195
+ readonly name: "managerProfitFeeBps";
196
+ readonly type: "uint256";
197
+ readonly internalType: "uint256";
198
+ }, {
199
+ readonly name: "profitFeeBps";
200
+ readonly type: "uint256";
201
+ readonly internalType: "uint256";
202
+ }, {
203
+ readonly name: "assets";
204
+ readonly type: "address[]";
205
+ readonly internalType: "contract IERC20[]";
206
+ }, {
207
+ readonly name: "managerFeeBasis";
208
+ readonly type: "uint128";
209
+ readonly internalType: "uint128";
210
+ }, {
211
+ readonly name: "watermark";
212
+ readonly type: "uint128";
213
+ readonly internalType: "uint128";
214
+ }, {
215
+ readonly name: "epochBufferDelta";
216
+ readonly type: "uint128";
217
+ readonly internalType: "uint128";
218
+ }, {
219
+ readonly name: "upcomingEpoch";
220
+ readonly type: "tuple";
221
+ readonly internalType: "struct Epoch";
222
+ readonly components: readonly [{
223
+ readonly name: "watermark";
224
+ readonly type: "uint128";
225
+ readonly internalType: "uint128";
226
+ }, {
227
+ readonly name: "priceBefore";
228
+ readonly type: "uint128";
229
+ readonly internalType: "uint128";
230
+ }];
231
+ }, {
232
+ readonly name: "fees";
233
+ readonly type: "tuple";
234
+ readonly internalType: "struct HarvestFees";
235
+ readonly components: readonly [{
236
+ readonly name: "managerProfitFee";
237
+ readonly type: "uint256";
238
+ readonly internalType: "uint256";
239
+ }, {
240
+ readonly name: "referrerProfitFee";
241
+ readonly type: "uint256";
242
+ readonly internalType: "uint256";
243
+ }, {
244
+ readonly name: "managementFee";
245
+ readonly type: "uint256";
246
+ readonly internalType: "uint256";
247
+ }];
248
+ }, {
249
+ readonly name: "referrerManagementFeeBps";
250
+ readonly type: "uint256";
251
+ readonly internalType: "uint256";
252
+ }, {
253
+ readonly name: "managerManagementFeeBps";
254
+ readonly type: "uint256";
255
+ readonly internalType: "uint256";
256
+ }];
257
+ }, {
258
+ readonly name: "";
259
+ readonly type: "uint256";
260
+ readonly internalType: "uint256";
261
+ }];
262
+ readonly outputs: readonly [{
263
+ readonly name: "";
264
+ readonly type: "uint256";
265
+ readonly internalType: "uint256";
266
+ }, {
267
+ readonly name: "";
268
+ readonly type: "uint256";
269
+ readonly internalType: "uint256";
270
+ }, {
271
+ readonly name: "";
272
+ readonly type: "uint256";
273
+ readonly internalType: "uint256";
274
+ }, {
275
+ readonly name: "";
276
+ readonly type: "uint128";
277
+ readonly internalType: "uint128";
278
+ }, {
279
+ readonly name: "";
280
+ readonly type: "uint128";
281
+ readonly internalType: "uint128";
282
+ }, {
283
+ readonly name: "";
284
+ readonly type: "uint256";
285
+ readonly internalType: "uint256";
286
+ }];
287
+ readonly stateMutability: "nonpayable";
288
+ }, {
289
+ readonly type: "function";
290
+ readonly name: "createFund";
291
+ readonly inputs: readonly [{
292
+ readonly name: "";
293
+ readonly type: "tuple";
294
+ readonly internalType: "struct FundCreation";
295
+ readonly components: readonly [{
296
+ readonly name: "referrer";
297
+ readonly type: "address";
298
+ readonly internalType: "address";
299
+ }, {
300
+ readonly name: "name";
301
+ readonly type: "string";
302
+ readonly internalType: "string";
303
+ }, {
304
+ readonly name: "symbol";
305
+ readonly type: "string";
306
+ readonly internalType: "string";
307
+ }, {
308
+ readonly name: "coin";
309
+ readonly type: "address";
310
+ readonly internalType: "contract IERC20";
311
+ }, {
312
+ readonly name: "initialDepositAmount";
313
+ readonly type: "uint256";
314
+ readonly internalType: "uint256";
315
+ }, {
316
+ readonly name: "minDepositUsd";
317
+ readonly type: "uint96";
318
+ readonly internalType: "uint96";
319
+ }, {
320
+ readonly name: "cooldownTime";
321
+ readonly type: "uint32";
322
+ readonly internalType: "uint32";
323
+ }, {
324
+ readonly name: "managerProfitFeeBps";
325
+ readonly type: "uint16";
326
+ readonly internalType: "uint16";
327
+ }, {
328
+ readonly name: "managerManagementFeeBps";
329
+ readonly type: "uint16";
330
+ readonly internalType: "uint16";
331
+ }];
332
+ }];
333
+ readonly outputs: readonly [];
334
+ readonly stateMutability: "nonpayable";
335
+ }, {
336
+ readonly type: "function";
337
+ readonly name: "deposit";
338
+ readonly inputs: readonly [{
339
+ readonly name: "";
340
+ readonly type: "tuple";
341
+ readonly internalType: "struct Deposit";
342
+ readonly components: readonly [{
343
+ readonly name: "ledger";
344
+ readonly type: "address";
345
+ readonly internalType: "contract FundLedger";
346
+ }, {
347
+ readonly name: "coin";
348
+ readonly type: "address";
349
+ readonly internalType: "contract IERC20";
350
+ }, {
351
+ readonly name: "amount";
352
+ readonly type: "uint256";
353
+ readonly internalType: "uint256";
354
+ }, {
355
+ readonly name: "extCalls";
356
+ readonly type: "tuple[]";
357
+ readonly internalType: "struct ExternalCall[]";
358
+ readonly components: readonly [{
359
+ readonly name: "adapter";
360
+ readonly type: "address";
361
+ readonly internalType: "address";
362
+ }, {
363
+ readonly name: "callData";
364
+ readonly type: "bytes";
365
+ readonly internalType: "bytes";
366
+ }];
367
+ }, {
368
+ readonly name: "sharesOutMin";
369
+ readonly type: "uint256";
370
+ readonly internalType: "uint256";
371
+ }, {
372
+ readonly name: "referrerFeeBps";
373
+ readonly type: "uint16";
374
+ readonly internalType: "uint16";
375
+ }];
376
+ }];
377
+ readonly outputs: readonly [];
378
+ readonly stateMutability: "nonpayable";
379
+ }, {
380
+ readonly type: "function";
381
+ readonly name: "executeTrade";
382
+ readonly inputs: readonly [{
383
+ readonly name: "";
384
+ readonly type: "address";
385
+ readonly internalType: "contract FundLedger";
386
+ }, {
387
+ readonly name: "";
388
+ readonly type: "address";
389
+ readonly internalType: "address";
390
+ }, {
391
+ readonly name: "";
392
+ readonly type: "bytes";
393
+ readonly internalType: "bytes";
394
+ }];
395
+ readonly outputs: readonly [];
396
+ readonly stateMutability: "nonpayable";
397
+ }, {
398
+ readonly type: "function";
399
+ readonly name: "executeTrades";
400
+ readonly inputs: readonly [{
401
+ readonly name: "";
402
+ readonly type: "address";
403
+ readonly internalType: "contract FundLedger";
404
+ }, {
405
+ readonly name: "";
406
+ readonly type: "address[]";
407
+ readonly internalType: "address[]";
408
+ }, {
409
+ readonly name: "";
410
+ readonly type: "bytes[]";
411
+ readonly internalType: "bytes[]";
412
+ }];
413
+ readonly outputs: readonly [];
414
+ readonly stateMutability: "nonpayable";
415
+ }, {
416
+ readonly type: "function";
417
+ readonly name: "getPendingBalance";
418
+ readonly inputs: readonly [{
419
+ readonly name: "account";
420
+ readonly type: "address";
421
+ readonly internalType: "address";
422
+ }];
423
+ readonly outputs: readonly [{
424
+ readonly name: "";
425
+ readonly type: "uint256";
426
+ readonly internalType: "uint256";
427
+ }];
428
+ readonly stateMutability: "view";
429
+ }, {
430
+ readonly type: "function";
431
+ readonly name: "harvest";
432
+ readonly inputs: readonly [{
433
+ readonly name: "";
434
+ readonly type: "tuple";
435
+ readonly internalType: "struct Harvest";
436
+ readonly components: readonly [{
437
+ readonly name: "ledger";
438
+ readonly type: "address";
439
+ readonly internalType: "contract FundLedger";
440
+ }, {
441
+ readonly name: "coin";
442
+ readonly type: "address";
443
+ readonly internalType: "contract IERC20";
444
+ }, {
445
+ readonly name: "fraction";
446
+ readonly type: "uint64";
447
+ readonly internalType: "uint64";
448
+ }, {
449
+ readonly name: "isManagementFeeEligible";
450
+ readonly type: "bool";
451
+ readonly internalType: "bool";
452
+ }, {
453
+ readonly name: "extCalls";
454
+ readonly type: "tuple[]";
455
+ readonly internalType: "struct ExternalCall[]";
456
+ readonly components: readonly [{
457
+ readonly name: "adapter";
458
+ readonly type: "address";
459
+ readonly internalType: "address";
460
+ }, {
461
+ readonly name: "callData";
462
+ readonly type: "bytes";
463
+ readonly internalType: "bytes";
464
+ }];
465
+ }];
466
+ }];
467
+ readonly outputs: readonly [];
468
+ readonly stateMutability: "nonpayable";
469
+ }, {
470
+ readonly type: "function";
471
+ readonly name: "protocol";
472
+ readonly inputs: readonly [];
473
+ readonly outputs: readonly [{
474
+ readonly name: "";
475
+ readonly type: "address";
476
+ readonly internalType: "contract Protocol";
477
+ }];
478
+ readonly stateMutability: "view";
479
+ }, {
480
+ readonly type: "function";
481
+ readonly name: "pruneAsset";
482
+ readonly inputs: readonly [{
483
+ readonly name: "";
484
+ readonly type: "address";
485
+ readonly internalType: "contract FundLedger";
486
+ }, {
487
+ readonly name: "";
488
+ readonly type: "address";
489
+ readonly internalType: "contract IERC20";
490
+ }];
491
+ readonly outputs: readonly [];
492
+ readonly stateMutability: "nonpayable";
493
+ }, {
494
+ readonly type: "function";
495
+ readonly name: "transfer";
496
+ readonly inputs: readonly [{
497
+ readonly name: "";
498
+ readonly type: "address";
499
+ readonly internalType: "address";
500
+ }, {
501
+ readonly name: "";
502
+ readonly type: "address";
503
+ readonly internalType: "address";
504
+ }, {
505
+ readonly name: "";
506
+ readonly type: "uint256";
507
+ readonly internalType: "uint256";
508
+ }];
509
+ readonly outputs: readonly [];
510
+ readonly stateMutability: "nonpayable";
511
+ }, {
512
+ readonly type: "function";
513
+ readonly name: "updateController";
514
+ readonly inputs: readonly [{
515
+ readonly name: "ledger";
516
+ readonly type: "address";
517
+ readonly internalType: "contract FundLedger";
518
+ }, {
519
+ readonly name: "newController";
520
+ readonly type: "address";
521
+ readonly internalType: "address";
522
+ }];
523
+ readonly outputs: readonly [];
524
+ readonly stateMutability: "nonpayable";
525
+ }, {
526
+ readonly type: "function";
527
+ readonly name: "updateCooldownTime";
528
+ readonly inputs: readonly [{
529
+ readonly name: "ledger";
530
+ readonly type: "address";
531
+ readonly internalType: "contract FundLedger";
532
+ }, {
533
+ readonly name: "newCooldownTime";
534
+ readonly type: "uint32";
535
+ readonly internalType: "uint32";
536
+ }];
537
+ readonly outputs: readonly [];
538
+ readonly stateMutability: "nonpayable";
539
+ }, {
540
+ readonly type: "function";
541
+ readonly name: "updateFees";
542
+ readonly inputs: readonly [{
543
+ readonly name: "ledger";
544
+ readonly type: "address";
545
+ readonly internalType: "contract FundLedger";
546
+ }, {
547
+ readonly name: "newManagerProfitFeeBps";
548
+ readonly type: "uint16";
549
+ readonly internalType: "uint16";
550
+ }, {
551
+ readonly name: "newManagerManagementFeeBps";
552
+ readonly type: "uint16";
553
+ readonly internalType: "uint16";
554
+ }];
555
+ readonly outputs: readonly [];
556
+ readonly stateMutability: "nonpayable";
557
+ }, {
558
+ readonly type: "function";
559
+ readonly name: "updateManagerAddress";
560
+ readonly inputs: readonly [{
561
+ readonly name: "ledger";
562
+ readonly type: "address";
563
+ readonly internalType: "contract FundLedger";
564
+ }, {
565
+ readonly name: "newManagerAddress";
566
+ readonly type: "address";
567
+ readonly internalType: "address";
568
+ }];
569
+ readonly outputs: readonly [];
570
+ readonly stateMutability: "nonpayable";
571
+ }, {
572
+ readonly type: "function";
573
+ readonly name: "updateMinDepositValue";
574
+ readonly inputs: readonly [{
575
+ readonly name: "ledger";
576
+ readonly type: "address";
577
+ readonly internalType: "contract FundLedger";
578
+ }, {
579
+ readonly name: "newMinDepositValue";
580
+ readonly type: "uint96";
581
+ readonly internalType: "uint96";
582
+ }];
583
+ readonly outputs: readonly [];
584
+ readonly stateMutability: "nonpayable";
585
+ }, {
586
+ readonly type: "function";
587
+ readonly name: "version";
588
+ readonly inputs: readonly [];
589
+ readonly outputs: readonly [{
590
+ readonly name: "";
591
+ readonly type: "string";
592
+ readonly internalType: "string";
593
+ }];
594
+ readonly stateMutability: "pure";
595
+ }, {
596
+ readonly type: "function";
597
+ readonly name: "withdraw";
598
+ readonly inputs: readonly [{
599
+ readonly name: "";
600
+ readonly type: "tuple";
601
+ readonly internalType: "struct Withdrawal";
602
+ readonly components: readonly [{
603
+ readonly name: "ledger";
604
+ readonly type: "address";
605
+ readonly internalType: "contract FundLedger";
606
+ }, {
607
+ readonly name: "coin";
608
+ readonly type: "address";
609
+ readonly internalType: "contract IERC20";
610
+ }, {
611
+ readonly name: "shares";
612
+ readonly type: "uint256";
613
+ readonly internalType: "uint256";
614
+ }, {
615
+ readonly name: "extCalls";
616
+ readonly type: "tuple[]";
617
+ readonly internalType: "struct ExternalCall[]";
618
+ readonly components: readonly [{
619
+ readonly name: "adapter";
620
+ readonly type: "address";
621
+ readonly internalType: "address";
622
+ }, {
623
+ readonly name: "callData";
624
+ readonly type: "bytes";
625
+ readonly internalType: "bytes";
626
+ }];
627
+ }, {
628
+ readonly name: "referrerFeeBps";
629
+ readonly type: "uint16";
630
+ readonly internalType: "uint16";
631
+ }];
632
+ }];
633
+ readonly outputs: readonly [];
634
+ readonly stateMutability: "nonpayable";
635
+ }, {
636
+ readonly type: "error";
637
+ readonly name: "InvalidAddress";
638
+ readonly inputs: readonly [];
639
+ }, {
640
+ readonly type: "error";
641
+ readonly name: "InvalidCooldownTime";
642
+ readonly inputs: readonly [{
643
+ readonly name: "min";
644
+ readonly type: "uint256";
645
+ readonly internalType: "uint256";
646
+ }, {
647
+ readonly name: "max";
648
+ readonly type: "uint256";
649
+ readonly internalType: "uint256";
650
+ }, {
651
+ readonly name: "input";
652
+ readonly type: "uint256";
653
+ readonly internalType: "uint256";
654
+ }];
655
+ }, {
656
+ readonly type: "error";
657
+ readonly name: "InvalidLedger";
658
+ readonly inputs: readonly [];
659
+ }, {
660
+ readonly type: "error";
661
+ readonly name: "InvalidManagerManagementFeeUpdate";
662
+ readonly inputs: readonly [{
663
+ readonly name: "maxFee";
664
+ readonly type: "uint16";
665
+ readonly internalType: "uint16";
666
+ }, {
667
+ readonly name: "newFee";
668
+ readonly type: "uint16";
669
+ readonly internalType: "uint16";
670
+ }];
671
+ }, {
672
+ readonly type: "error";
673
+ readonly name: "InvalidManagerProfitFeeUpdate";
674
+ readonly inputs: readonly [{
675
+ readonly name: "maxFee";
676
+ readonly type: "uint16";
677
+ readonly internalType: "uint16";
678
+ }, {
679
+ readonly name: "newFee";
680
+ readonly type: "uint16";
681
+ readonly internalType: "uint16";
682
+ }];
683
+ }, {
684
+ readonly type: "error";
685
+ readonly name: "SafeCastOverflowedUintDowncast";
686
+ readonly inputs: readonly [{
687
+ readonly name: "bits";
688
+ readonly type: "uint8";
689
+ readonly internalType: "uint8";
690
+ }, {
691
+ readonly name: "value";
692
+ readonly type: "uint256";
693
+ readonly internalType: "uint256";
694
+ }];
695
+ }, {
696
+ readonly type: "error";
697
+ readonly name: "Unauthorized";
698
+ readonly inputs: readonly [];
699
+ }];
700
+ static createInterface(): FundControllerInterface;
701
+ static connect(address: string, runner?: ContractRunner | null): FundController;
702
+ }
703
+ export {};