@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,464 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export type ExternalCallStruct = {
4
+ adapter: AddressLike;
5
+ callData: BytesLike;
6
+ };
7
+ export type ExternalCallStructOutput = [adapter: string, callData: string] & {
8
+ adapter: string;
9
+ callData: string;
10
+ };
11
+ export type ClosingStruct = {
12
+ ledger: AddressLike;
13
+ coin: AddressLike;
14
+ extCalls: ExternalCallStruct[];
15
+ };
16
+ export type ClosingStructOutput = [
17
+ ledger: string,
18
+ coin: string,
19
+ extCalls: ExternalCallStructOutput[]
20
+ ] & {
21
+ ledger: string;
22
+ coin: string;
23
+ extCalls: ExternalCallStructOutput[];
24
+ };
25
+ export type HarvestStruct = {
26
+ ledger: AddressLike;
27
+ coin: AddressLike;
28
+ fraction: BigNumberish;
29
+ isManagementFeeEligible: boolean;
30
+ extCalls: ExternalCallStruct[];
31
+ };
32
+ export type HarvestStructOutput = [
33
+ ledger: string,
34
+ coin: string,
35
+ fraction: bigint,
36
+ isManagementFeeEligible: boolean,
37
+ extCalls: ExternalCallStructOutput[]
38
+ ] & {
39
+ ledger: string;
40
+ coin: string;
41
+ fraction: bigint;
42
+ isManagementFeeEligible: boolean;
43
+ extCalls: ExternalCallStructOutput[];
44
+ };
45
+ export type EpochStruct = {
46
+ watermark: BigNumberish;
47
+ priceBefore: BigNumberish;
48
+ };
49
+ export type EpochStructOutput = [watermark: bigint, priceBefore: bigint] & {
50
+ watermark: bigint;
51
+ priceBefore: bigint;
52
+ };
53
+ export type HarvestFeesStruct = {
54
+ managerProfitFee: BigNumberish;
55
+ referrerProfitFee: BigNumberish;
56
+ managementFee: BigNumberish;
57
+ };
58
+ export type HarvestFeesStructOutput = [
59
+ managerProfitFee: bigint,
60
+ referrerProfitFee: bigint,
61
+ managementFee: bigint
62
+ ] & {
63
+ managerProfitFee: bigint;
64
+ referrerProfitFee: bigint;
65
+ managementFee: bigint;
66
+ };
67
+ export type HarvestContextStruct = {
68
+ harvest: HarvestStruct;
69
+ vault: AddressLike;
70
+ isFinal: boolean;
71
+ referrer: AddressLike;
72
+ coinSlot: BigNumberish;
73
+ latestManagementFeeTimestamp: BigNumberish;
74
+ normalizedTvl: BigNumberish;
75
+ normalizer: BigNumberish;
76
+ proceeds: BigNumberish;
77
+ totalSupply: BigNumberish;
78
+ managerBalance: BigNumberish;
79
+ ledgerBalance: BigNumberish;
80
+ totalVirtualPrincipal: BigNumberish;
81
+ managerProfitFeeBps: BigNumberish;
82
+ profitFeeBps: BigNumberish;
83
+ assets: AddressLike[];
84
+ managerFeeBasis: BigNumberish;
85
+ watermark: BigNumberish;
86
+ epochBufferDelta: BigNumberish;
87
+ upcomingEpoch: EpochStruct;
88
+ fees: HarvestFeesStruct;
89
+ referrerManagementFeeBps: BigNumberish;
90
+ managerManagementFeeBps: BigNumberish;
91
+ };
92
+ export type HarvestContextStructOutput = [
93
+ harvest: HarvestStructOutput,
94
+ vault: string,
95
+ isFinal: boolean,
96
+ referrer: string,
97
+ coinSlot: bigint,
98
+ latestManagementFeeTimestamp: bigint,
99
+ normalizedTvl: bigint,
100
+ normalizer: bigint,
101
+ proceeds: bigint,
102
+ totalSupply: bigint,
103
+ managerBalance: bigint,
104
+ ledgerBalance: bigint,
105
+ totalVirtualPrincipal: bigint,
106
+ managerProfitFeeBps: bigint,
107
+ profitFeeBps: bigint,
108
+ assets: string[],
109
+ managerFeeBasis: bigint,
110
+ watermark: bigint,
111
+ epochBufferDelta: bigint,
112
+ upcomingEpoch: EpochStructOutput,
113
+ fees: HarvestFeesStructOutput,
114
+ referrerManagementFeeBps: bigint,
115
+ managerManagementFeeBps: bigint
116
+ ] & {
117
+ harvest: HarvestStructOutput;
118
+ vault: string;
119
+ isFinal: boolean;
120
+ referrer: string;
121
+ coinSlot: bigint;
122
+ latestManagementFeeTimestamp: bigint;
123
+ normalizedTvl: bigint;
124
+ normalizer: bigint;
125
+ proceeds: bigint;
126
+ totalSupply: bigint;
127
+ managerBalance: bigint;
128
+ ledgerBalance: bigint;
129
+ totalVirtualPrincipal: bigint;
130
+ managerProfitFeeBps: bigint;
131
+ profitFeeBps: bigint;
132
+ assets: string[];
133
+ managerFeeBasis: bigint;
134
+ watermark: bigint;
135
+ epochBufferDelta: bigint;
136
+ upcomingEpoch: EpochStructOutput;
137
+ fees: HarvestFeesStructOutput;
138
+ referrerManagementFeeBps: bigint;
139
+ managerManagementFeeBps: bigint;
140
+ };
141
+ export type FundCreationStruct = {
142
+ referrer: AddressLike;
143
+ name: string;
144
+ symbol: string;
145
+ coin: AddressLike;
146
+ initialDepositAmount: BigNumberish;
147
+ minDepositUsd: BigNumberish;
148
+ cooldownTime: BigNumberish;
149
+ managerProfitFeeBps: BigNumberish;
150
+ managerManagementFeeBps: BigNumberish;
151
+ };
152
+ export type FundCreationStructOutput = [
153
+ referrer: string,
154
+ name: string,
155
+ symbol: string,
156
+ coin: string,
157
+ initialDepositAmount: bigint,
158
+ minDepositUsd: bigint,
159
+ cooldownTime: bigint,
160
+ managerProfitFeeBps: bigint,
161
+ managerManagementFeeBps: bigint
162
+ ] & {
163
+ referrer: string;
164
+ name: string;
165
+ symbol: string;
166
+ coin: string;
167
+ initialDepositAmount: bigint;
168
+ minDepositUsd: bigint;
169
+ cooldownTime: bigint;
170
+ managerProfitFeeBps: bigint;
171
+ managerManagementFeeBps: bigint;
172
+ };
173
+ export type DepositStruct = {
174
+ ledger: AddressLike;
175
+ coin: AddressLike;
176
+ amount: BigNumberish;
177
+ extCalls: ExternalCallStruct[];
178
+ sharesOutMin: BigNumberish;
179
+ referrerFeeBps: BigNumberish;
180
+ };
181
+ export type DepositStructOutput = [
182
+ ledger: string,
183
+ coin: string,
184
+ amount: bigint,
185
+ extCalls: ExternalCallStructOutput[],
186
+ sharesOutMin: bigint,
187
+ referrerFeeBps: bigint
188
+ ] & {
189
+ ledger: string;
190
+ coin: string;
191
+ amount: bigint;
192
+ extCalls: ExternalCallStructOutput[];
193
+ sharesOutMin: bigint;
194
+ referrerFeeBps: bigint;
195
+ };
196
+ export type WithdrawalStruct = {
197
+ ledger: AddressLike;
198
+ coin: AddressLike;
199
+ shares: BigNumberish;
200
+ extCalls: ExternalCallStruct[];
201
+ referrerFeeBps: BigNumberish;
202
+ };
203
+ export type WithdrawalStructOutput = [
204
+ ledger: string,
205
+ coin: string,
206
+ shares: bigint,
207
+ extCalls: ExternalCallStructOutput[],
208
+ referrerFeeBps: bigint
209
+ ] & {
210
+ ledger: string;
211
+ coin: string;
212
+ shares: bigint;
213
+ extCalls: ExternalCallStructOutput[];
214
+ referrerFeeBps: bigint;
215
+ };
216
+ export declare namespace FundController {
217
+ type ControllerDelegatesStruct = {
218
+ deposit: AddressLike;
219
+ creation: AddressLike;
220
+ withdrawal: AddressLike;
221
+ closure: AddressLike;
222
+ harvest: AddressLike;
223
+ transfer: AddressLike;
224
+ trade: AddressLike;
225
+ };
226
+ type ControllerDelegatesStructOutput = [
227
+ deposit: string,
228
+ creation: string,
229
+ withdrawal: string,
230
+ closure: string,
231
+ harvest: string,
232
+ transfer: string,
233
+ trade: string
234
+ ] & {
235
+ deposit: string;
236
+ creation: string;
237
+ withdrawal: string;
238
+ closure: string;
239
+ harvest: string;
240
+ transfer: string;
241
+ trade: string;
242
+ };
243
+ }
244
+ export interface FundControllerInterface extends Interface {
245
+ getFunction(nameOrSignature: "closeFund" | "collectRelinquishedCoins" | "computeHarvestableFees" | "createFund" | "deposit" | "executeTrade" | "executeTrades" | "getPendingBalance" | "harvest" | "protocol" | "pruneAsset" | "transfer" | "updateController" | "updateCooldownTime" | "updateFees" | "updateManagerAddress" | "updateMinDepositValue" | "version" | "withdraw"): FunctionFragment;
246
+ encodeFunctionData(functionFragment: "closeFund", values: [ClosingStruct]): string;
247
+ encodeFunctionData(functionFragment: "collectRelinquishedCoins", values: [AddressLike, AddressLike]): string;
248
+ encodeFunctionData(functionFragment: "computeHarvestableFees", values: [HarvestContextStruct, BigNumberish]): string;
249
+ encodeFunctionData(functionFragment: "createFund", values: [FundCreationStruct]): string;
250
+ encodeFunctionData(functionFragment: "deposit", values: [DepositStruct]): string;
251
+ encodeFunctionData(functionFragment: "executeTrade", values: [AddressLike, AddressLike, BytesLike]): string;
252
+ encodeFunctionData(functionFragment: "executeTrades", values: [AddressLike, AddressLike[], BytesLike[]]): string;
253
+ encodeFunctionData(functionFragment: "getPendingBalance", values: [AddressLike]): string;
254
+ encodeFunctionData(functionFragment: "harvest", values: [HarvestStruct]): string;
255
+ encodeFunctionData(functionFragment: "protocol", values?: undefined): string;
256
+ encodeFunctionData(functionFragment: "pruneAsset", values: [AddressLike, AddressLike]): string;
257
+ encodeFunctionData(functionFragment: "transfer", values: [AddressLike, AddressLike, BigNumberish]): string;
258
+ encodeFunctionData(functionFragment: "updateController", values: [AddressLike, AddressLike]): string;
259
+ encodeFunctionData(functionFragment: "updateCooldownTime", values: [AddressLike, BigNumberish]): string;
260
+ encodeFunctionData(functionFragment: "updateFees", values: [AddressLike, BigNumberish, BigNumberish]): string;
261
+ encodeFunctionData(functionFragment: "updateManagerAddress", values: [AddressLike, AddressLike]): string;
262
+ encodeFunctionData(functionFragment: "updateMinDepositValue", values: [AddressLike, BigNumberish]): string;
263
+ encodeFunctionData(functionFragment: "version", values?: undefined): string;
264
+ encodeFunctionData(functionFragment: "withdraw", values: [WithdrawalStruct]): string;
265
+ decodeFunctionResult(functionFragment: "closeFund", data: BytesLike): Result;
266
+ decodeFunctionResult(functionFragment: "collectRelinquishedCoins", data: BytesLike): Result;
267
+ decodeFunctionResult(functionFragment: "computeHarvestableFees", data: BytesLike): Result;
268
+ decodeFunctionResult(functionFragment: "createFund", data: BytesLike): Result;
269
+ decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
270
+ decodeFunctionResult(functionFragment: "executeTrade", data: BytesLike): Result;
271
+ decodeFunctionResult(functionFragment: "executeTrades", data: BytesLike): Result;
272
+ decodeFunctionResult(functionFragment: "getPendingBalance", data: BytesLike): Result;
273
+ decodeFunctionResult(functionFragment: "harvest", data: BytesLike): Result;
274
+ decodeFunctionResult(functionFragment: "protocol", data: BytesLike): Result;
275
+ decodeFunctionResult(functionFragment: "pruneAsset", data: BytesLike): Result;
276
+ decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
277
+ decodeFunctionResult(functionFragment: "updateController", data: BytesLike): Result;
278
+ decodeFunctionResult(functionFragment: "updateCooldownTime", data: BytesLike): Result;
279
+ decodeFunctionResult(functionFragment: "updateFees", data: BytesLike): Result;
280
+ decodeFunctionResult(functionFragment: "updateManagerAddress", data: BytesLike): Result;
281
+ decodeFunctionResult(functionFragment: "updateMinDepositValue", data: BytesLike): Result;
282
+ decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
283
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
284
+ }
285
+ export interface FundController extends BaseContract {
286
+ connect(runner?: ContractRunner | null): FundController;
287
+ waitForDeployment(): Promise<this>;
288
+ interface: FundControllerInterface;
289
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
290
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
291
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
292
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
293
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
294
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
295
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
296
+ listeners(eventName?: string): Promise<Array<Listener>>;
297
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
298
+ closeFund: TypedContractMethod<[arg0: ClosingStruct], [void], "nonpayable">;
299
+ collectRelinquishedCoins: TypedContractMethod<[
300
+ arg0: AddressLike,
301
+ arg1: AddressLike
302
+ ], [
303
+ void
304
+ ], "nonpayable">;
305
+ computeHarvestableFees: TypedContractMethod<[
306
+ arg0: HarvestContextStruct,
307
+ arg1: BigNumberish
308
+ ], [
309
+ [bigint, bigint, bigint, bigint, bigint, bigint]
310
+ ], "nonpayable">;
311
+ createFund: TypedContractMethod<[
312
+ arg0: FundCreationStruct
313
+ ], [
314
+ void
315
+ ], "nonpayable">;
316
+ deposit: TypedContractMethod<[arg0: DepositStruct], [void], "nonpayable">;
317
+ executeTrade: TypedContractMethod<[
318
+ arg0: AddressLike,
319
+ arg1: AddressLike,
320
+ arg2: BytesLike
321
+ ], [
322
+ void
323
+ ], "nonpayable">;
324
+ executeTrades: TypedContractMethod<[
325
+ arg0: AddressLike,
326
+ arg1: AddressLike[],
327
+ arg2: BytesLike[]
328
+ ], [
329
+ void
330
+ ], "nonpayable">;
331
+ getPendingBalance: TypedContractMethod<[
332
+ account: AddressLike
333
+ ], [
334
+ bigint
335
+ ], "view">;
336
+ harvest: TypedContractMethod<[arg0: HarvestStruct], [void], "nonpayable">;
337
+ protocol: TypedContractMethod<[], [string], "view">;
338
+ pruneAsset: TypedContractMethod<[
339
+ arg0: AddressLike,
340
+ arg1: AddressLike
341
+ ], [
342
+ void
343
+ ], "nonpayable">;
344
+ transfer: TypedContractMethod<[
345
+ arg0: AddressLike,
346
+ arg1: AddressLike,
347
+ arg2: BigNumberish
348
+ ], [
349
+ void
350
+ ], "nonpayable">;
351
+ updateController: TypedContractMethod<[
352
+ ledger: AddressLike,
353
+ newController: AddressLike
354
+ ], [
355
+ void
356
+ ], "nonpayable">;
357
+ updateCooldownTime: TypedContractMethod<[
358
+ ledger: AddressLike,
359
+ newCooldownTime: BigNumberish
360
+ ], [
361
+ void
362
+ ], "nonpayable">;
363
+ updateFees: TypedContractMethod<[
364
+ ledger: AddressLike,
365
+ newManagerProfitFeeBps: BigNumberish,
366
+ newManagerManagementFeeBps: BigNumberish
367
+ ], [
368
+ void
369
+ ], "nonpayable">;
370
+ updateManagerAddress: TypedContractMethod<[
371
+ ledger: AddressLike,
372
+ newManagerAddress: AddressLike
373
+ ], [
374
+ void
375
+ ], "nonpayable">;
376
+ updateMinDepositValue: TypedContractMethod<[
377
+ ledger: AddressLike,
378
+ newMinDepositValue: BigNumberish
379
+ ], [
380
+ void
381
+ ], "nonpayable">;
382
+ version: TypedContractMethod<[], [string], "view">;
383
+ withdraw: TypedContractMethod<[arg0: WithdrawalStruct], [void], "nonpayable">;
384
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
385
+ getFunction(nameOrSignature: "closeFund"): TypedContractMethod<[arg0: ClosingStruct], [void], "nonpayable">;
386
+ getFunction(nameOrSignature: "collectRelinquishedCoins"): TypedContractMethod<[
387
+ arg0: AddressLike,
388
+ arg1: AddressLike
389
+ ], [
390
+ void
391
+ ], "nonpayable">;
392
+ getFunction(nameOrSignature: "computeHarvestableFees"): TypedContractMethod<[
393
+ arg0: HarvestContextStruct,
394
+ arg1: BigNumberish
395
+ ], [
396
+ [bigint, bigint, bigint, bigint, bigint, bigint]
397
+ ], "nonpayable">;
398
+ getFunction(nameOrSignature: "createFund"): TypedContractMethod<[arg0: FundCreationStruct], [void], "nonpayable">;
399
+ getFunction(nameOrSignature: "deposit"): TypedContractMethod<[arg0: DepositStruct], [void], "nonpayable">;
400
+ getFunction(nameOrSignature: "executeTrade"): TypedContractMethod<[
401
+ arg0: AddressLike,
402
+ arg1: AddressLike,
403
+ arg2: BytesLike
404
+ ], [
405
+ void
406
+ ], "nonpayable">;
407
+ getFunction(nameOrSignature: "executeTrades"): TypedContractMethod<[
408
+ arg0: AddressLike,
409
+ arg1: AddressLike[],
410
+ arg2: BytesLike[]
411
+ ], [
412
+ void
413
+ ], "nonpayable">;
414
+ getFunction(nameOrSignature: "getPendingBalance"): TypedContractMethod<[account: AddressLike], [bigint], "view">;
415
+ getFunction(nameOrSignature: "harvest"): TypedContractMethod<[arg0: HarvestStruct], [void], "nonpayable">;
416
+ getFunction(nameOrSignature: "protocol"): TypedContractMethod<[], [string], "view">;
417
+ getFunction(nameOrSignature: "pruneAsset"): TypedContractMethod<[
418
+ arg0: AddressLike,
419
+ arg1: AddressLike
420
+ ], [
421
+ void
422
+ ], "nonpayable">;
423
+ getFunction(nameOrSignature: "transfer"): TypedContractMethod<[
424
+ arg0: AddressLike,
425
+ arg1: AddressLike,
426
+ arg2: BigNumberish
427
+ ], [
428
+ void
429
+ ], "nonpayable">;
430
+ getFunction(nameOrSignature: "updateController"): TypedContractMethod<[
431
+ ledger: AddressLike,
432
+ newController: AddressLike
433
+ ], [
434
+ void
435
+ ], "nonpayable">;
436
+ getFunction(nameOrSignature: "updateCooldownTime"): TypedContractMethod<[
437
+ ledger: AddressLike,
438
+ newCooldownTime: BigNumberish
439
+ ], [
440
+ void
441
+ ], "nonpayable">;
442
+ getFunction(nameOrSignature: "updateFees"): TypedContractMethod<[
443
+ ledger: AddressLike,
444
+ newManagerProfitFeeBps: BigNumberish,
445
+ newManagerManagementFeeBps: BigNumberish
446
+ ], [
447
+ void
448
+ ], "nonpayable">;
449
+ getFunction(nameOrSignature: "updateManagerAddress"): TypedContractMethod<[
450
+ ledger: AddressLike,
451
+ newManagerAddress: AddressLike
452
+ ], [
453
+ void
454
+ ], "nonpayable">;
455
+ getFunction(nameOrSignature: "updateMinDepositValue"): TypedContractMethod<[
456
+ ledger: AddressLike,
457
+ newMinDepositValue: BigNumberish
458
+ ], [
459
+ void
460
+ ], "nonpayable">;
461
+ getFunction(nameOrSignature: "version"): TypedContractMethod<[], [string], "view">;
462
+ getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[arg0: WithdrawalStruct], [void], "nonpayable">;
463
+ filters: {};
464
+ }
@@ -0,0 +1,163 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export type ExternalCallStruct = {
4
+ adapter: AddressLike;
5
+ callData: BytesLike;
6
+ };
7
+ export type ExternalCallStructOutput = [adapter: string, callData: string] & {
8
+ adapter: string;
9
+ callData: string;
10
+ };
11
+ export type HarvestStruct = {
12
+ ledger: AddressLike;
13
+ coin: AddressLike;
14
+ fraction: BigNumberish;
15
+ isManagementFeeEligible: boolean;
16
+ extCalls: ExternalCallStruct[];
17
+ };
18
+ export type HarvestStructOutput = [
19
+ ledger: string,
20
+ coin: string,
21
+ fraction: bigint,
22
+ isManagementFeeEligible: boolean,
23
+ extCalls: ExternalCallStructOutput[]
24
+ ] & {
25
+ ledger: string;
26
+ coin: string;
27
+ fraction: bigint;
28
+ isManagementFeeEligible: boolean;
29
+ extCalls: ExternalCallStructOutput[];
30
+ };
31
+ export type EpochStruct = {
32
+ watermark: BigNumberish;
33
+ priceBefore: BigNumberish;
34
+ };
35
+ export type EpochStructOutput = [watermark: bigint, priceBefore: bigint] & {
36
+ watermark: bigint;
37
+ priceBefore: bigint;
38
+ };
39
+ export type HarvestFeesStruct = {
40
+ managerProfitFee: BigNumberish;
41
+ referrerProfitFee: BigNumberish;
42
+ managementFee: BigNumberish;
43
+ };
44
+ export type HarvestFeesStructOutput = [
45
+ managerProfitFee: bigint,
46
+ referrerProfitFee: bigint,
47
+ managementFee: bigint
48
+ ] & {
49
+ managerProfitFee: bigint;
50
+ referrerProfitFee: bigint;
51
+ managementFee: bigint;
52
+ };
53
+ export type HarvestContextStruct = {
54
+ harvest: HarvestStruct;
55
+ vault: AddressLike;
56
+ isFinal: boolean;
57
+ referrer: AddressLike;
58
+ coinSlot: BigNumberish;
59
+ latestManagementFeeTimestamp: BigNumberish;
60
+ normalizedTvl: BigNumberish;
61
+ normalizer: BigNumberish;
62
+ proceeds: BigNumberish;
63
+ totalSupply: BigNumberish;
64
+ managerBalance: BigNumberish;
65
+ ledgerBalance: BigNumberish;
66
+ totalVirtualPrincipal: BigNumberish;
67
+ managerProfitFeeBps: BigNumberish;
68
+ profitFeeBps: BigNumberish;
69
+ assets: AddressLike[];
70
+ managerFeeBasis: BigNumberish;
71
+ watermark: BigNumberish;
72
+ epochBufferDelta: BigNumberish;
73
+ upcomingEpoch: EpochStruct;
74
+ fees: HarvestFeesStruct;
75
+ referrerManagementFeeBps: BigNumberish;
76
+ managerManagementFeeBps: BigNumberish;
77
+ };
78
+ export type HarvestContextStructOutput = [
79
+ harvest: HarvestStructOutput,
80
+ vault: string,
81
+ isFinal: boolean,
82
+ referrer: string,
83
+ coinSlot: bigint,
84
+ latestManagementFeeTimestamp: bigint,
85
+ normalizedTvl: bigint,
86
+ normalizer: bigint,
87
+ proceeds: bigint,
88
+ totalSupply: bigint,
89
+ managerBalance: bigint,
90
+ ledgerBalance: bigint,
91
+ totalVirtualPrincipal: bigint,
92
+ managerProfitFeeBps: bigint,
93
+ profitFeeBps: bigint,
94
+ assets: string[],
95
+ managerFeeBasis: bigint,
96
+ watermark: bigint,
97
+ epochBufferDelta: bigint,
98
+ upcomingEpoch: EpochStructOutput,
99
+ fees: HarvestFeesStructOutput,
100
+ referrerManagementFeeBps: bigint,
101
+ managerManagementFeeBps: bigint
102
+ ] & {
103
+ harvest: HarvestStructOutput;
104
+ vault: string;
105
+ isFinal: boolean;
106
+ referrer: string;
107
+ coinSlot: bigint;
108
+ latestManagementFeeTimestamp: bigint;
109
+ normalizedTvl: bigint;
110
+ normalizer: bigint;
111
+ proceeds: bigint;
112
+ totalSupply: bigint;
113
+ managerBalance: bigint;
114
+ ledgerBalance: bigint;
115
+ totalVirtualPrincipal: bigint;
116
+ managerProfitFeeBps: bigint;
117
+ profitFeeBps: bigint;
118
+ assets: string[];
119
+ managerFeeBasis: bigint;
120
+ watermark: bigint;
121
+ epochBufferDelta: bigint;
122
+ upcomingEpoch: EpochStructOutput;
123
+ fees: HarvestFeesStructOutput;
124
+ referrerManagementFeeBps: bigint;
125
+ managerManagementFeeBps: bigint;
126
+ };
127
+ export interface HarvestDelegateInterface extends Interface {
128
+ getFunction(nameOrSignature: "computeHarvestableFees" | "harvest"): FunctionFragment;
129
+ encodeFunctionData(functionFragment: "computeHarvestableFees", values: [HarvestContextStruct, BigNumberish]): string;
130
+ encodeFunctionData(functionFragment: "harvest", values: [HarvestStruct]): string;
131
+ decodeFunctionResult(functionFragment: "computeHarvestableFees", data: BytesLike): Result;
132
+ decodeFunctionResult(functionFragment: "harvest", data: BytesLike): Result;
133
+ }
134
+ export interface HarvestDelegate extends BaseContract {
135
+ connect(runner?: ContractRunner | null): HarvestDelegate;
136
+ waitForDeployment(): Promise<this>;
137
+ interface: HarvestDelegateInterface;
138
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
139
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
140
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
141
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
142
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
143
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
144
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
145
+ listeners(eventName?: string): Promise<Array<Listener>>;
146
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
147
+ computeHarvestableFees: TypedContractMethod<[
148
+ arg0: HarvestContextStruct,
149
+ arg1: BigNumberish
150
+ ], [
151
+ [bigint, bigint, bigint, bigint, bigint, bigint]
152
+ ], "nonpayable">;
153
+ harvest: TypedContractMethod<[arg0: HarvestStruct], [void], "nonpayable">;
154
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
155
+ getFunction(nameOrSignature: "computeHarvestableFees"): TypedContractMethod<[
156
+ arg0: HarvestContextStruct,
157
+ arg1: BigNumberish
158
+ ], [
159
+ [bigint, bigint, bigint, bigint, bigint, bigint]
160
+ ], "nonpayable">;
161
+ getFunction(nameOrSignature: "harvest"): TypedContractMethod<[arg0: HarvestStruct], [void], "nonpayable">;
162
+ filters: {};
163
+ }