@pendle/core-v2 0.20.2-testnet → 1.0.0-mainnet

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 (454) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.dbg.json +4 -0
  11. package/build/artifacts/contracts/{interfaces/IApeStaking.sol/IApeStaking.json → LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.json} +52 -70
  12. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +4 -0
  13. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +310 -0
  14. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.dbg.json +4 -0
  15. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.json +389 -0
  16. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  23. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  26. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  28. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  32. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  33. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  34. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  37. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  39. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  41. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  43. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  45. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  48. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  50. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  70. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  73. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  75. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  77. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  79. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.json +2 -2
  81. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +5 -171
  85. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  87. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  88. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.json +0 -18
  89. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  90. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  91. package/build/artifacts/contracts/interfaces/IBoringOwnableUpgradeable.sol/IBoringOwnableUpgradeable.dbg.json +1 -1
  92. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  93. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  94. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +32 -80
  96. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json +40 -100
  98. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.json +16 -40
  100. package/build/artifacts/contracts/interfaces/IPActionSwapPTYT.sol/IPActionSwapPTYT.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +16 -40
  103. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +104 -260
  105. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  107. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.json +32 -43
  109. package/build/artifacts/contracts/interfaces/IPFeeDistributorFactory.sol/IPFeeDistributorFactory.dbg.json +4 -0
  110. package/build/artifacts/contracts/interfaces/{Balancer/IGauge.sol/IGauge.json → IPFeeDistributorFactory.sol/IPFeeDistributorFactory.json} +33 -18
  111. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  114. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  115. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  116. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  117. package/build/artifacts/contracts/interfaces/IREDACTEDStaking.sol/IREDACTEDStaking.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  119. package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
  121. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  122. package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.dbg.json +1 -1
  123. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  124. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  125. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  126. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +1 -1
  127. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +2 -42
  128. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
  129. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +98 -171
  130. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  131. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +53 -96
  132. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.dbg.json +1 -1
  133. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.json +2 -2
  134. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  135. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +61 -116
  136. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  137. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +2 -2
  138. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  139. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +25 -44
  140. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.dbg.json +1 -1
  141. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.json +2 -2
  142. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  143. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +25 -44
  144. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  145. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  146. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  147. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.json +1 -1
  148. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  149. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  150. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  151. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  152. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.dbg.json +4 -0
  153. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.json +224 -0
  154. package/build/artifacts/contracts/router/kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.dbg.json +4 -0
  155. package/build/artifacts/contracts/router/kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.json +35 -0
  156. package/build/artifacts/contracts/router/kyberswap/IMultihopRouter.sol/IMultihopRouter.dbg.json +4 -0
  157. package/build/artifacts/contracts/router/kyberswap/IMultihopRouter.sol/IMultihopRouter.json +136 -0
  158. package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +4 -0
  159. package/build/artifacts/contracts/{interfaces/Balancer/IRateProvider.sol/IRateProvider.json → router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.json} +5 -5
  160. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +9 -7
  161. package/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol +159 -0
  162. package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol +99 -0
  163. package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol +70 -0
  164. package/contracts/core/BulkSeller/BulkSeller.sol +1 -1
  165. package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +3 -1
  166. package/contracts/core/libraries/ArrayLib.sol +0 -12
  167. package/contracts/core/libraries/Errors.sol +2 -19
  168. package/contracts/interfaces/ConvexCurve/IRewards.sol +0 -5
  169. package/contracts/interfaces/IPActionAddRemoveLiq.sol +1 -1
  170. package/contracts/interfaces/IPActionMintRedeem.sol +3 -2
  171. package/contracts/interfaces/IPActionSwapPT.sol +1 -1
  172. package/contracts/interfaces/IPActionSwapPTYT.sol +1 -1
  173. package/contracts/interfaces/IPActionSwapYT.sol +1 -1
  174. package/contracts/interfaces/IPFeeDistributor.sol +10 -12
  175. package/contracts/interfaces/IPFeeDistributorFactory.sol +14 -0
  176. package/contracts/offchain-helpers/MarketMathStatic.sol +88 -181
  177. package/contracts/offchain-helpers/RouterStatic.sol +72 -72
  178. package/contracts/router/ActionAddRemoveLiq.sol +2 -2
  179. package/contracts/router/ActionMintRedeem.sol +9 -7
  180. package/contracts/router/ActionSwapPT.sol +2 -2
  181. package/contracts/router/ActionSwapYT.sol +2 -2
  182. package/contracts/router/base/ActionBaseMintRedeem.sol +14 -51
  183. package/contracts/router/kyberswap/AggregationRouterHelper.sol +317 -0
  184. package/contracts/router/kyberswap/IAggregatorRouterHelper.sol +10 -0
  185. package/contracts/router/kyberswap/IMultihopRouter.sol +139 -0
  186. package/contracts/router/kyberswap/KyberSwapHelper.sol +79 -0
  187. package/deployments/1-core.json +29 -0
  188. package/deployments/1-markets/FRAXUSDC-CURVELP-MARCH30.json +11 -0
  189. package/deployments/1-markets/LOOKS-STAKING-MARCH30.json +10 -0
  190. package/deployments/1-markets/STETH-JUNE29.json +10 -0
  191. package/deployments/1-markets/STETH-MARCH30.json +10 -0
  192. package/package.json +6 -6
  193. package/typechain-types/ActionAddRemoveLiq.ts +35 -41
  194. package/typechain-types/ActionBaseMintRedeem.ts +8 -8
  195. package/typechain-types/ActionMintRedeem.ts +42 -45
  196. package/typechain-types/ActionSwapPT.ts +22 -28
  197. package/typechain-types/ActionSwapYT.ts +22 -28
  198. package/typechain-types/IPActionAddRemoveLiq.ts +16 -22
  199. package/typechain-types/IPActionMintRedeem.ts +23 -26
  200. package/typechain-types/IPActionSwapPT.ts +14 -20
  201. package/typechain-types/IPActionSwapYT.ts +14 -20
  202. package/typechain-types/IPAllAction.ts +31 -34
  203. package/typechain-types/IPFeeDistributor.ts +78 -61
  204. package/typechain-types/IPFeeDistributorFactory.ts +139 -53
  205. package/typechain-types/IRewards.ts +5 -35
  206. package/typechain-types/MarketMathStatic.ts +0 -49
  207. package/typechain-types/PendleFeeDistributor.ts +117 -409
  208. package/typechain-types/RouterStatic.ts +69 -40
  209. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +56 -99
  210. package/typechain-types/factories/ActionBaseMintRedeem__factory.ts +1 -1
  211. package/typechain-types/factories/ActionCallback__factory.ts +1 -1
  212. package/typechain-types/factories/ActionMintRedeem__factory.ts +64 -119
  213. package/typechain-types/factories/ActionMisc__factory.ts +1 -1
  214. package/typechain-types/factories/ActionSwapPTYT__factory.ts +1 -1
  215. package/typechain-types/factories/ActionSwapPT__factory.ts +28 -47
  216. package/typechain-types/factories/ActionSwapYT__factory.ts +28 -47
  217. package/typechain-types/factories/AggregationRouterHelper__factory.ts +1 -1
  218. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  219. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  220. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  221. package/typechain-types/factories/Errors__factory.ts +4 -170
  222. package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +32 -80
  223. package/typechain-types/factories/IPActionMintRedeem__factory.ts +40 -100
  224. package/typechain-types/factories/IPActionSwapPT__factory.ts +16 -40
  225. package/typechain-types/factories/IPActionSwapYT__factory.ts +16 -40
  226. package/typechain-types/factories/IPAllAction__factory.ts +104 -260
  227. package/typechain-types/factories/IPFeeDistributorFactory__factory.ts +34 -25
  228. package/typechain-types/factories/IPFeeDistributor__factory.ts +31 -42
  229. package/typechain-types/factories/IRewards__factory.ts +0 -18
  230. package/typechain-types/factories/MarketMathStatic__factory.ts +1 -41
  231. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  232. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  233. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  234. package/typechain-types/factories/PendleFeeDistributorFactory__factory.ts +1 -1
  235. package/typechain-types/factories/PendleFeeDistributor__factory.ts +66 -341
  236. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  237. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  238. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  239. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  240. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  241. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  242. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  243. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  244. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  245. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  246. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  247. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  248. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  249. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  250. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  251. package/typechain-types/factories/RouterStatic__factory.ts +41 -118
  252. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  253. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  254. package/typechain-types/hardhat.d.ts +56 -263
  255. package/typechain-types/index.ts +16 -62
  256. package/README.md +0 -28
  257. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +0 -4
  258. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +0 -592
  259. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +0 -4
  260. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.json +0 -50
  261. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +0 -4
  262. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +0 -1075
  263. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.dbg.json +0 -4
  264. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.json +0 -1296
  265. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.dbg.json +0 -4
  266. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.json +0 -1283
  267. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.dbg.json +0 -4
  268. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.json +0 -1218
  269. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.dbg.json +0 -4
  270. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.json +0 -1231
  271. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +0 -4
  272. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +0 -10
  273. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +0 -4
  274. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +0 -133
  275. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +0 -4
  276. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.json +0 -10
  277. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +0 -4
  278. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.json +0 -40
  279. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +0 -4
  280. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +0 -322
  281. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.dbg.json +0 -4
  282. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.json +0 -1171
  283. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +0 -4
  284. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.json +0 -10
  285. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +0 -4
  286. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.json +0 -133
  287. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +0 -4
  288. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.json +0 -10
  289. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +0 -4
  290. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.json +0 -24
  291. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +0 -4
  292. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.json +0 -133
  293. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +0 -4
  294. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.json +0 -328
  295. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +0 -4
  296. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.json +0 -467
  297. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +0 -4
  298. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +0 -4
  299. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.json +0 -30
  300. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +0 -4
  301. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.json +0 -398
  302. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +0 -4
  303. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +0 -4
  304. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.json +0 -278
  305. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +0 -4
  306. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +0 -4
  307. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.json +0 -322
  308. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +0 -4
  309. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.json +0 -160
  310. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +0 -4
  311. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.json +0 -10
  312. package/build/artifacts/contracts/router/swap-aggregator/ISwapAggregator.sol/ISwapAggregator.dbg.json +0 -4
  313. package/build/artifacts/contracts/router/swap-aggregator/ISwapAggregator.sol/ISwapAggregator.json +0 -51
  314. package/build/artifacts/contracts/router/swap-aggregator/SwapAggregator.sol/SwapAggregator.dbg.json +0 -4
  315. package/build/artifacts/contracts/router/swap-aggregator/SwapAggregator.sol/SwapAggregator.json +0 -256
  316. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol/KyberAggregationRouterHelper.dbg.json +0 -4
  317. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol/KyberAggregationRouterHelper.json +0 -10
  318. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.dbg.json +0 -4
  319. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.json +0 -10
  320. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
  321. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.json +0 -65
  322. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +0 -4
  323. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.json +0 -359
  324. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol/IHashflow.dbg.json +0 -4
  325. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol/IHashflow.json +0 -101
  326. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.dbg.json +0 -4
  327. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.json +0 -183
  328. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
  329. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json +0 -215
  330. package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +0 -224
  331. package/contracts/core/StandardizedYield/StEthHelper.sol +0 -71
  332. package/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol +0 -197
  333. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol +0 -170
  334. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol +0 -162
  335. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol +0 -134
  336. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol +0 -154
  337. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol +0 -289
  338. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol +0 -618
  339. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol +0 -68
  340. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol +0 -322
  341. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol +0 -390
  342. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol +0 -329
  343. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol +0 -30
  344. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol +0 -189
  345. package/contracts/interfaces/Balancer/IAsset.sol +0 -4
  346. package/contracts/interfaces/Balancer/IBalancerFees.sol +0 -6
  347. package/contracts/interfaces/Balancer/IBalancerStablePreview.sol +0 -22
  348. package/contracts/interfaces/Balancer/IBasePool.sol +0 -30
  349. package/contracts/interfaces/Balancer/IComposableStable.sol +0 -39
  350. package/contracts/interfaces/Balancer/IGauge.sol +0 -10
  351. package/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol +0 -6
  352. package/contracts/interfaces/Balancer/IMetaStablePool.sol +0 -31
  353. package/contracts/interfaces/Balancer/IRateProvider.sol +0 -6
  354. package/contracts/interfaces/Balancer/IVault.sol +0 -78
  355. package/contracts/interfaces/IApeStaking.sol +0 -30
  356. package/contracts/offchain-helpers/Multicall2.sol +0 -103
  357. package/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol +0 -45
  358. package/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol +0 -71
  359. package/contracts/router/swap-aggregator/ISwapAggregator.sol +0 -21
  360. package/contracts/router/swap-aggregator/SwapAggregator.sol +0 -62
  361. package/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol +0 -302
  362. package/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol +0 -134
  363. package/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol +0 -17
  364. package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol +0 -185
  365. package/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol +0 -30
  366. package/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol +0 -33
  367. package/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol +0 -42
  368. package/deployments/43113-core.json +0 -29
  369. package/deployments/43113-helper.json +0 -3
  370. package/deployments/43113-markets/APE-30-MARCH.json +0 -10
  371. package/deployments/43113-markets/USDC-FEB-2ND.json +0 -10
  372. package/deployments/43113-markets/USDC-FEB-4TH.json +0 -10
  373. package/deployments/43113-markets/WETH-FEB-2ND.json +0 -11
  374. package/deployments/43113-markets/WETH-FEB-4TH.json +0 -11
  375. package/deployments/43113-testenv.json +0 -22
  376. package/deployments/80001-core.json +0 -28
  377. package/deployments/80001-helper.json +0 -3
  378. package/deployments/80001-markets/USDC-FEB-4TH.json +0 -10
  379. package/deployments/80001-markets/WETH-FEB-4TH.json +0 -11
  380. package/deployments/80001-testenv.json +0 -22
  381. package/typechain-types/BribeDistributor.ts +0 -363
  382. package/typechain-types/ComposableStablePreview.ts +0 -217
  383. package/typechain-types/DistributorBase.ts +0 -363
  384. package/typechain-types/FeeDistributor.ts +0 -416
  385. package/typechain-types/I1inchAggregationRouterV5.ts +0 -257
  386. package/typechain-types/IAggregationExecutor.ts +0 -182
  387. package/typechain-types/IApeStaking.ts +0 -305
  388. package/typechain-types/IBalancerFees.ts +0 -89
  389. package/typechain-types/IBalancerStablePreview.ts +0 -217
  390. package/typechain-types/IBasePool.ts +0 -482
  391. package/typechain-types/IComposableStable.ts +0 -730
  392. package/typechain-types/IExecutorHelperEthereum1.ts +0 -599
  393. package/typechain-types/IGauge.ts +0 -160
  394. package/typechain-types/IHashflow.ts +0 -159
  395. package/typechain-types/IKyberSwapAggregationRouterHelper.ts +0 -109
  396. package/typechain-types/ILiquidityGaugeFactory.ts +0 -99
  397. package/typechain-types/IMetaAggregationRouter.ts +0 -213
  398. package/typechain-types/IMetaAggregationRouterV2.ts +0 -221
  399. package/typechain-types/IMetaStablePool.ts +0 -619
  400. package/typechain-types/IMultihopRouterEthereum.ts +0 -209
  401. package/typechain-types/IRateProvider.ts +0 -81
  402. package/typechain-types/ISwapAggregator.ts +0 -124
  403. package/typechain-types/IVault.ts +0 -410
  404. package/typechain-types/MetaStableMath.ts +0 -113
  405. package/typechain-types/MetaStablePreview.ts +0 -501
  406. package/typechain-types/Multicall2.ts +0 -437
  407. package/typechain-types/PendleApeStakingSY.ts +0 -1135
  408. package/typechain-types/PendleAura3EthSY.ts +0 -1639
  409. package/typechain-types/PendleAuraBalancerStableLPSY.ts +0 -1523
  410. package/typechain-types/PendleAuraCbethWstethSY.ts +0 -1626
  411. package/typechain-types/PendleAuraWethRethSY.ts +0 -1549
  412. package/typechain-types/PendleAuraWethWstethSY.ts +0 -1562
  413. package/typechain-types/SAPE.ts +0 -1395
  414. package/typechain-types/SYBaseAutoCompound.ts +0 -1203
  415. package/typechain-types/StEthHelper.ts +0 -107
  416. package/typechain-types/StablePreviewBase.ts +0 -217
  417. package/typechain-types/SwapAggregator.ts +0 -406
  418. package/typechain-types/factories/BribeDistributor__factory.ts +0 -303
  419. package/typechain-types/factories/ComposableStablePreview__factory.ts +0 -190
  420. package/typechain-types/factories/DistributorBase__factory.ts +0 -249
  421. package/typechain-types/factories/FeeDistributor__factory.ts +0 -339
  422. package/typechain-types/factories/I1inchAggregationRouterV5__factory.ts +0 -179
  423. package/typechain-types/factories/IAggregationExecutor__factory.ts +0 -84
  424. package/typechain-types/factories/IApeStaking__factory.ts +0 -161
  425. package/typechain-types/factories/IBalancerFees__factory.ts +0 -36
  426. package/typechain-types/factories/IBalancerStablePreview__factory.ts +0 -152
  427. package/typechain-types/factories/IBasePool__factory.ts +0 -340
  428. package/typechain-types/factories/IComposableStable__factory.ts +0 -482
  429. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +0 -378
  430. package/typechain-types/factories/IGauge__factory.ts +0 -70
  431. package/typechain-types/factories/IHashflow__factory.ts +0 -113
  432. package/typechain-types/factories/IKyberSwapAggregationRouterHelper__factory.ts +0 -56
  433. package/typechain-types/factories/ILiquidityGaugeFactory__factory.ts +0 -49
  434. package/typechain-types/factories/IMetaAggregationRouterV2__factory.ts +0 -234
  435. package/typechain-types/factories/IMetaAggregationRouter__factory.ts +0 -202
  436. package/typechain-types/factories/IMetaStablePool__factory.ts +0 -413
  437. package/typechain-types/factories/IMultihopRouterEthereum__factory.ts +0 -155
  438. package/typechain-types/factories/IRateProvider__factory.ts +0 -36
  439. package/typechain-types/factories/ISwapAggregator__factory.ts +0 -66
  440. package/typechain-types/factories/IVault__factory.ts +0 -287
  441. package/typechain-types/factories/MetaStableMath__factory.ts +0 -93
  442. package/typechain-types/factories/MetaStablePreview__factory.ts +0 -375
  443. package/typechain-types/factories/Multicall2__factory.ts +0 -372
  444. package/typechain-types/factories/PendleApeStakingSY__factory.ts +0 -981
  445. package/typechain-types/factories/PendleAura3EthSY__factory.ts +0 -1365
  446. package/typechain-types/factories/PendleAuraBalancerStableLPSY__factory.ts +0 -1190
  447. package/typechain-types/factories/PendleAuraCbethWstethSY__factory.ts +0 -1356
  448. package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +0 -1291
  449. package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +0 -1304
  450. package/typechain-types/factories/SAPE__factory.ts +0 -1142
  451. package/typechain-types/factories/SYBaseAutoCompound__factory.ts +0 -942
  452. package/typechain-types/factories/StEthHelper__factory.ts +0 -62
  453. package/typechain-types/factories/StablePreviewBase__factory.ts +0 -148
  454. package/typechain-types/factories/SwapAggregator__factory.ts +0 -309
