@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,273 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, 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 interface ClosureControllerInterface extends Interface {
142
+ getFunction(nameOrSignature: "closeFund" | "collectRelinquishedCoins" | "computeHarvestableFees" | "getPendingBalance" | "harvest" | "protocol"): FunctionFragment;
143
+ getEvent(nameOrSignatureOrTopic: "Harvested"): EventFragment;
144
+ encodeFunctionData(functionFragment: "closeFund", values: [ClosingStruct]): string;
145
+ encodeFunctionData(functionFragment: "collectRelinquishedCoins", values: [AddressLike, AddressLike]): string;
146
+ encodeFunctionData(functionFragment: "computeHarvestableFees", values: [HarvestContextStruct, BigNumberish]): string;
147
+ encodeFunctionData(functionFragment: "getPendingBalance", values: [AddressLike]): string;
148
+ encodeFunctionData(functionFragment: "harvest", values: [HarvestStruct]): string;
149
+ encodeFunctionData(functionFragment: "protocol", values?: undefined): string;
150
+ decodeFunctionResult(functionFragment: "closeFund", data: BytesLike): Result;
151
+ decodeFunctionResult(functionFragment: "collectRelinquishedCoins", data: BytesLike): Result;
152
+ decodeFunctionResult(functionFragment: "computeHarvestableFees", data: BytesLike): Result;
153
+ decodeFunctionResult(functionFragment: "getPendingBalance", data: BytesLike): Result;
154
+ decodeFunctionResult(functionFragment: "harvest", data: BytesLike): Result;
155
+ decodeFunctionResult(functionFragment: "protocol", data: BytesLike): Result;
156
+ }
157
+ export declare namespace HarvestedEvent {
158
+ type InputTuple = [
159
+ ledger: AddressLike,
160
+ coin: AddressLike,
161
+ proceeds: BigNumberish,
162
+ managerFee: BigNumberish,
163
+ referrerFee: BigNumberish,
164
+ managerManagementFee: BigNumberish,
165
+ referrerManagementFee: BigNumberish
166
+ ];
167
+ type OutputTuple = [
168
+ ledger: string,
169
+ coin: string,
170
+ proceeds: bigint,
171
+ managerFee: bigint,
172
+ referrerFee: bigint,
173
+ managerManagementFee: bigint,
174
+ referrerManagementFee: bigint
175
+ ];
176
+ interface OutputObject {
177
+ ledger: string;
178
+ coin: string;
179
+ proceeds: bigint;
180
+ managerFee: bigint;
181
+ referrerFee: bigint;
182
+ managerManagementFee: bigint;
183
+ referrerManagementFee: bigint;
184
+ }
185
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
186
+ type Filter = TypedDeferredTopicFilter<Event>;
187
+ type Log = TypedEventLog<Event>;
188
+ type LogDescription = TypedLogDescription<Event>;
189
+ }
190
+ export interface ClosureController extends BaseContract {
191
+ connect(runner?: ContractRunner | null): ClosureController;
192
+ waitForDeployment(): Promise<this>;
193
+ interface: ClosureControllerInterface;
194
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
195
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
196
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
197
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
198
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
199
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
200
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
201
+ listeners(eventName?: string): Promise<Array<Listener>>;
202
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
203
+ closeFund: TypedContractMethod<[c: ClosingStruct], [void], "nonpayable">;
204
+ collectRelinquishedCoins: TypedContractMethod<[
205
+ ledger: AddressLike,
206
+ coin: AddressLike
207
+ ], [
208
+ void
209
+ ], "nonpayable">;
210
+ computeHarvestableFees: TypedContractMethod<[
211
+ ctx: HarvestContextStruct,
212
+ blockTimestamp: BigNumberish
213
+ ], [
214
+ [
215
+ bigint,
216
+ bigint,
217
+ bigint,
218
+ bigint,
219
+ bigint,
220
+ bigint
221
+ ] & {
222
+ managerProfitFee: bigint;
223
+ referrerProfitFee: bigint;
224
+ managementFee: bigint;
225
+ netPerShare: bigint;
226
+ price: bigint;
227
+ epochBufferDelta: bigint;
228
+ }
229
+ ], "view">;
230
+ getPendingBalance: TypedContractMethod<[
231
+ account: AddressLike
232
+ ], [
233
+ bigint
234
+ ], "view">;
235
+ harvest: TypedContractMethod<[h: HarvestStruct], [void], "nonpayable">;
236
+ protocol: TypedContractMethod<[], [string], "view">;
237
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
238
+ getFunction(nameOrSignature: "closeFund"): TypedContractMethod<[c: ClosingStruct], [void], "nonpayable">;
239
+ getFunction(nameOrSignature: "collectRelinquishedCoins"): TypedContractMethod<[
240
+ ledger: AddressLike,
241
+ coin: AddressLike
242
+ ], [
243
+ void
244
+ ], "nonpayable">;
245
+ getFunction(nameOrSignature: "computeHarvestableFees"): TypedContractMethod<[
246
+ ctx: HarvestContextStruct,
247
+ blockTimestamp: BigNumberish
248
+ ], [
249
+ [
250
+ bigint,
251
+ bigint,
252
+ bigint,
253
+ bigint,
254
+ bigint,
255
+ bigint
256
+ ] & {
257
+ managerProfitFee: bigint;
258
+ referrerProfitFee: bigint;
259
+ managementFee: bigint;
260
+ netPerShare: bigint;
261
+ price: bigint;
262
+ epochBufferDelta: bigint;
263
+ }
264
+ ], "view">;
265
+ getFunction(nameOrSignature: "getPendingBalance"): TypedContractMethod<[account: AddressLike], [bigint], "view">;
266
+ getFunction(nameOrSignature: "harvest"): TypedContractMethod<[h: HarvestStruct], [void], "nonpayable">;
267
+ getFunction(nameOrSignature: "protocol"): TypedContractMethod<[], [string], "view">;
268
+ getEvent(key: "Harvested"): TypedContractEvent<HarvestedEvent.InputTuple, HarvestedEvent.OutputTuple, HarvestedEvent.OutputObject>;
269
+ filters: {
270
+ "Harvested(address,address,uint256,uint256,uint256,uint256,uint256)": TypedContractEvent<HarvestedEvent.InputTuple, HarvestedEvent.OutputTuple, HarvestedEvent.OutputObject>;
271
+ Harvested: TypedContractEvent<HarvestedEvent.InputTuple, HarvestedEvent.OutputTuple, HarvestedEvent.OutputObject>;
272
+ };
273
+ }
@@ -0,0 +1 @@
1
+ export type { ClosureController } from "./ClosureController";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,403 @@
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 DepositStruct = {
12
+ ledger: AddressLike;
13
+ coin: AddressLike;
14
+ amount: BigNumberish;
15
+ extCalls: ExternalCallStruct[];
16
+ sharesOutMin: BigNumberish;
17
+ referrerFeeBps: BigNumberish;
18
+ };
19
+ export type DepositStructOutput = [
20
+ ledger: string,
21
+ coin: string,
22
+ amount: bigint,
23
+ extCalls: ExternalCallStructOutput[],
24
+ sharesOutMin: bigint,
25
+ referrerFeeBps: bigint
26
+ ] & {
27
+ ledger: string;
28
+ coin: string;
29
+ amount: bigint;
30
+ extCalls: ExternalCallStructOutput[];
31
+ sharesOutMin: bigint;
32
+ referrerFeeBps: bigint;
33
+ };
34
+ export type DepositContextStruct = {
35
+ vault: AddressLike;
36
+ deposit: DepositStruct;
37
+ referrer: AddressLike;
38
+ coinUnit: BigNumberish;
39
+ coinSlot: BigNumberish;
40
+ normalizer: BigNumberish;
41
+ shares: BigNumberish;
42
+ fee: BigNumberish;
43
+ isManager: boolean;
44
+ assets: AddressLike[];
45
+ totalSupply: BigNumberish;
46
+ lowestInputRatio: BigNumberish;
47
+ balancesBefore: BigNumberish[];
48
+ minAssetsIn: BigNumberish[];
49
+ };
50
+ export type DepositContextStructOutput = [
51
+ vault: string,
52
+ deposit: DepositStructOutput,
53
+ referrer: string,
54
+ coinUnit: bigint,
55
+ coinSlot: bigint,
56
+ normalizer: bigint,
57
+ shares: bigint,
58
+ fee: bigint,
59
+ isManager: boolean,
60
+ assets: string[],
61
+ totalSupply: bigint,
62
+ lowestInputRatio: bigint,
63
+ balancesBefore: bigint[],
64
+ minAssetsIn: bigint[]
65
+ ] & {
66
+ vault: string;
67
+ deposit: DepositStructOutput;
68
+ referrer: string;
69
+ coinUnit: bigint;
70
+ coinSlot: bigint;
71
+ normalizer: bigint;
72
+ shares: bigint;
73
+ fee: bigint;
74
+ isManager: boolean;
75
+ assets: string[];
76
+ totalSupply: bigint;
77
+ lowestInputRatio: bigint;
78
+ balancesBefore: bigint[];
79
+ minAssetsIn: bigint[];
80
+ };
81
+ export type HarvestStruct = {
82
+ ledger: AddressLike;
83
+ coin: AddressLike;
84
+ fraction: BigNumberish;
85
+ isManagementFeeEligible: boolean;
86
+ extCalls: ExternalCallStruct[];
87
+ };
88
+ export type HarvestStructOutput = [
89
+ ledger: string,
90
+ coin: string,
91
+ fraction: bigint,
92
+ isManagementFeeEligible: boolean,
93
+ extCalls: ExternalCallStructOutput[]
94
+ ] & {
95
+ ledger: string;
96
+ coin: string;
97
+ fraction: bigint;
98
+ isManagementFeeEligible: boolean;
99
+ extCalls: ExternalCallStructOutput[];
100
+ };
101
+ export type EpochStruct = {
102
+ watermark: BigNumberish;
103
+ priceBefore: BigNumberish;
104
+ };
105
+ export type EpochStructOutput = [watermark: bigint, priceBefore: bigint] & {
106
+ watermark: bigint;
107
+ priceBefore: bigint;
108
+ };
109
+ export type HarvestFeesStruct = {
110
+ managerProfitFee: BigNumberish;
111
+ referrerProfitFee: BigNumberish;
112
+ managementFee: BigNumberish;
113
+ };
114
+ export type HarvestFeesStructOutput = [
115
+ managerProfitFee: bigint,
116
+ referrerProfitFee: bigint,
117
+ managementFee: bigint
118
+ ] & {
119
+ managerProfitFee: bigint;
120
+ referrerProfitFee: bigint;
121
+ managementFee: bigint;
122
+ };
123
+ export type HarvestContextStruct = {
124
+ harvest: HarvestStruct;
125
+ vault: AddressLike;
126
+ isFinal: boolean;
127
+ referrer: AddressLike;
128
+ coinSlot: BigNumberish;
129
+ latestManagementFeeTimestamp: BigNumberish;
130
+ normalizedTvl: BigNumberish;
131
+ normalizer: BigNumberish;
132
+ proceeds: BigNumberish;
133
+ totalSupply: BigNumberish;
134
+ managerBalance: BigNumberish;
135
+ ledgerBalance: BigNumberish;
136
+ totalVirtualPrincipal: BigNumberish;
137
+ managerProfitFeeBps: BigNumberish;
138
+ profitFeeBps: BigNumberish;
139
+ assets: AddressLike[];
140
+ managerFeeBasis: BigNumberish;
141
+ watermark: BigNumberish;
142
+ epochBufferDelta: BigNumberish;
143
+ upcomingEpoch: EpochStruct;
144
+ fees: HarvestFeesStruct;
145
+ referrerManagementFeeBps: BigNumberish;
146
+ managerManagementFeeBps: BigNumberish;
147
+ };
148
+ export type HarvestContextStructOutput = [
149
+ harvest: HarvestStructOutput,
150
+ vault: string,
151
+ isFinal: boolean,
152
+ referrer: string,
153
+ coinSlot: bigint,
154
+ latestManagementFeeTimestamp: bigint,
155
+ normalizedTvl: bigint,
156
+ normalizer: bigint,
157
+ proceeds: bigint,
158
+ totalSupply: bigint,
159
+ managerBalance: bigint,
160
+ ledgerBalance: bigint,
161
+ totalVirtualPrincipal: bigint,
162
+ managerProfitFeeBps: bigint,
163
+ profitFeeBps: bigint,
164
+ assets: string[],
165
+ managerFeeBasis: bigint,
166
+ watermark: bigint,
167
+ epochBufferDelta: bigint,
168
+ upcomingEpoch: EpochStructOutput,
169
+ fees: HarvestFeesStructOutput,
170
+ referrerManagementFeeBps: bigint,
171
+ managerManagementFeeBps: bigint
172
+ ] & {
173
+ harvest: HarvestStructOutput;
174
+ vault: string;
175
+ isFinal: boolean;
176
+ referrer: string;
177
+ coinSlot: bigint;
178
+ latestManagementFeeTimestamp: bigint;
179
+ normalizedTvl: bigint;
180
+ normalizer: bigint;
181
+ proceeds: bigint;
182
+ totalSupply: bigint;
183
+ managerBalance: bigint;
184
+ ledgerBalance: bigint;
185
+ totalVirtualPrincipal: bigint;
186
+ managerProfitFeeBps: bigint;
187
+ profitFeeBps: bigint;
188
+ assets: string[];
189
+ managerFeeBasis: bigint;
190
+ watermark: bigint;
191
+ epochBufferDelta: bigint;
192
+ upcomingEpoch: EpochStructOutput;
193
+ fees: HarvestFeesStructOutput;
194
+ referrerManagementFeeBps: bigint;
195
+ managerManagementFeeBps: bigint;
196
+ };
197
+ export type AccountCursorStruct = {
198
+ principal: BigNumberish;
199
+ virtualBuffer: BigNumberish;
200
+ epoch: BigNumberish;
201
+ };
202
+ export type AccountCursorStructOutput = [
203
+ principal: bigint,
204
+ virtualBuffer: bigint,
205
+ epoch: bigint
206
+ ] & {
207
+ principal: bigint;
208
+ virtualBuffer: bigint;
209
+ epoch: bigint;
210
+ };
211
+ export type TransferContextStruct = {
212
+ from: AddressLike;
213
+ to: AddressLike;
214
+ fromCursor: AccountCursorStruct;
215
+ toCursor: AccountCursorStruct;
216
+ fromBalance: BigNumberish;
217
+ amount: BigNumberish;
218
+ };
219
+ export type TransferContextStructOutput = [
220
+ from: string,
221
+ to: string,
222
+ fromCursor: AccountCursorStructOutput,
223
+ toCursor: AccountCursorStructOutput,
224
+ fromBalance: bigint,
225
+ amount: bigint
226
+ ] & {
227
+ from: string;
228
+ to: string;
229
+ fromCursor: AccountCursorStructOutput;
230
+ toCursor: AccountCursorStructOutput;
231
+ fromBalance: bigint;
232
+ amount: bigint;
233
+ };
234
+ export type WithdrawalStruct = {
235
+ ledger: AddressLike;
236
+ coin: AddressLike;
237
+ shares: BigNumberish;
238
+ extCalls: ExternalCallStruct[];
239
+ referrerFeeBps: BigNumberish;
240
+ };
241
+ export type WithdrawalStructOutput = [
242
+ ledger: string,
243
+ coin: string,
244
+ shares: bigint,
245
+ extCalls: ExternalCallStructOutput[],
246
+ referrerFeeBps: bigint
247
+ ] & {
248
+ ledger: string;
249
+ coin: string;
250
+ shares: bigint;
251
+ extCalls: ExternalCallStructOutput[];
252
+ referrerFeeBps: bigint;
253
+ };
254
+ export type WithdrawalContextStruct = {
255
+ vault: AddressLike;
256
+ withdrawal: WithdrawalStruct;
257
+ cursor: AccountCursorStruct;
258
+ coinSlot: BigNumberish;
259
+ normalizer: BigNumberish;
260
+ proceeds: BigNumberish;
261
+ sharesBalance: BigNumberish;
262
+ principalAmountOut: BigNumberish;
263
+ manager: AddressLike;
264
+ referrer: AddressLike;
265
+ managerProfitFeeBps: BigNumberish;
266
+ assets: AddressLike[];
267
+ totalSupply: BigNumberish;
268
+ highestOutputRatio: BigNumberish;
269
+ balancesBefore: BigNumberish[];
270
+ maxAssetsOut: BigNumberish[];
271
+ netAmountOut: BigNumberish;
272
+ managerFee: BigNumberish;
273
+ referrerFee: BigNumberish;
274
+ watermark: BigNumberish;
275
+ };
276
+ export type WithdrawalContextStructOutput = [
277
+ vault: string,
278
+ withdrawal: WithdrawalStructOutput,
279
+ cursor: AccountCursorStructOutput,
280
+ coinSlot: bigint,
281
+ normalizer: bigint,
282
+ proceeds: bigint,
283
+ sharesBalance: bigint,
284
+ principalAmountOut: bigint,
285
+ manager: string,
286
+ referrer: string,
287
+ managerProfitFeeBps: bigint,
288
+ assets: string[],
289
+ totalSupply: bigint,
290
+ highestOutputRatio: bigint,
291
+ balancesBefore: bigint[],
292
+ maxAssetsOut: bigint[],
293
+ netAmountOut: bigint,
294
+ managerFee: bigint,
295
+ referrerFee: bigint,
296
+ watermark: bigint
297
+ ] & {
298
+ vault: string;
299
+ withdrawal: WithdrawalStructOutput;
300
+ cursor: AccountCursorStructOutput;
301
+ coinSlot: bigint;
302
+ normalizer: bigint;
303
+ proceeds: bigint;
304
+ sharesBalance: bigint;
305
+ principalAmountOut: bigint;
306
+ manager: string;
307
+ referrer: string;
308
+ managerProfitFeeBps: bigint;
309
+ assets: string[];
310
+ totalSupply: bigint;
311
+ highestOutputRatio: bigint;
312
+ balancesBefore: bigint[];
313
+ maxAssetsOut: bigint[];
314
+ netAmountOut: bigint;
315
+ managerFee: bigint;
316
+ referrerFee: bigint;
317
+ watermark: bigint;
318
+ };
319
+ export interface ContextBuilderInterface extends Interface {
320
+ getFunction(nameOrSignature: "getDepositContext" | "getHarvestContext" | "getTransferContext" | "getWithdrawalContext"): FunctionFragment;
321
+ encodeFunctionData(functionFragment: "getDepositContext", values: [AddressLike, AddressLike, DepositStruct]): string;
322
+ encodeFunctionData(functionFragment: "getHarvestContext", values: [AddressLike, HarvestStruct, boolean]): string;
323
+ encodeFunctionData(functionFragment: "getTransferContext", values: [AddressLike, AddressLike, AddressLike, BigNumberish]): string;
324
+ encodeFunctionData(functionFragment: "getWithdrawalContext", values: [AddressLike, AddressLike, WithdrawalStruct]): string;
325
+ decodeFunctionResult(functionFragment: "getDepositContext", data: BytesLike): Result;
326
+ decodeFunctionResult(functionFragment: "getHarvestContext", data: BytesLike): Result;
327
+ decodeFunctionResult(functionFragment: "getTransferContext", data: BytesLike): Result;
328
+ decodeFunctionResult(functionFragment: "getWithdrawalContext", data: BytesLike): Result;
329
+ }
330
+ export interface ContextBuilder extends BaseContract {
331
+ connect(runner?: ContractRunner | null): ContextBuilder;
332
+ waitForDeployment(): Promise<this>;
333
+ interface: ContextBuilderInterface;
334
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
335
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
336
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
337
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
338
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
339
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
340
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
341
+ listeners(eventName?: string): Promise<Array<Listener>>;
342
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
343
+ getDepositContext: TypedContractMethod<[
344
+ ledger: AddressLike,
345
+ account: AddressLike,
346
+ d: DepositStruct
347
+ ], [
348
+ DepositContextStructOutput
349
+ ], "view">;
350
+ getHarvestContext: TypedContractMethod<[
351
+ ledger: AddressLike,
352
+ h: HarvestStruct,
353
+ isFinal: boolean
354
+ ], [
355
+ HarvestContextStructOutput
356
+ ], "view">;
357
+ getTransferContext: TypedContractMethod<[
358
+ ledger: AddressLike,
359
+ from: AddressLike,
360
+ to: AddressLike,
361
+ amount: BigNumberish
362
+ ], [
363
+ TransferContextStructOutput
364
+ ], "view">;
365
+ getWithdrawalContext: TypedContractMethod<[
366
+ ledger: AddressLike,
367
+ account: AddressLike,
368
+ w: WithdrawalStruct
369
+ ], [
370
+ WithdrawalContextStructOutput
371
+ ], "view">;
372
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
373
+ getFunction(nameOrSignature: "getDepositContext"): TypedContractMethod<[
374
+ ledger: AddressLike,
375
+ account: AddressLike,
376
+ d: DepositStruct
377
+ ], [
378
+ DepositContextStructOutput
379
+ ], "view">;
380
+ getFunction(nameOrSignature: "getHarvestContext"): TypedContractMethod<[
381
+ ledger: AddressLike,
382
+ h: HarvestStruct,
383
+ isFinal: boolean
384
+ ], [
385
+ HarvestContextStructOutput
386
+ ], "view">;
387
+ getFunction(nameOrSignature: "getTransferContext"): TypedContractMethod<[
388
+ ledger: AddressLike,
389
+ from: AddressLike,
390
+ to: AddressLike,
391
+ amount: BigNumberish
392
+ ], [
393
+ TransferContextStructOutput
394
+ ], "view">;
395
+ getFunction(nameOrSignature: "getWithdrawalContext"): TypedContractMethod<[
396
+ ledger: AddressLike,
397
+ account: AddressLike,
398
+ w: WithdrawalStruct
399
+ ], [
400
+ WithdrawalContextStructOutput
401
+ ], "view">;
402
+ filters: {};
403
+ }
@@ -0,0 +1 @@
1
+ export {};