@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,284 @@
1
+ import { Contract, ContractFactory, Interface, } from "ethers";
2
+ const _abi = [
3
+ {
4
+ type: "constructor",
5
+ inputs: [
6
+ {
7
+ name: "protocolAddress",
8
+ type: "address",
9
+ internalType: "address payable",
10
+ },
11
+ {
12
+ name: "vaultImpl",
13
+ type: "address",
14
+ internalType: "address",
15
+ },
16
+ {
17
+ name: "ledgerImpl",
18
+ type: "address",
19
+ internalType: "address",
20
+ },
21
+ {
22
+ name: "signer",
23
+ type: "address",
24
+ internalType: "address",
25
+ },
26
+ ],
27
+ stateMutability: "nonpayable",
28
+ },
29
+ {
30
+ type: "fallback",
31
+ stateMutability: "nonpayable",
32
+ },
33
+ {
34
+ type: "function",
35
+ name: "LEDGER_IMPLEMENTATION",
36
+ inputs: [],
37
+ outputs: [
38
+ {
39
+ name: "",
40
+ type: "address",
41
+ internalType: "address",
42
+ },
43
+ ],
44
+ stateMutability: "view",
45
+ },
46
+ {
47
+ type: "function",
48
+ name: "MANAGER_MANAGEMENT_FEE_BPS",
49
+ inputs: [],
50
+ outputs: [
51
+ {
52
+ name: "",
53
+ type: "uint16",
54
+ internalType: "uint16",
55
+ },
56
+ ],
57
+ stateMutability: "view",
58
+ },
59
+ {
60
+ type: "function",
61
+ name: "MANAGER_PROFIT_FEE_BPS",
62
+ inputs: [],
63
+ outputs: [
64
+ {
65
+ name: "",
66
+ type: "uint16",
67
+ internalType: "uint16",
68
+ },
69
+ ],
70
+ stateMutability: "view",
71
+ },
72
+ {
73
+ type: "function",
74
+ name: "PROTOCOL",
75
+ inputs: [],
76
+ outputs: [
77
+ {
78
+ name: "",
79
+ type: "address",
80
+ internalType: "contract Protocol",
81
+ },
82
+ ],
83
+ stateMutability: "view",
84
+ },
85
+ {
86
+ type: "function",
87
+ name: "SIGNER",
88
+ inputs: [],
89
+ outputs: [
90
+ {
91
+ name: "",
92
+ type: "address",
93
+ internalType: "address",
94
+ },
95
+ ],
96
+ stateMutability: "view",
97
+ },
98
+ {
99
+ type: "function",
100
+ name: "VAULT_IMPLEMENTATION",
101
+ inputs: [],
102
+ outputs: [
103
+ {
104
+ name: "",
105
+ type: "address",
106
+ internalType: "address",
107
+ },
108
+ ],
109
+ stateMutability: "view",
110
+ },
111
+ {
112
+ type: "function",
113
+ name: "migrate",
114
+ inputs: [
115
+ {
116
+ name: "params",
117
+ type: "tuple",
118
+ internalType: "struct V0ToLotusMigrator.MigrationParams",
119
+ components: [
120
+ {
121
+ name: "v0Fund",
122
+ type: "address",
123
+ internalType: "address",
124
+ },
125
+ {
126
+ name: "accounts",
127
+ type: "address[]",
128
+ internalType: "address[]",
129
+ },
130
+ ],
131
+ },
132
+ {
133
+ name: "signature",
134
+ type: "bytes",
135
+ internalType: "bytes",
136
+ },
137
+ ],
138
+ outputs: [],
139
+ stateMutability: "nonpayable",
140
+ },
141
+ {
142
+ type: "event",
143
+ name: "FundMigrated",
144
+ inputs: [
145
+ {
146
+ name: "v0Fund",
147
+ type: "address",
148
+ indexed: true,
149
+ internalType: "address",
150
+ },
151
+ {
152
+ name: "vault",
153
+ type: "address",
154
+ indexed: false,
155
+ internalType: "address",
156
+ },
157
+ {
158
+ name: "ledger",
159
+ type: "address",
160
+ indexed: false,
161
+ internalType: "address",
162
+ },
163
+ ],
164
+ anonymous: false,
165
+ },
166
+ {
167
+ type: "error",
168
+ name: "ECDSAInvalidSignature",
169
+ inputs: [],
170
+ },
171
+ {
172
+ type: "error",
173
+ name: "ECDSAInvalidSignatureLength",
174
+ inputs: [
175
+ {
176
+ name: "length",
177
+ type: "uint256",
178
+ internalType: "uint256",
179
+ },
180
+ ],
181
+ },
182
+ {
183
+ type: "error",
184
+ name: "ECDSAInvalidSignatureS",
185
+ inputs: [
186
+ {
187
+ name: "s",
188
+ type: "bytes32",
189
+ internalType: "bytes32",
190
+ },
191
+ ],
192
+ },
193
+ {
194
+ type: "error",
195
+ name: "FailedDeployment",
196
+ inputs: [],
197
+ },
198
+ {
199
+ type: "error",
200
+ name: "InsufficientBalance",
201
+ inputs: [
202
+ {
203
+ name: "balance",
204
+ type: "uint256",
205
+ internalType: "uint256",
206
+ },
207
+ {
208
+ name: "needed",
209
+ type: "uint256",
210
+ internalType: "uint256",
211
+ },
212
+ ],
213
+ },
214
+ {
215
+ type: "error",
216
+ name: "InvalidAddress",
217
+ inputs: [],
218
+ },
219
+ {
220
+ type: "error",
221
+ name: "InvalidSignature",
222
+ inputs: [],
223
+ },
224
+ {
225
+ type: "error",
226
+ name: "LengthMismatch",
227
+ inputs: [],
228
+ },
229
+ {
230
+ type: "error",
231
+ name: "MigrationStateMismatch",
232
+ inputs: [],
233
+ },
234
+ {
235
+ type: "error",
236
+ name: "ReentrancyGuardReentrantCall",
237
+ inputs: [],
238
+ },
239
+ {
240
+ type: "error",
241
+ name: "SafeERC20FailedOperation",
242
+ inputs: [
243
+ {
244
+ name: "token",
245
+ type: "address",
246
+ internalType: "address",
247
+ },
248
+ ],
249
+ },
250
+ {
251
+ type: "error",
252
+ name: "Unauthorized",
253
+ inputs: [],
254
+ },
255
+ ];
256
+ const _bytecode = "0x610100604052348015610010575f5ffd5b506040516117df3803806117df83398101604081905261002f91610104565b6001600160a01b0384166100565760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03831661007d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0382166100a45760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0381166100cb5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0393841660805291831660a052821660c0521660e052610160565b6001600160a01b0381168114610101575f5ffd5b50565b5f5f5f5f60808587031215610117575f5ffd5b8451610122816100ed565b6020860151909450610133816100ed565b6040860151909350610144816100ed565b6060860151909250610155816100ed565b939692955090935050565b60805160a05160c05160e05161162c6101b35f395f818160d6015261025c01525f8181610124015261031c01525f8181607f01526102f001525f818160fd01528181610add0152610b37015261162c5ff3fe608060405234801561000f575f5ffd5b5060043610610078575f3560e01c806391b9b8271161005657806391b9b827146100f8578063fe5e539e1461011f578063fef66cd114610146578063ff7213a11461016157005b80631f9b5aaf1461007a57806341a07dc9146100be578063582abd12146100d1575b005b6100a17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100786100cc36600461127a565b61016a565b6100a17f000000000000000000000000000000000000000000000000000000000000000081565b6100a17f000000000000000000000000000000000000000000000000000000000000000081565b6100a17f000000000000000000000000000000000000000000000000000000000000000081565b61014e606481565b60405161ffff90911681526020016100b5565b61014e6103e881565b610172610cd4565b61017f602084018461132d565b6001600160a01b0316336001600160a01b0316146101af576040516282b42960e81b815260040160405180910390fd5b5f6101bd602085018561134f565b9050116101e0576040516001621398b960e31b0319815260040160405180910390fd5b5f6102586101f1602086018661132d565b6101fe602087018761134f565b6040516020016102109392919061139c565b604051602081830303815290604052805190602001207f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f908152601c91909152603c902090565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166102c38285858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610d0b92505050565b6001600160a01b0316146102ea57604051638baa579f60e01b815260040160405180910390fd5b5f6103147f0000000000000000000000000000000000000000000000000000000000000000610d35565b90505f6103407f0000000000000000000000000000000000000000000000000000000000000000610d35565b905081815f61035260208a018a61132d565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610391573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b591906113f6565b60405163485cc95560e01b81526001600160a01b03808316600483015285811660248301529192509085169063485cc955906044015f604051808303815f87803b158015610401575f5ffd5b505af1158015610413573d5f5f3e3d5ffd5b505f925061042791505060208c018c61132d565b9050836001600160a01b03166336b6f71c8683866001600160a01b03166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa158015610475573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261049c9190810190611425565b876001600160a01b03166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa1580156104d7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104fe9190810190611425565b64e8d4a5100064ffffffffff16896001600160a01b0316633ad0e5c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015610547573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061056b91906114d8565b61057591906114ef565b896001600160a01b031663334dcfee6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d591906114d8565b6103e860647389bb5313b2c16c0720585081e6913f99e469c5f26040518a63ffffffff1660e01b815260040161061399989796959493929190611540565b5f604051808303815f87803b15801561062a575f5ffd5b505af115801561063c573d5f5f3e3d5ffd5b5050604051634a5e42b160e01b81526001600160a01b03848116600483015287169250634a5e42b191506024015f604051808303815f87803b158015610680575f5ffd5b505af1158015610692573d5f5f3e3d5ffd5b505f93505050505b600881101561083557604051630cf35bdd60e41b8152600481018290525f906001600160a01b0385169063cf35bdd090602401602060405180830381865afa1580156106e8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070c91906113f6565b90506001600160a01b038116610722575061082d565b5f816001600160a01b03166370a082318e5f016020810190610744919061132d565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610786573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107aa91906114d8565b905080156107d4576107d46107c260208f018f61132d565b6001600160a01b038416908b84610d40565b60405163298410e560e01b81526001600160a01b03838116600483015287169063298410e5906024015f604051808303815f87803b158015610814575f5ffd5b505af1158015610826573d5f5f3e3d5ffd5b5050505050505b60010161069a565b505f826001600160a01b0316633fc8cef36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610873573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089791906113f6565b90505f6001600160a01b0382166370a082316108b660208f018f61132d565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156108f8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091c91906114d8565b9050801561099d5761094661093460208e018e61132d565b6001600160a01b038416908a84610d40565b60405163298410e560e01b81526001600160a01b03838116600483015286169063298410e5906024015f604051808303815f87803b158015610986575f5ffd5b505af1158015610998573d5f5f3e3d5ffd5b505050505b6109c985858e5f0160208101906109b4919061132d565b8f80602001906109c4919061134f565b610d81565b64e8d4a5100064ffffffffff16846001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a12573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a3691906114d8565b610a4091906114ef565b856001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a7c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aa091906114d8565b14610abe576040516306be710560e51b815260040160405180910390fd5b60405163f122d2c960e01b81526001600160a01b0388811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063f122d2c9906024015f604051808303815f87803b158015610b1e575f5ffd5b505af1158015610b30573d5f5f3e3d5ffd5b505050505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637ef098016040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b91573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bb591906113f6565b604051630365adb360e11b81526001600160a01b038083166004830152919250908816906306cb5b66906024015f604051808303815f87803b158015610bf9575f5ffd5b505af1158015610c0b573d5f5f3e3d5ffd5b5050604051630365adb360e11b81526001600160a01b038481166004830152891692506306cb5b6691506024015f604051808303815f87803b158015610c4f575f5ffd5b505af1158015610c61573d5f5f3e3d5ffd5b50610c759350505060208e0190508d61132d565b604080516001600160a01b038b811682528a8116602083015292909216917fd70004aa46acac63ca6b639321180f35c199061ee17cbe3b81328ec4731e2bcc910160405180910390a2505050505050505050610ccf610f3b565b505050565b610cdc610f65565b610d0960017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005b90610fa5565b565b5f5f5f5f610d198686610fac565b925092509250610d298282610ff5565b50909150505b92915050565b5f610d2f825f6110b1565b610d4e848484846001611145565b610d7b57604051635274afe760e01b81526001600160a01b03851660048201526024015b60405180910390fd5b50505050565b825f5b82811015610f32575f848483818110610d9f57610d9f6115ce565b9050602002016020810190610db4919061132d565b6040516370a0823160e01b81526001600160a01b038083166004830152919250818a169163c8c63c69918491879164e8d4a51000918d16906370a0823190602401602060405180830381865afa158015610e10573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e3491906114d8565b610e3e91906114ef565b604051631efc751b60e01b81526001600160a01b03878116600483015264e8d4a5100091908e1690631efc751b90602401602060405180830381865afa158015610e8a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eae91906114d8565b610eb891906114ef565b6040516001600160e01b031960e087901b1681526001600160a01b039485166004820152939092166024840152604483015260648201525f608482015260a4015f604051808303815f87803b158015610f0f575f5ffd5b505af1158015610f21573d5f5f3e3d5ffd5b505060019093019250610d84915050565b50505050505050565b610d095f7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00610d03565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005c15610d0957604051633ee5aeb560e01b815260040160405180910390fd5b80825d5050565b5f5f5f8351604103610fe3576020840151604085015160608601515f1a610fd5888285856111b2565b955095509550505050610fee565b505081515f91506002905b9250925092565b5f826003811115611008576110086115e2565b03611011575050565b6001826003811115611025576110256115e2565b036110435760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115611057576110576115e2565b036110785760405163fce698f760e01b815260048101829052602401610d72565b600382600381111561108c5761108c6115e2565b036110ad576040516335e2f38360e21b815260048101829052602401610d72565b5050565b5f814710156110dc5760405163cf47918160e01b815247600482015260248101839052604401610d72565b763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c175f526e5af43d82803e903d91602b57fd5bf38360781b176020526037600983f090506001600160a01b038116610d2f5760405163b06ebf3d60e01b815260040160405180910390fd5b6040516323b872dd60e01b5f8181526001600160a01b038781166004528616602452604485905291602083606481808c5af1925060015f511483166111a1578383151615611195573d5f823e3d81fd5b5f883b113d1516831692505b604052505f60605295945050505050565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411156111eb57505f91506003905082611270565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa15801561123c573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661126757505f925060019150829050611270565b92505f91508190505b9450945094915050565b5f5f5f6040848603121561128c575f5ffd5b833567ffffffffffffffff8111156112a2575f5ffd5b8401604081870312156112b3575f5ffd5b9250602084013567ffffffffffffffff8111156112ce575f5ffd5b8401601f810186136112de575f5ffd5b803567ffffffffffffffff8111156112f4575f5ffd5b866020828401011115611305575f5ffd5b939660209190910195509293505050565b6001600160a01b038116811461132a575f5ffd5b50565b5f6020828403121561133d575f5ffd5b813561134881611316565b9392505050565b5f5f8335601e19843603018112611364575f5ffd5b83018035915067ffffffffffffffff82111561137e575f5ffd5b6020019150600581901b3603821315611395575f5ffd5b9250929050565b6bffffffffffffffffffffffff198460601b1681525f60148201845f5b858110156113ea5781356113cc81611316565b6001600160a01b0316835260209283019291909101906001016113b9565b50909695505050505050565b5f60208284031215611406575f5ffd5b815161134881611316565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215611435575f5ffd5b815167ffffffffffffffff81111561144b575f5ffd5b8201601f8101841361145b575f5ffd5b805167ffffffffffffffff81111561147557611475611411565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156114a4576114a4611411565b6040528181528282016020018610156114bb575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b5f602082840312156114e8575f5ffd5b5051919050565b8082028115828204841417610d2f57634e487b7160e01b5f52601160045260245ffd5b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b6001600160a01b038a8116825289166020820152610120604082018190525f9061156c9083018a611512565b828103606084015261157e818a611512565b6bffffffffffffffffffffffff989098166080840152505063ffffffff9490941660a085015261ffff92831660c0850152911660e08301526001600160a01b031661010090910152949350505050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffdfea26469706673582212207069aed9d3badc13eb09a5e1bc8732c423ef97dec49a7c6b5a4383d96ab8e5c664736f6c634300081e0033";
257
+ const isSuperArgs = (xs) => xs.length > 1;
258
+ export class V0ToLotusMigrator__factory extends ContractFactory {
259
+ constructor(...args) {
260
+ if (isSuperArgs(args)) {
261
+ super(...args);
262
+ }
263
+ else {
264
+ super(_abi, _bytecode, args[0]);
265
+ }
266
+ }
267
+ getDeployTransaction(protocolAddress, vaultImpl, ledgerImpl, signer, overrides) {
268
+ return super.getDeployTransaction(protocolAddress, vaultImpl, ledgerImpl, signer, overrides || {});
269
+ }
270
+ deploy(protocolAddress, vaultImpl, ledgerImpl, signer, overrides) {
271
+ return super.deploy(protocolAddress, vaultImpl, ledgerImpl, signer, overrides || {});
272
+ }
273
+ connect(runner) {
274
+ return super.connect(runner);
275
+ }
276
+ static bytecode = _bytecode;
277
+ static abi = _abi;
278
+ static createInterface() {
279
+ return new Interface(_abi);
280
+ }
281
+ static connect(address, runner) {
282
+ return new Contract(address, _abi, runner);
283
+ }
284
+ }
@@ -0,0 +1,258 @@
1
+ import { ContractFactory, ContractTransactionResponse } from "ethers";
2
+ import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
3
+ import type { NonPayableOverrides } from "../../../common";
4
+ import type { FundVault, FundVaultInterface } from "../../../out/Vault.sol/FundVault";
5
+ type FundVaultConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class FundVault__factory extends ContractFactory {
7
+ constructor(...args: FundVaultConstructorParams);
8
+ getDeployTransaction(protocolAddress: AddressLike, overrides?: NonPayableOverrides & {
9
+ from?: string;
10
+ }): Promise<ContractDeployTransaction>;
11
+ deploy(protocolAddress: AddressLike, overrides?: NonPayableOverrides & {
12
+ from?: string;
13
+ }): Promise<FundVault & {
14
+ deploymentTransaction(): ContractTransactionResponse;
15
+ }>;
16
+ connect(runner: ContractRunner | null): FundVault__factory;
17
+ static readonly bytecode = "0x60a060405234801561000f575f5ffd5b50604051610e5a380380610e5a83398101604081905261002e91610124565b80806001600160a01b0381166100575760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03166080525061006c610072565b50610151565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100c25760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146101215780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b5f60208284031215610134575f5ffd5b81516001600160a01b038116811461014a575f5ffd5b9392505050565b608051610ce36101775f395f81816101a2015281816102f901526107bd0152610ce35ff3fe6080604052600436106100a5575f3560e01c806356397c351161006257806356397c35146101755780638ce7442614610194578063a6a192da146101c6578063bca8c7b5146101e5578063e58ef8a8146101f8578063f77c479114610217575f5ffd5b806301322e71146100a957806306cb5b66146100ca578063082a259e146100e95780631cff79cd14610108578063481c6a7514610131578063485cc95514610162575b5f5ffd5b3480156100b4575f5ffd5b506100c86100c3366004610977565b610233565b005b3480156100d5575f5ffd5b506100c86100e4366004610977565b6102b1565b3480156100f4575f5ffd5b506100c8610103366004610977565b6103cc565b61011b610116366004610999565b61043e565b6040516101289190610a19565b60405180910390f35b34801561013c575f5ffd5b506001546001600160a01b03165b6040516001600160a01b039091168152602001610128565b6100c8610170366004610a4e565b6104de565b348015610180575f5ffd5b5060025461014a906001600160a01b031681565b34801561019f575f5ffd5b507f000000000000000000000000000000000000000000000000000000000000000061014a565b3480156101d1575f5ffd5b506100c86101e0366004610b57565b6105f6565b61011b6101f3366004610999565b6106cd565b348015610203575f5ffd5b506100c8610212366004610c2d565b610750565b348015610222575f5ffd5b505f546001600160a01b031661014a565b5f546001600160a01b0316331461025c576040516282b42960e81b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f1207be401d51e379598f93d2de21878d0a8225208d271069604ce9f9d81c37b0906020015b60405180910390a150565b5f546001600160a01b031633146102da576040516282b42960e81b815260040160405180910390fd5b604051630d68c03760e01b81526001600160a01b0382811660048301527f00000000000000000000000000000000000000000000000000000000000000001690630d68c03790602401602060405180830381865afa15801561033e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103629190610c6b565b61037f576040516359cf0f3760e11b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f1304018cfe79741dcf02ba6b61d39cc4757d59395d03224d9925c7aa83002146906020016102a6565b5f546001600160a01b031633146103f5576040516282b42960e81b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0383169081179091556040517f842077a807f115575d3fc6fb5f72114e8dc163c6213e067f9a6acd7130648804905f90a250565b5f546060906001600160a01b0316331461046a576040516282b42960e81b815260040160405180910390fd5b5f5f856001600160a01b03168585604051610486929190610c8a565b5f60405180830381855af49150503d805f81146104be576040519150601f19603f3d011682016040523d82523d5f602084013e6104c3565b606091505b5091509150816104d557805160208201fd5b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156105235750825b90505f8267ffffffffffffffff16600114801561053f5750303b155b90508115801561054d575080155b1561056b5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561059557845460ff60401b1916600160401b1785555b61059e86610798565b6105a7876107a0565b83156105ed57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b5f546001600160a01b0316331461061f576040516282b42960e81b815260040160405180910390fd5b8051825114610644576040516001621398b960e31b0319815260040160405180910390fd5b5f5b82518110156106c75781818151811061066157610661610c99565b60200260200101515f146106bf576106bf83828151811061068457610684610c99565b602002602001015183838151811061069e5761069e610c99565b6020026020010151866001600160a01b031661087a9092919063ffffffff16565b600101610646565b50505050565b5f546060906001600160a01b031633146106f9576040516282b42960e81b815260040160405180910390fd5b5f5f856001600160a01b0316348686604051610716929190610c8a565b5f6040518083038185875af1925050503d805f81146104be576040519150601f19603f3d011682016040523d82523d5f602084013e6104c3565b5f546001600160a01b03163314610779576040516282b42960e81b815260040160405180910390fd5b8015610793576107936001600160a01b038416838361087a565b505050565b6103f56108b3565b6107a86108b3565b604051630d68c03760e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690630d68c03790602401602060405180830381865afa15801561080a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061082e9190610c6b565b61084b576040516359cf0f3760e11b815260040160405180910390fd5b5f8054336001600160a01b031991821617909155600180549091166001600160a01b0392909216919091179055565b61088783838360016108fe565b61079357604051635274afe760e01b81526001600160a01b038416600482015260240160405180910390fd5b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166108fc57604051631afcd79f60e31b815260040160405180910390fd5b565b60405163a9059cbb60e01b5f8181526001600160a01b038616600452602485905291602083604481808b5af1925060015f51148316610954578383151615610948573d5f823e3d81fd5b5f873b113d1516831692505b60405250949350505050565b6001600160a01b0381168114610974575f5ffd5b50565b5f60208284031215610987575f5ffd5b813561099281610960565b9392505050565b5f5f5f604084860312156109ab575f5ffd5b83356109b681610960565b9250602084013567ffffffffffffffff8111156109d1575f5ffd5b8401601f810186136109e1575f5ffd5b803567ffffffffffffffff8111156109f7575f5ffd5b866020828401011115610a08575f5ffd5b939660209190910195509293505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f60408385031215610a5f575f5ffd5b8235610a6a81610960565b91506020830135610a7a81610960565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610ac257610ac2610a85565b604052919050565b5f67ffffffffffffffff821115610ae357610ae3610a85565b5060051b60200190565b5f82601f830112610afc575f5ffd5b8135610b0f610b0a82610aca565b610a99565b8082825260208201915060208360051b860101925085831115610b30575f5ffd5b602085015b83811015610b4d578035835260209283019201610b35565b5095945050505050565b5f5f5f60608486031215610b69575f5ffd5b8335610b7481610960565b9250602084013567ffffffffffffffff811115610b8f575f5ffd5b8401601f81018613610b9f575f5ffd5b8035610bad610b0a82610aca565b8082825260208201915060208360051b850101925088831115610bce575f5ffd5b6020840193505b82841015610bf9578335610be881610960565b825260209384019390910190610bd5565b9450505050604084013567ffffffffffffffff811115610c17575f5ffd5b610c2386828701610aed565b9150509250925092565b5f5f5f60608486031215610c3f575f5ffd5b8335610c4a81610960565b92506020840135610c5a81610960565b929592945050506040919091013590565b5f60208284031215610c7b575f5ffd5b81518015158114610992575f5ffd5b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220dcbdceff820d879f06f9bb970b3f70a97f20844cd3527dfd7c9941843165953964736f6c634300081e0033";
18
+ static readonly abi: readonly [{
19
+ readonly type: "constructor";
20
+ readonly inputs: readonly [{
21
+ readonly name: "protocolAddress";
22
+ readonly type: "address";
23
+ readonly internalType: "address payable";
24
+ }];
25
+ readonly stateMutability: "nonpayable";
26
+ }, {
27
+ readonly type: "function";
28
+ readonly name: "controller";
29
+ readonly inputs: readonly [];
30
+ readonly outputs: readonly [{
31
+ readonly name: "";
32
+ readonly type: "address";
33
+ readonly internalType: "address";
34
+ }];
35
+ readonly stateMutability: "view";
36
+ }, {
37
+ readonly type: "function";
38
+ readonly name: "execute";
39
+ readonly inputs: readonly [{
40
+ readonly name: "delegate";
41
+ readonly type: "address";
42
+ readonly internalType: "address";
43
+ }, {
44
+ readonly name: "data";
45
+ readonly type: "bytes";
46
+ readonly internalType: "bytes";
47
+ }];
48
+ readonly outputs: readonly [{
49
+ readonly name: "returnData";
50
+ readonly type: "bytes";
51
+ readonly internalType: "bytes";
52
+ }];
53
+ readonly stateMutability: "payable";
54
+ }, {
55
+ readonly type: "function";
56
+ readonly name: "executeCall";
57
+ readonly inputs: readonly [{
58
+ readonly name: "target";
59
+ readonly type: "address";
60
+ readonly internalType: "address";
61
+ }, {
62
+ readonly name: "data";
63
+ readonly type: "bytes";
64
+ readonly internalType: "bytes";
65
+ }];
66
+ readonly outputs: readonly [{
67
+ readonly name: "";
68
+ readonly type: "bytes";
69
+ readonly internalType: "bytes";
70
+ }];
71
+ readonly stateMutability: "payable";
72
+ }, {
73
+ readonly type: "function";
74
+ readonly name: "executeTransfer";
75
+ readonly inputs: readonly [{
76
+ readonly name: "coin";
77
+ readonly type: "address";
78
+ readonly internalType: "contract IERC20";
79
+ }, {
80
+ readonly name: "account";
81
+ readonly type: "address";
82
+ readonly internalType: "address";
83
+ }, {
84
+ readonly name: "amount";
85
+ readonly type: "uint256";
86
+ readonly internalType: "uint256";
87
+ }];
88
+ readonly outputs: readonly [];
89
+ readonly stateMutability: "nonpayable";
90
+ }, {
91
+ readonly type: "function";
92
+ readonly name: "executeTransfers";
93
+ readonly inputs: readonly [{
94
+ readonly name: "coin";
95
+ readonly type: "address";
96
+ readonly internalType: "contract IERC20";
97
+ }, {
98
+ readonly name: "accounts";
99
+ readonly type: "address[]";
100
+ readonly internalType: "address[]";
101
+ }, {
102
+ readonly name: "amounts";
103
+ readonly type: "uint256[]";
104
+ readonly internalType: "uint256[]";
105
+ }];
106
+ readonly outputs: readonly [];
107
+ readonly stateMutability: "nonpayable";
108
+ }, {
109
+ readonly type: "function";
110
+ readonly name: "initialize";
111
+ readonly inputs: readonly [{
112
+ readonly name: "managerAddress";
113
+ readonly type: "address";
114
+ readonly internalType: "address";
115
+ }, {
116
+ readonly name: "_ledger";
117
+ readonly type: "address";
118
+ readonly internalType: "contract FundLedger";
119
+ }];
120
+ readonly outputs: readonly [];
121
+ readonly stateMutability: "payable";
122
+ }, {
123
+ readonly type: "function";
124
+ readonly name: "ledger";
125
+ readonly inputs: readonly [];
126
+ readonly outputs: readonly [{
127
+ readonly name: "";
128
+ readonly type: "address";
129
+ readonly internalType: "contract FundLedger";
130
+ }];
131
+ readonly stateMutability: "view";
132
+ }, {
133
+ readonly type: "function";
134
+ readonly name: "manager";
135
+ readonly inputs: readonly [];
136
+ readonly outputs: readonly [{
137
+ readonly name: "";
138
+ readonly type: "address";
139
+ readonly internalType: "address";
140
+ }];
141
+ readonly stateMutability: "view";
142
+ }, {
143
+ readonly type: "function";
144
+ readonly name: "protocol";
145
+ readonly inputs: readonly [];
146
+ readonly outputs: readonly [{
147
+ readonly name: "";
148
+ readonly type: "address";
149
+ readonly internalType: "contract Protocol";
150
+ }];
151
+ readonly stateMutability: "view";
152
+ }, {
153
+ readonly type: "function";
154
+ readonly name: "updateController";
155
+ readonly inputs: readonly [{
156
+ readonly name: "newController";
157
+ readonly type: "address";
158
+ readonly internalType: "address";
159
+ }];
160
+ readonly outputs: readonly [];
161
+ readonly stateMutability: "nonpayable";
162
+ }, {
163
+ readonly type: "function";
164
+ readonly name: "updateLedger";
165
+ readonly inputs: readonly [{
166
+ readonly name: "newLedger";
167
+ readonly type: "address";
168
+ readonly internalType: "address";
169
+ }];
170
+ readonly outputs: readonly [];
171
+ readonly stateMutability: "nonpayable";
172
+ }, {
173
+ readonly type: "function";
174
+ readonly name: "updateManagerAddress";
175
+ readonly inputs: readonly [{
176
+ readonly name: "newManagerAddress";
177
+ readonly type: "address";
178
+ readonly internalType: "address";
179
+ }];
180
+ readonly outputs: readonly [];
181
+ readonly stateMutability: "nonpayable";
182
+ }, {
183
+ readonly type: "event";
184
+ readonly name: "ControllerUpdated";
185
+ readonly inputs: readonly [{
186
+ readonly name: "newController";
187
+ readonly type: "address";
188
+ readonly indexed: false;
189
+ readonly internalType: "address";
190
+ }];
191
+ readonly anonymous: false;
192
+ }, {
193
+ readonly type: "event";
194
+ readonly name: "Initialized";
195
+ readonly inputs: readonly [{
196
+ readonly name: "version";
197
+ readonly type: "uint64";
198
+ readonly indexed: false;
199
+ readonly internalType: "uint64";
200
+ }];
201
+ readonly anonymous: false;
202
+ }, {
203
+ readonly type: "event";
204
+ readonly name: "LedgerUpdated";
205
+ readonly inputs: readonly [{
206
+ readonly name: "newLedger";
207
+ readonly type: "address";
208
+ readonly indexed: true;
209
+ readonly internalType: "address";
210
+ }];
211
+ readonly anonymous: false;
212
+ }, {
213
+ readonly type: "event";
214
+ readonly name: "ManagerAddressUpdated";
215
+ readonly inputs: readonly [{
216
+ readonly name: "newManagerAddress";
217
+ readonly type: "address";
218
+ readonly indexed: false;
219
+ readonly internalType: "address";
220
+ }];
221
+ readonly anonymous: false;
222
+ }, {
223
+ readonly type: "error";
224
+ readonly name: "ControllerDisabled";
225
+ readonly inputs: readonly [];
226
+ }, {
227
+ readonly type: "error";
228
+ readonly name: "InvalidAddress";
229
+ readonly inputs: readonly [];
230
+ }, {
231
+ readonly type: "error";
232
+ readonly name: "InvalidInitialization";
233
+ readonly inputs: readonly [];
234
+ }, {
235
+ readonly type: "error";
236
+ readonly name: "LengthMismatch";
237
+ readonly inputs: readonly [];
238
+ }, {
239
+ readonly type: "error";
240
+ readonly name: "NotInitializing";
241
+ readonly inputs: readonly [];
242
+ }, {
243
+ readonly type: "error";
244
+ readonly name: "SafeERC20FailedOperation";
245
+ readonly inputs: readonly [{
246
+ readonly name: "token";
247
+ readonly type: "address";
248
+ readonly internalType: "address";
249
+ }];
250
+ }, {
251
+ readonly type: "error";
252
+ readonly name: "Unauthorized";
253
+ readonly inputs: readonly [];
254
+ }];
255
+ static createInterface(): FundVaultInterface;
256
+ static connect(address: string, runner?: ContractRunner | null): FundVault;
257
+ }
258
+ export {};