@@ -5,18 +5,20 @@ library LayerZeroHelper {
5
5
  uint256 constant EVM_ADDRESS_SIZE = 20;
6
6
 
7
7
  function _getLayerZeroChainIds(uint256 chainId) internal pure returns (uint16) {
8
- if (chainId == 43113) return 10106; // fuji testnet
9
- else if (chainId == 80001) return 10109; // mumbai testnet
10
- else if (chainId == 43114) return 106; // avax mainnet
11
- else if (chainId == 42161) return 110; // arbitrum one
8
+ if (chainId == 43113) return 10106;
9
+ // fuji testnet
10
+ else if (chainId == 80001) return 10109;
11
+ // mumbai testnet
12
+ else if (chainId == 43114) return 106; // avax mainnet
12
13
  assert(false);
13
14
  }
14
15
 
15
16
  function _getOriginalChainIds(uint16 chainId) internal pure returns (uint256) {
16
- if (chainId == 10106) return 43113; // fuji testnet
17
- else if (chainId == 10109) return 80001; // mumbai testnet
17
+ if (chainId == 10106) return 43113;
18
+ // fuji testnet
19
+ else if (chainId == 10109) return 80001;
20
+ // mumbai testnet
18
21
  else if (chainId == 106) return 43114; // avax mainnet
19
- else if (chainId == 110) return 42161; // arbitrum one
20
22
  assert(false);
21
23
  }
22
24
 
@@ -0,0 +1,159 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ import "./PendleFeeDistributor.sol";
5
+ import "../../interfaces/IPVotingEscrowMainchain.sol";
6
+ import "../../interfaces/IPVotingController.sol";
7
+ import "../../interfaces/IPFeeDistributorFactory.sol";
8
+ import "../../core/libraries/BoringOwnableUpgradeable.sol";
9
+ import "../libraries/VeHistoryLib.sol";
10
+ import "../libraries/WeekMath.sol";
11
+
12
+ abstract contract EpochResultManager is IPFeeDistributorFactory {
13
+ using Math for uint256;
14
+ using ArrayLib for address[];
15
+ using VeBalanceLib for VeBalance;
16
+ using CheckpointHelper for Checkpoint;
17
+
18
+ struct UserInfo {
19
+ uint128 timestamp;
20
+ uint128 iter;
21
+ }
22
+
23
+ address public immutable votingController;
24
+ address public immutable vePendle;
25
+
26
+ // [user, pool] => UserInfo
27
+ mapping(address => mapping(address => UserInfo)) public userInfo;
28
+
29
+ // [user, pool, epoch] => share
30
+ mapping(address => mapping(address => mapping(uint256 => uint256))) internal userShareAtEpoch;
31
+
32
+ constructor(address _votingController, address _vePendle) {
33
+ votingController = _votingController;
34
+ vePendle = _vePendle;
35
+ }
36
+
37
+ function updateUserShare(address user, address pool) external {
38
+ _updateExternalGlobalShares(pool);
39
+ _updateUserShare(user, pool);
40
+ }
41
+
42
+ function getUserAndTotalSharesAt(
43
+ address user,
44
+ address pool,
45
+ uint256 epoch
46
+ ) external view returns (uint256 userShare, uint256 totalShare) {
47
+ userShare = userShareAtEpoch[user][pool][epoch];
48
+ totalShare = _getExternalTotalShares(pool, epoch.Uint128());
49
+ }
50
+
51
+ function _updateUserShare(address user, address pool) internal {
52
+ uint128 currentEpoch = WeekMath.getCurrentWeekStart();
53
+ uint128 userEpoch = userInfo[user][pool].timestamp;
54
+
55
+ if (userEpoch == currentEpoch) return;
56
+ if (userEpoch == 0) userEpoch = _getPoolStartTime(pool);
57
+
58
+ uint256 length = _getExternalUserHistoryLength(user, pool);
59
+ if (length == 0) {
60
+ userInfo[user][pool].timestamp = currentEpoch;
61
+ return;
62
+ }
63
+
64
+ uint128 iter = userInfo[user][pool].iter;
65
+ Checkpoint memory lowerCheckpoint = _getExternalUserCheckpointAt(user, pool, iter);
66
+ Checkpoint memory upperCheckpoint;
67
+
68
+ if (iter + 1 < length) {
69
+ upperCheckpoint = _getExternalUserCheckpointAt(user, pool, iter + 1);
70
+ }
71
+
72
+ while (userEpoch < currentEpoch) {
73
+ userEpoch += WeekMath.WEEK;
74
+
75
+ iter = _moveIterToNextEpoch(
76
+ user,
77
+ pool,
78
+ length,
79
+ iter,
80
+ lowerCheckpoint,
81
+ upperCheckpoint,
82
+ userEpoch
83
+ );
84
+
85
+ if (userEpoch >= lowerCheckpoint.timestamp) {
86
+ userShareAtEpoch[user][pool][userEpoch] = lowerCheckpoint.value.getValueAt(
87
+ userEpoch
88
+ );
89
+ }
90
+ }
91
+
92
+ userInfo[user][pool] = UserInfo({ timestamp: currentEpoch, iter: iter });
93
+ }
94
+
95
+ function _moveIterToNextEpoch(
96
+ address user,
97
+ address pool,
98
+ uint256 userHistoryLength,
99
+ uint128 iter,
100
+ Checkpoint memory lowerCheckpoint,
101
+ Checkpoint memory upperCheckpoint,
102
+ uint128 nextEpoch
103
+ ) internal view returns (uint128) {
104
+ while (iter + 1 < userHistoryLength && nextEpoch > upperCheckpoint.timestamp) {
105
+ lowerCheckpoint.assignWith(upperCheckpoint);
106
+ if (iter + 2 < userHistoryLength) {
107
+ upperCheckpoint.assignWith(_getExternalUserCheckpointAt(user, pool, iter + 2));
108
+ }
109
+ ++iter;
110
+ }
111
+ return iter;
112
+ }
113
+
114
+ function _updateExternalGlobalShares(address pool) internal {
115
+ if (pool == vePendle) {
116
+ IPVeToken(vePendle).totalSupplyCurrent();
117
+ } else {
118
+ IPVotingController(votingController).applyPoolSlopeChanges(pool);
119
+ }
120
+ }
121
+
122
+ function _getExternalTotalShares(address pool, uint128 timestamp)
123
+ internal
124
+ view
125
+ returns (uint256)
126
+ {
127
+ if (pool == vePendle) {
128
+ return IPVotingEscrowMainchain(vePendle).totalSupplyAt(timestamp);
129
+ } else {
130
+ return IPVotingController(votingController).getPoolTotalVoteAt(pool, timestamp);
131
+ }
132
+ }
133
+
134
+ function _getExternalUserCheckpointAt(
135
+ address user,
136
+ address pool,
137
+ uint256 index
138
+ ) internal view returns (Checkpoint memory) {
139
+ if (pool == vePendle) {
140
+ return IPVotingEscrowMainchain(vePendle).getUserHistoryAt(user, index);
141
+ } else {
142
+ return IPVotingController(votingController).getUserPoolHistoryAt(user, pool, index);
143
+ }
144
+ }
145
+
146
+ function _getExternalUserHistoryLength(address user, address pool)
147
+ internal
148
+ view
149
+ returns (uint256)
150
+ {
151
+ if (pool == vePendle) {
152
+ return IPVotingEscrowMainchain(vePendle).getUserHistoryLength(user);
153
+ } else {
154
+ return IPVotingController(votingController).getUserPoolHistoryLength(user, pool);
155
+ }
156
+ }
157
+
158
+ function _getPoolStartTime(address pool) internal view virtual returns (uint64);
159
+ }
@@ -0,0 +1,99 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ import "../../core/libraries/math/Math.sol";
5
+ import "../../core/libraries/ArrayLib.sol";
6
+ import "../../core/libraries/MiniHelpers.sol";
7
+ import "../../core/libraries/Errors.sol";
8
+ import "../../core/libraries/BoringOwnableUpgradeable.sol";
9
+
10
+ import "../libraries/WeekMath.sol";
11
+ import "../libraries/VeHistoryLib.sol";
12
+
13
+ import "../../interfaces/IPFeeDistributor.sol";
14
+ import "../../interfaces/IPFeeDistributorFactory.sol";
15
+
16
+ import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
17
+
18
+ contract PendleFeeDistributor is IPFeeDistributor, BoringOwnableUpgradeable {
19
+ using Math for uint256;
20
+ using SafeERC20 for IERC20;
21
+ using ArrayLib for address[];
22
+ using VeBalanceLib for VeBalance;
23
+
24
+ address public immutable factory;
25
+ address public immutable pool;
26
+ address public immutable rewardToken;
27
+ uint256 public immutable startEpoch;
28
+
29
+ uint256 public lastFinishedEpoch;
30
+
31
+ // [user] => [epoch]
32
+ mapping(address => uint256) public userLastClaimedEpoch;
33
+
34
+ // [epoch] => [incentive]
35
+ mapping(uint256 => uint256) public incentivesForEpoch;
36
+
37
+ constructor(
38
+ address _pool,
39
+ address _rewardToken,
40
+ uint256 _startEpoch
41
+ ) initializer {
42
+ pool = _pool;
43
+ factory = msg.sender;
44
+ rewardToken = _rewardToken;
45
+ startEpoch = _startEpoch;
46
+ lastFinishedEpoch = _startEpoch;
47
+ __BoringOwnable_init();
48
+ }
49
+
50
+ function fund(uint256[] calldata rewardsForEpoch) external onlyOwner {
51
+ uint256 epoch = lastFinishedEpoch;
52
+ uint256 totalRewardFunding = 0;
53
+ for (uint256 i = 0; i < rewardsForEpoch.length; ++i) {
54
+ epoch += WeekMath.WEEK;
55
+ uint256 incentive = rewardsForEpoch[i];
56
+
57
+ incentivesForEpoch[epoch] += incentive;
58
+ totalRewardFunding += incentive;
59
+
60
+ emit Fund(epoch, incentive);
61
+ }
62
+
63
+ if (epoch > WeekMath.getCurrentWeekStart()) revert Errors.FDCantFundFutureEpoch();
64
+
65
+ IERC20(rewardToken).transferFrom(msg.sender, address(this), totalRewardFunding);
66
+ lastFinishedEpoch = epoch;
67
+ }
68
+
69
+ function claimReward(address user) external returns (uint256 amountRewardOut) {
70
+ IPFeeDistributorFactory(factory).updateUserShare(user, pool);
71
+
72
+ uint256 finishedEpoch = lastFinishedEpoch;
73
+ uint256 userEpoch = userLastClaimedEpoch[user];
74
+
75
+ if (userEpoch == finishedEpoch) return 0;
76
+ if (userEpoch == 0) userEpoch = startEpoch;
77
+
78
+ while (userEpoch < finishedEpoch) {
79
+ userEpoch += WeekMath.WEEK;
80
+
81
+ uint256 incentive = incentivesForEpoch[userEpoch];
82
+ if (incentive == 0) continue;
83
+
84
+ (uint256 userShare, uint256 totalShare) = IPFeeDistributorFactory(factory)
85
+ .getUserAndTotalSharesAt(user, pool, userEpoch);
86
+
87
+ if (userShare == 0) continue;
88
+
89
+ amountRewardOut += (userShare * incentive) / totalShare;
90
+ }
91
+
92
+ userLastClaimedEpoch[user] = finishedEpoch;
93
+ if (amountRewardOut > 0) {
94
+ IERC20(rewardToken).safeTransfer(user, amountRewardOut);
95
+ }
96
+
97
+ emit ClaimReward(user, rewardToken, finishedEpoch, amountRewardOut);
98
+ }
99
+ }
@@ -0,0 +1,70 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ import "./PendleFeeDistributor.sol";
5
+ import "./EpochResultManager.sol";
6
+
7
+ import "../../core/libraries/BaseSplitCodeFactory.sol";
8
+
9
+ import "../../interfaces/IBoringOwnableUpgradeable.sol";
10
+ import "../../interfaces/IPFeeDistributorFactory.sol";
11
+
12
+ contract PendleFeeDistributorFactory is BoringOwnableUpgradeable, EpochResultManager {
13
+ using Math for uint256;
14
+
15
+ struct PoolInfo {
16
+ address distributor;
17
+ uint64 startTime;
18
+ }
19
+
20
+ address public immutable feeDistributorCreationCodeContractA;
21
+ uint256 public immutable feeDistributorCreationCodeSizeA;
22
+ address public immutable feeDistributorCreationCodeContractB;
23
+ uint256 public immutable feeDistributorCreationCodeSizeB;
24
+
25
+ address public immutable rewardToken;
26
+ uint256 public lastFinishedEpoch;
27
+ mapping(address => PoolInfo) public poolInfos;
28
+
29
+ constructor(
30
+ address _rewardToken,
31
+ address _votingController,
32
+ address _vePendle,
33
+ address _feeDistributorCreationCodeContractA,
34
+ uint256 _feeDistributorCreationCodeSizeA,
35
+ address _feeDistributorCreationCodeContractB,
36
+ uint256 _feeDistributorCreationCodeSizeB
37
+ ) EpochResultManager(_votingController, _vePendle) initializer {
38
+ __BoringOwnable_init();
39
+ rewardToken = _rewardToken;
40
+ feeDistributorCreationCodeContractA = _feeDistributorCreationCodeContractA;
41
+ feeDistributorCreationCodeSizeA = _feeDistributorCreationCodeSizeA;
42
+ feeDistributorCreationCodeContractB = _feeDistributorCreationCodeContractB;
43
+ feeDistributorCreationCodeSizeB = _feeDistributorCreationCodeSizeB;
44
+ }
45
+
46
+ function createFeeDistributor(address pool, uint64 startTime)
47
+ external
48
+ onlyOwner
49
+ returns (address distributor)
50
+ {
51
+ if (poolInfos[pool].distributor != address(0))
52
+ revert Errors.FDFactoryDistributorAlreadyExisted(pool, poolInfos[pool].distributor);
53
+
54
+ distributor = BaseSplitCodeFactory._create2(
55
+ 0,
56
+ bytes32(""),
57
+ abi.encode(pool, rewardToken, uint256(startTime)),
58
+ feeDistributorCreationCodeContractA,
59
+ feeDistributorCreationCodeSizeA,
60
+ feeDistributorCreationCodeContractB,
61
+ feeDistributorCreationCodeSizeB
62
+ );
63
+ IBoringOwnableUpgradeable(distributor).transferOwnership(msg.sender, true, false);
64
+ poolInfos[pool] = PoolInfo({ distributor: distributor, startTime: startTime });
65
+ }
66
+
67
+ function _getPoolStartTime(address pool) internal view virtual override returns (uint64) {
68
+ return poolInfos[pool].startTime;
69
+ }
70
+ }
@@ -83,7 +83,7 @@ contract BulkSeller is IPBulkSeller, Initializable, TokenHelper, ReentrancyGuard
83
83
  else {
84
84
  uint256 netSyReceived = _selfBalance(SY) - state.totalSy;
85
85
  if (netSyReceived < exactSyIn)
86
- revert Errors.BulkInsufficientSyReceived(netSyReceived, exactSyIn);
86
+ revert Errors.BulkInsufficientSyReceived(exactSyIn, netSyReceived);
87
87
  }
88
88
 
89
89
  netTokenOut = state.swapExactSyForToken(exactSyIn);
@@ -29,6 +29,7 @@ abstract contract SYBaseWithRewards is SYBase, RewardManager {
29
29
  virtual
30
30
  override
31
31
  nonReentrant
32
+ whenNotPaused
32
33
  returns (uint256[] memory rewardAmounts)
33
34
  {
34
35
  _updateAndDistributeRewards(user);
@@ -73,6 +74,7 @@ abstract contract SYBaseWithRewards is SYBase, RewardManager {
73
74
  function rewardIndexesCurrent()
74
75
  external
75
76
  override
77
+ whenNotPaused
76
78
  nonReentrant
77
79
  returns (uint256[] memory indexes)
78
80
  {
@@ -120,7 +122,7 @@ abstract contract SYBaseWithRewards is SYBase, RewardManager {
120
122
  address from,
121
123
  address to,
122
124
  uint256
123
- ) internal virtual override {
125
+ ) internal virtual override whenNotPaused {
124
126
  _updateAndDistributeRewardsForTwo(from, to);
125
127
  }
126
128
  }
@@ -13,18 +13,6 @@ library ArrayLib {
13
13
  return value;
14
14
  }
15
15
 
16
- /// @notice return index of the element if found, else return uint256.max
17
- function find(address[] memory array, address element) internal pure returns (uint256 index) {
18
- uint256 length = array.length;
19
- for (uint256 i = 0; i < length; ) {
20
- if (array[i] == element) return i;
21
- unchecked {
22
- i++;
23
- }
24
- }
25
- return type(uint256).max;
26
- }
27
-
28
16
  function contains(address[] memory array, address element) internal pure returns (bool) {
29
17
  uint256 length = array.length;
30
18
  for (uint256 i = 0; i < length; ) {
@@ -111,10 +111,6 @@ library Errors {
111
111
  error SYCurveInvalidPid();
112
112
  error SYCurve3crvPoolNotFound();
113
113
 
114
- error SYApeDepositAmountTooSmall(uint256 amountDeposited);
115
- error SYBalancerInvalidPid();
116
- error SYInvalidRewardToken(address token);
117
-
118
114
  // Liquidity Mining
119
115
  error VCInactivePool(address pool);
120
116
  error VCPoolAlreadyActive(address pool);
@@ -140,16 +136,8 @@ library Errors {
140
136
  error ExpiryInThePast(uint256 expiry);
141
137
  error ChainNotSupported(uint256 chainId);
142
138
 
143
- error FDTotalAmountFundedNotMatch(uint256 actualTotalAmount, uint256 expectedTotalAmount);
144
- error FDEpochLengthMismatch();
145
- error FDInvalidPool(address pool);
146
- error FDPoolAlreadyExists(address pool);
147
- error FDInvalidNewFinishedEpoch(uint256 oldFinishedEpoch, uint256 newFinishedEpoch);
148
- error FDInvalidStartEpoch(uint256 startEpoch);
149
- error FDInvalidWTimeFund(uint256 lastFunded, uint256 wTime);
150
- error FDFutureFunding(uint256 lastFunded, uint256 currentWTime);
151
-
152
- error BDInvalidEpoch(uint256 epoch, uint256 startTime);
139
+ error FDCantFundFutureEpoch();
140
+ error FDFactoryDistributorAlreadyExisted(address pool, address distributor);
153
141
 
154
142
  // Cross-Chain
155
143
  error MsgNotFromSendEndpoint(uint16 srcChainId, bytes path);
@@ -163,14 +151,9 @@ library Errors {
163
151
  error ArrayEmpty();
164
152
  error ArrayOutOfBounds();
165
153
  error ZeroAddress();
166
- error FailedToSendEther();
167
154
 
168
155
  error OnlyLayerZeroEndpoint();
169
156
  error OnlyYT();
170
157
  error OnlyYCFactory();
171
158
  error OnlyWhitelisted();
172
-
173
- // Swap Aggregator
174
- error SAInsufficientTokenIn(address tokenIn, uint256 amountExpected, uint256 amountActual);
175
- error UnsupportedSelector(uint256 aggregatorType, bytes4 selector);
176
159
  }
@@ -14,11 +14,6 @@ interface IRewards {
14
14
 
15
15
  function exit(address) external;
16
16
 
17
- function getReward(
18
- address, /*_account*/
19
- bool /*_claimExtras*/
20
- ) external;
21
-
22
17
  function getReward() external;
23
18
 
24
19
  function queueNewRewards(uint256) external;
@@ -2,7 +2,7 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  import "../router/base/MarketApproxLib.sol";
5
- import "../router/base/ActionBaseMintRedeem.sol";
5
+ import "../router/kyberswap/KyberSwapHelper.sol";
6
6
 
7
7
  interface IPActionAddRemoveLiq {
8
8
  event AddLiquidityDualSyAndPt(
@@ -2,7 +2,7 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  import "../router/base/MarketApproxLib.sol";
5
- import "../router/base/ActionBaseMintRedeem.sol";
5
+ import "../router/kyberswap/KyberSwapHelper.sol";
6
6
 
7
7
  interface IPActionMintRedeem {
8
8
  event MintSyFromToken(
@@ -145,8 +145,9 @@ interface IPActionMintRedeem {
145
145
  struct RouterSwapAllStruct {
146
146
  // key-value pair
147
147
  address[] tokens;
148
- SwapData[] data;
148
+ bytes[] kybercalls;
149
149
  //
150
+ address kyberRouter;
150
151
  address outputToken;
151
152
  uint256 minTokenOut;
152
153
  }
@@ -2,7 +2,7 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  import "../router/base/MarketApproxLib.sol";
5
- import "../router/base/ActionBaseMintRedeem.sol";
5
+ import "../router/kyberswap/KyberSwapHelper.sol";
6
6
 
7
7
  interface IPActionSwapPT {
8
8
  event SwapPtAndSy(
@@ -2,7 +2,7 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  import "../router/base/MarketApproxLib.sol";
5
- import "../router/base/ActionBaseMintRedeem.sol";
5
+ import "../router/kyberswap/KyberSwapHelper.sol";
6
6
 
7
7
  interface IPActionSwapPTYT {
8
8
  event SwapPtAndYt(
@@ -2,7 +2,7 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  import "../router/base/MarketApproxLib.sol";
5
- import "../router/base/ActionBaseMintRedeem.sol";
5
+ import "../router/kyberswap/KyberSwapHelper.sol";
6
6
 
7
7
  interface IPActionSwapYT {
8
8
  event SwapYtAndSy(
@@ -2,20 +2,18 @@
2
2
  pragma solidity 0.8.17;
3
3
 
4
4
  interface IPFeeDistributor {
5
- event UpdateFee(address indexed pool, uint256 indexed wTime, uint256 amount);
5
+ event Fund(uint256 indexed epoch, uint256 incentive);
6
6
 
7
- event ClaimReward(address indexed pool, address indexed user, uint256 wTime, uint256 amount);
7
+ event ClaimReward(
8
+ address indexed user,
9
+ address indexed rewardToken,
10
+ uint256 lastEpochClaimed,
11
+ uint256 totalReward
12
+ );
8
13
 
9
- event PoolAdded(address indexed pool, uint256 indexed startWeek);
14
+ function fund(uint256[] calldata rewardsForEpoch) external;
10
15
 
11
- struct UserInfo {
12
- uint128 firstUnclaimedWeek;
13
- uint128 iter;
14
- }
16
+ function claimReward(address user) external returns (uint256 amountRewardOut);
15
17
 
16
- function claimReward(address user, address[] calldata pools)
17
- external
18
- returns (uint256[] memory amountRewardOut);
19
-
20
- function getAllPools() external view returns (address[] memory);
18
+ function incentivesForEpoch(uint256 epoch) external returns (uint256);
21
19
  }
@@ -0,0 +1,14 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ interface IPFeeDistributorFactory {
5
+ function lastFinishedEpoch() external returns (uint256);
6
+
7
+ function updateUserShare(address user, address pool) external;
8
+
9
+ function getUserAndTotalSharesAt(
10
+ address user,
11
+ address pool,
12
+ uint256 epoch
13
+ ) external view returns (uint256 userShare, uint256 totalShare);
14
+ }