@pendle/core-v2 0.16.6-testnet → 0.17.0-daily

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 (329) 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/FeeDistributor/EpochResultManager.sol/EpochResultManager.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.json +2 -2
  12. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  15. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  17. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  22. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +16 -5
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.json +0 -13
  26. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  32. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
  33. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.json +2 -2
  34. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -53
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  38. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  40. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  42. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  44. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +25 -13
  47. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +221 -50
  49. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  51. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.json +141 -0
  53. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.json +141 -0
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +143 -2
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +4 -0
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +1144 -0
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +4 -0
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +1209 -0
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +4 -0
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.json +10 -0
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.json +3 -82
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +4 -0
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.json +10 -0
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +4 -0
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/{ConvexCurveLP → base}/PendleConvexLPSY.sol/PendleConvexLPSY.json +142 -1
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +4 -0
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +997 -0
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +143 -2
  75. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  78. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  79. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +83 -10
  80. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  81. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +35 -4
  82. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.json +2 -2
  84. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.json +2 -2
  86. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.json +3 -38
  88. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.json +2 -2
  90. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  92. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.json +2 -2
  93. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  94. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +105 -31
  95. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.json +1 -1
  97. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.json +14 -7
  99. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +4 -0
  100. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.json +213 -0
  101. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.json +1 -1
  103. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +4 -0
  104. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.json +30 -0
  105. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +4 -0
  106. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.json +76 -0
  107. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +8 -8
  109. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json +18 -18
  111. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/IPActionSwapPTYT.sol/IPActionSwapPTYT.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  114. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +2 -2
  115. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  116. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +28 -28
  117. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.json +0 -38
  119. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  121. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.json +17 -5
  122. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  123. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.json +50 -19
  124. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  125. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.json +1 -1
  126. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  127. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  128. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  129. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.json +7 -7
  130. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  131. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.json +13 -0
  132. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  133. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  134. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.json +2 -2
  135. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  136. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +58 -2
  137. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +1 -1
  138. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +2 -46
  139. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
  140. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +138 -62
  141. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  142. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +11 -11
  143. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.dbg.json +1 -1
  144. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.json +2 -2
  145. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  146. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +20 -20
  147. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  148. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +2 -2
  149. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  150. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  151. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.dbg.json +1 -1
  152. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.json +3 -3
  153. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  154. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +4 -4
  155. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  156. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -186
  157. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  158. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  159. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  160. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  161. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  162. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.dbg.json +1 -1
  163. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.json +2 -2
  164. package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +1 -1
  165. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +1 -1
  166. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +1 -1
  167. package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +3 -6
  168. package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +1 -1
  169. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +7 -4
  170. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +10 -5
  171. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol +3 -6
  172. package/contracts/LiquidityMining/libraries/VeHistoryLib.sol +0 -5
  173. package/contracts/LiquidityMining/libraries/WeekMath.sol +1 -1
  174. package/contracts/core/BulkSeller/BulkSeller.sol +0 -15
  175. package/contracts/core/BulkSeller/BulkSellerFactory.sol +7 -6
  176. package/contracts/core/Market/MarketMathCore.sol +52 -11
  177. package/contracts/core/Market/PendleMarket.sol +35 -22
  178. package/contracts/core/Market/PendleMarketFactory.sol +67 -35
  179. package/contracts/core/StandardizedYield/SYBase.sol +26 -3
  180. package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +3 -1
  181. package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol +102 -0
  182. package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol +160 -0
  183. package/contracts/core/StandardizedYield/implementations/Convex/README.md +29 -0
  184. package/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol +215 -0
  185. package/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol +46 -26
  186. package/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol +152 -0
  187. package/contracts/core/StandardizedYield/implementations/Convex/{ConvexCurveLP → base}/PendleConvexLPSY.sol +0 -0
  188. package/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol +128 -0
  189. package/contracts/core/YieldContracts/PendlePrincipalToken.sol +3 -3
  190. package/contracts/core/YieldContracts/PendleYieldContractFactory.sol +30 -12
  191. package/contracts/core/YieldContracts/PendleYieldToken.sol +79 -22
  192. package/contracts/core/erc20/PendleERC20.sol +4 -7
  193. package/contracts/core/libraries/BaseSplitCodeFactory.sol +1 -1
  194. package/contracts/core/libraries/BoringOwnableUpgradeable.sol +1 -1
  195. package/contracts/core/libraries/Errors.sol +12 -2
  196. package/contracts/interfaces/ConvexCurve/IBooster.sol +1 -1
  197. package/contracts/interfaces/Curve/ICrvPool.sol +3 -4
  198. package/contracts/interfaces/Curve/ITriCrvPool.sol +41 -0
  199. package/contracts/interfaces/IERC4626.sol +1 -1
  200. package/contracts/interfaces/ILooksFeeSharing.sol +5 -0
  201. package/contracts/interfaces/ILooksStaking.sol +13 -0
  202. package/contracts/interfaces/IPActionAddRemoveLiq.sol +4 -4
  203. package/contracts/interfaces/IPActionMintRedeem.sol +8 -8
  204. package/contracts/interfaces/IPActionSwapYT.sol +2 -2
  205. package/contracts/interfaces/IPBulkSeller.sol +0 -4
  206. package/contracts/interfaces/IPMarket.sol +20 -4
  207. package/contracts/interfaces/IPMarketFactory.sol +15 -5
  208. package/contracts/interfaces/IPMsgSendEndpoint.sol +1 -1
  209. package/contracts/interfaces/IPYieldContractFactory.sol +2 -2
  210. package/contracts/interfaces/IPYieldToken.sol +2 -0
  211. package/contracts/interfaces/IStandardizedYield.sol +15 -10
  212. package/contracts/offchain-helpers/BulkSellerOffchain.sol +17 -8
  213. package/contracts/offchain-helpers/MarketMathStatic.sol +35 -96
  214. package/contracts/offchain-helpers/RouterStatic.sol +49 -9
  215. package/contracts/router/ActionAddRemoveLiq.sol +102 -10
  216. package/contracts/router/ActionMintRedeem.sol +44 -4
  217. package/contracts/router/ActionSwapPT.sol +41 -11
  218. package/contracts/router/ActionSwapPTYT.sol +32 -7
  219. package/contracts/router/ActionSwapYT.sol +49 -33
  220. package/contracts/router/PendleRouter.sol +3 -11
  221. package/contracts/router/base/MarketApproxLib.sol +61 -21
  222. package/deployments/43113-core.json +19 -14
  223. package/deployments/43113-markets/WETH-FEB-2ND.json +10 -0
  224. package/deployments/43113-testenv.json +1 -2
  225. package/package.json +7 -7
  226. package/typechain-types/ActionAddRemoveLiq.ts +18 -18
  227. package/typechain-types/ActionMintRedeem.ts +30 -30
  228. package/typechain-types/ActionSwapPTYT.ts +5 -5
  229. package/typechain-types/ActionSwapYT.ts +5 -5
  230. package/typechain-types/BulkSeller.ts +0 -87
  231. package/typechain-types/BulkSellerOffchain.ts +74 -0
  232. package/typechain-types/IBooster.ts +9 -3
  233. package/typechain-types/ICrvPool.ts +4 -9
  234. package/typechain-types/IERC4626.ts +5 -5
  235. package/typechain-types/IPActionAddRemoveLiq.ts +13 -13
  236. package/typechain-types/IPActionMintRedeem.ts +30 -30
  237. package/typechain-types/IPActionSwapYT.ts +5 -5
  238. package/typechain-types/IPAllAction.ts +48 -48
  239. package/typechain-types/IPBulkSeller.ts +0 -68
  240. package/typechain-types/IPMarket.ts +26 -16
  241. package/typechain-types/IPMarketFactory.ts +70 -37
  242. package/typechain-types/IPMsgSendEndpoint.ts +1 -1
  243. package/typechain-types/IPYieldContractFactory.ts +11 -11
  244. package/typechain-types/IPYieldToken.ts +21 -0
  245. package/typechain-types/MarketMathStatic.ts +0 -67
  246. package/typechain-types/PendleConvexLPSY.ts +204 -0
  247. package/typechain-types/PendleMarket.ts +26 -16
  248. package/typechain-types/PendleMarketFactory.ts +316 -92
  249. package/typechain-types/PendleQiTokenSY.ts +204 -0
  250. package/typechain-types/PendleRouter.ts +3 -287
  251. package/typechain-types/PendleWstEthSY.ts +204 -0
  252. package/typechain-types/PendleYieldContractFactory.ts +63 -18
  253. package/typechain-types/PendleYieldToken.ts +42 -0
  254. package/typechain-types/RouterStatic.ts +65 -7
  255. package/typechain-types/SYBase.ts +204 -0
  256. package/typechain-types/SYBaseWithRewards.ts +204 -0
  257. package/typechain-types/VotingEscrowPendleSidechain.ts +8 -8
  258. package/typechain-types/VotingEscrowTokenBase.ts +0 -21
  259. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +10 -10
  260. package/typechain-types/factories/ActionCallback__factory.ts +1 -1
  261. package/typechain-types/factories/ActionMintRedeem__factory.ts +19 -19
  262. package/typechain-types/factories/ActionMisc__factory.ts +1 -1
  263. package/typechain-types/factories/ActionSwapPTYT__factory.ts +2 -2
  264. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  265. package/typechain-types/factories/ActionSwapYT__factory.ts +3 -3
  266. package/typechain-types/factories/AggregationRouterHelper__factory.ts +1 -1
  267. package/typechain-types/factories/BaseSplitCodeFactoryContract__factory.ts +1 -1
  268. package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +1 -1
  269. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  270. package/typechain-types/factories/BulkSellerOffchain__factory.ts +57 -1
  271. package/typechain-types/factories/BulkSeller__factory.ts +1 -52
  272. package/typechain-types/factories/Errors__factory.ts +104 -30
  273. package/typechain-types/factories/IBooster__factory.ts +1 -1
  274. package/typechain-types/factories/ICrvPool__factory.ts +14 -7
  275. package/typechain-types/factories/IERC4626__factory.ts +1 -1
  276. package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +8 -8
  277. package/typechain-types/factories/IPActionMintRedeem__factory.ts +18 -18
  278. package/typechain-types/factories/IPActionSwapYT__factory.ts +2 -2
  279. package/typechain-types/factories/IPAllAction__factory.ts +28 -28
  280. package/typechain-types/factories/IPBulkSeller__factory.ts +0 -38
  281. package/typechain-types/factories/IPMarketFactory__factory.ts +50 -19
  282. package/typechain-types/factories/IPMarket__factory.ts +17 -5
  283. package/typechain-types/factories/IPMsgSendEndpoint__factory.ts +1 -1
  284. package/typechain-types/factories/IPYieldContractFactory__factory.ts +7 -7
  285. package/typechain-types/factories/IPYieldToken__factory.ts +13 -0
  286. package/typechain-types/factories/MarketMathStatic__factory.ts +1 -45
  287. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  288. package/typechain-types/factories/PendleConvexLPSY__factory.ts +141 -0
  289. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  290. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  291. package/typechain-types/factories/PendleERC20Permit__factory.ts +1 -1
  292. package/typechain-types/factories/PendleERC20__factory.ts +1 -1
  293. package/typechain-types/factories/PendleFeeDistributorFactory__factory.ts +1 -1
  294. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  295. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  296. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  297. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  298. package/typechain-types/factories/PendleMarketFactory__factory.ts +220 -49
  299. package/typechain-types/factories/PendleMarket__factory.ts +18 -6
  300. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  301. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  302. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  303. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  304. package/typechain-types/factories/PendleQiTokenSY__factory.ts +142 -1
  305. package/typechain-types/factories/PendleRouter__factory.ts +1 -185
  306. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  307. package/typechain-types/factories/PendleWstEthSY__factory.ts +142 -1
  308. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +82 -9
  309. package/typechain-types/factories/PendleYieldToken__factory.ts +38 -3
  310. package/typechain-types/factories/RouterStatic__factory.ts +79 -3
  311. package/typechain-types/factories/SYBaseWithRewards__factory.ts +141 -0
  312. package/typechain-types/factories/SYBase__factory.ts +141 -0
  313. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  314. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +15 -4
  315. package/typechain-types/factories/VotingEscrowTokenBase__factory.ts +0 -13
  316. package/typechain-types/hardhat.d.ts +0 -36
  317. package/typechain-types/index.ts +0 -6
  318. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/ConvexCurveLP/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +0 -4
  319. package/build/artifacts/contracts/offchain-helpers/ImplicitSwapfeeContract.sol/ImplicitSwapfeeContract.dbg.json +0 -4
  320. package/build/artifacts/contracts/offchain-helpers/ImplicitSwapfeeContract.sol/ImplicitSwapfeeContract.json +0 -182
  321. package/contracts/offchain-helpers/ImplicitSwapfeeContract.sol +0 -30
  322. package/deployments/43113-markets/QIWBTC-3RD-FEB.json +0 -11
  323. package/deployments/43113-markets/benqi-market-QI-AVAX-FEB-2ND.json +0 -9
  324. package/deployments/43113-markets/benqi-market-QI-USDC-FEB-2ND.json +0 -8
  325. package/deployments/43113-markets/benqi-market-QI-WETH-DEC-1ST.json +0 -9
  326. package/deployments/80001-core.json +0 -16
  327. package/deployments/80001-markets/benqi-market-QI-USDC-FEB-2ND.json +0 -8
  328. package/deployments/80001-markets/benqi-market-QI-WETH-DEC-1ST.json +0 -8
  329. package/deployments/80001-testenv.json +0 -22
@@ -48,8 +48,6 @@ export interface IPBulkSellerInterface extends utils.Interface {
48
48
  contractName: "IPBulkSeller";
49
49
  functions: {
50
50
  "SY()": FunctionFragment;
51
- "calcSwapExactSyForToken(uint256)": FunctionFragment;
52
- "calcSwapExactTokenForSy(uint256)": FunctionFragment;
53
51
  "readState()": FunctionFragment;
54
52
  "swapExactSyForToken(address,uint256,uint256)": FunctionFragment;
55
53
  "swapExactTokenForSy(address,uint256,uint256)": FunctionFragment;
@@ -57,14 +55,6 @@ export interface IPBulkSellerInterface extends utils.Interface {
57
55
  };
58
56
 
59
57
  encodeFunctionData(functionFragment: "SY", values?: undefined): string;
60
- encodeFunctionData(
61
- functionFragment: "calcSwapExactSyForToken",
62
- values: [BigNumberish]
63
- ): string;
64
- encodeFunctionData(
65
- functionFragment: "calcSwapExactTokenForSy",
66
- values: [BigNumberish]
67
- ): string;
68
58
  encodeFunctionData(functionFragment: "readState", values?: undefined): string;
69
59
  encodeFunctionData(
70
60
  functionFragment: "swapExactSyForToken",
@@ -77,14 +67,6 @@ export interface IPBulkSellerInterface extends utils.Interface {
77
67
  encodeFunctionData(functionFragment: "token", values?: undefined): string;
78
68
 
79
69
  decodeFunctionResult(functionFragment: "SY", data: BytesLike): Result;
80
- decodeFunctionResult(
81
- functionFragment: "calcSwapExactSyForToken",
82
- data: BytesLike
83
- ): Result;
84
- decodeFunctionResult(
85
- functionFragment: "calcSwapExactTokenForSy",
86
- data: BytesLike
87
- ): Result;
88
70
  decodeFunctionResult(functionFragment: "readState", data: BytesLike): Result;
89
71
  decodeFunctionResult(
90
72
  functionFragment: "swapExactSyForToken",
@@ -129,16 +111,6 @@ export interface IPBulkSeller extends BaseContract {
129
111
  functions: {
130
112
  SY(overrides?: CallOverrides): Promise<[string]>;
131
113
 
132
- calcSwapExactSyForToken(
133
- netSyIn: BigNumberish,
134
- overrides?: CallOverrides
135
- ): Promise<[BigNumber] & { netTokenOut: BigNumber }>;
136
-
137
- calcSwapExactTokenForSy(
138
- netTokenIn: BigNumberish,
139
- overrides?: CallOverrides
140
- ): Promise<[BigNumber] & { netSyOut: BigNumber }>;
141
-
142
114
  readState(
143
115
  overrides?: CallOverrides
144
116
  ): Promise<[BulkSellerStateStructOutput]>;
@@ -162,16 +134,6 @@ export interface IPBulkSeller extends BaseContract {
162
134
 
163
135
  SY(overrides?: CallOverrides): Promise<string>;
164
136
 
165
- calcSwapExactSyForToken(
166
- netSyIn: BigNumberish,
167
- overrides?: CallOverrides
168
- ): Promise<BigNumber>;
169
-
170
- calcSwapExactTokenForSy(
171
- netTokenIn: BigNumberish,
172
- overrides?: CallOverrides
173
- ): Promise<BigNumber>;
174
-
175
137
  readState(overrides?: CallOverrides): Promise<BulkSellerStateStructOutput>;
176
138
 
177
139
  swapExactSyForToken(
@@ -193,16 +155,6 @@ export interface IPBulkSeller extends BaseContract {
193
155
  callStatic: {
194
156
  SY(overrides?: CallOverrides): Promise<string>;
195
157
 
196
- calcSwapExactSyForToken(
197
- netSyIn: BigNumberish,
198
- overrides?: CallOverrides
199
- ): Promise<BigNumber>;
200
-
201
- calcSwapExactTokenForSy(
202
- netTokenIn: BigNumberish,
203
- overrides?: CallOverrides
204
- ): Promise<BigNumber>;
205
-
206
158
  readState(overrides?: CallOverrides): Promise<BulkSellerStateStructOutput>;
207
159
 
208
160
  swapExactSyForToken(
@@ -227,16 +179,6 @@ export interface IPBulkSeller extends BaseContract {
227
179
  estimateGas: {
228
180
  SY(overrides?: CallOverrides): Promise<BigNumber>;
229
181
 
230
- calcSwapExactSyForToken(
231
- netSyIn: BigNumberish,
232
- overrides?: CallOverrides
233
- ): Promise<BigNumber>;
234
-
235
- calcSwapExactTokenForSy(
236
- netTokenIn: BigNumberish,
237
- overrides?: CallOverrides
238
- ): Promise<BigNumber>;
239
-
240
182
  readState(overrides?: CallOverrides): Promise<BigNumber>;
241
183
 
242
184
  swapExactSyForToken(
@@ -259,16 +201,6 @@ export interface IPBulkSeller extends BaseContract {
259
201
  populateTransaction: {
260
202
  SY(overrides?: CallOverrides): Promise<PopulatedTransaction>;
261
203
 
262
- calcSwapExactSyForToken(
263
- netSyIn: BigNumberish,
264
- overrides?: CallOverrides
265
- ): Promise<PopulatedTransaction>;
266
-
267
- calcSwapExactTokenForSy(
268
- netTokenIn: BigNumberish,
269
- overrides?: CallOverrides
270
- ): Promise<PopulatedTransaction>;
271
-
272
204
  readState(overrides?: CallOverrides): Promise<PopulatedTransaction>;
273
205
 
274
206
  swapExactSyForToken(
@@ -28,8 +28,8 @@ export type MarketStateStruct = {
28
28
  totalLp: BigNumberish;
29
29
  treasury: string;
30
30
  scalarRoot: BigNumberish;
31
- lnFeeRateRoot: BigNumberish;
32
31
  expiry: BigNumberish;
32
+ lnFeeRateRoot: BigNumberish;
33
33
  reserveFeePercent: BigNumberish;
34
34
  lastLnImpliedRate: BigNumberish;
35
35
  };
@@ -50,8 +50,8 @@ export type MarketStateStructOutput = [
50
50
  totalLp: BigNumber;
51
51
  treasury: string;
52
52
  scalarRoot: BigNumber;
53
- lnFeeRateRoot: BigNumber;
54
53
  expiry: BigNumber;
54
+ lnFeeRateRoot: BigNumber;
55
55
  reserveFeePercent: BigNumber;
56
56
  lastLnImpliedRate: BigNumber;
57
57
  };
@@ -72,7 +72,7 @@ export interface IPMarketInterface extends utils.Interface {
72
72
  "mint(address,uint256,uint256)": FunctionFragment;
73
73
  "name()": FunctionFragment;
74
74
  "observe(uint32[])": FunctionFragment;
75
- "readState()": FunctionFragment;
75
+ "readState(address)": FunctionFragment;
76
76
  "readTokens()": FunctionFragment;
77
77
  "redeemRewards(address)": FunctionFragment;
78
78
  "swapExactPtForSy(address,uint256,bytes)": FunctionFragment;
@@ -121,7 +121,7 @@ export interface IPMarketInterface extends utils.Interface {
121
121
  functionFragment: "observe",
122
122
  values: [BigNumberish[]]
123
123
  ): string;
124
- encodeFunctionData(functionFragment: "readState", values?: undefined): string;
124
+ encodeFunctionData(functionFragment: "readState", values: [string]): string;
125
125
  encodeFunctionData(
126
126
  functionFragment: "readTokens",
127
127
  values?: undefined
@@ -212,7 +212,7 @@ export interface IPMarketInterface extends utils.Interface {
212
212
  "Burn(address,address,uint256,uint256,uint256)": EventFragment;
213
213
  "IncreaseObservationCardinalityNext(uint16,uint16)": EventFragment;
214
214
  "Mint(address,uint256,uint256,uint256)": EventFragment;
215
- "Swap(address,int256,int256,uint256)": EventFragment;
215
+ "Swap(address,int256,int256,uint256,uint256)": EventFragment;
216
216
  "Transfer(address,address,uint256)": EventFragment;
217
217
  "UpdateImpliedRate(uint256,uint256)": EventFragment;
218
218
  };
@@ -272,11 +272,12 @@ export type MintEvent = TypedEvent<
272
272
  export type MintEventFilter = TypedEventFilter<MintEvent>;
273
273
 
274
274
  export type SwapEvent = TypedEvent<
275
- [string, BigNumber, BigNumber, BigNumber],
275
+ [string, BigNumber, BigNumber, BigNumber, BigNumber],
276
276
  {
277
277
  receiver: string;
278
278
  netPtOut: BigNumber;
279
279
  netSyOut: BigNumber;
280
+ netSyFee: BigNumber;
280
281
  netSyToReserve: BigNumber;
281
282
  }
282
283
  >;
@@ -380,6 +381,7 @@ export interface IPMarket extends BaseContract {
380
381
  ): Promise<[BigNumber[]] & { lnImpliedRateCumulative: BigNumber[] }>;
381
382
 
382
383
  readState(
384
+ router: string,
383
385
  overrides?: CallOverrides
384
386
  ): Promise<[MarketStateStructOutput] & { market: MarketStateStructOutput }>;
385
387
 
@@ -478,7 +480,10 @@ export interface IPMarket extends BaseContract {
478
480
  overrides?: CallOverrides
479
481
  ): Promise<BigNumber[]>;
480
482
 
481
- readState(overrides?: CallOverrides): Promise<MarketStateStructOutput>;
483
+ readState(
484
+ router: string,
485
+ overrides?: CallOverrides
486
+ ): Promise<MarketStateStructOutput>;
482
487
 
483
488
  readTokens(
484
489
  overrides?: CallOverrides
@@ -583,7 +588,10 @@ export interface IPMarket extends BaseContract {
583
588
  overrides?: CallOverrides
584
589
  ): Promise<BigNumber[]>;
585
590
 
586
- readState(overrides?: CallOverrides): Promise<MarketStateStructOutput>;
591
+ readState(
592
+ router: string,
593
+ overrides?: CallOverrides
594
+ ): Promise<MarketStateStructOutput>;
587
595
 
588
596
  readTokens(
589
597
  overrides?: CallOverrides
@@ -602,10 +610,7 @@ export interface IPMarket extends BaseContract {
602
610
  data: BytesLike,
603
611
  overrides?: CallOverrides
604
612
  ): Promise<
605
- [BigNumber, BigNumber] & {
606
- netSyOut: BigNumber;
607
- netSyToReserve: BigNumber;
608
- }
613
+ [BigNumber, BigNumber] & { netSyOut: BigNumber; netSyFee: BigNumber }
609
614
  >;
610
615
 
611
616
  swapSyForExactPt(
@@ -614,7 +619,7 @@ export interface IPMarket extends BaseContract {
614
619
  data: BytesLike,
615
620
  overrides?: CallOverrides
616
621
  ): Promise<
617
- [BigNumber, BigNumber] & { netSyIn: BigNumber; netSyToReserve: BigNumber }
622
+ [BigNumber, BigNumber] & { netSyIn: BigNumber; netSyFee: BigNumber }
618
623
  >;
619
624
 
620
625
  symbol(overrides?: CallOverrides): Promise<string>;
@@ -686,16 +691,18 @@ export interface IPMarket extends BaseContract {
686
691
  netPtUsed?: null
687
692
  ): MintEventFilter;
688
693
 
689
- "Swap(address,int256,int256,uint256)"(
694
+ "Swap(address,int256,int256,uint256,uint256)"(
690
695
  receiver?: string | null,
691
696
  netPtOut?: null,
692
697
  netSyOut?: null,
698
+ netSyFee?: null,
693
699
  netSyToReserve?: null
694
700
  ): SwapEventFilter;
695
701
  Swap(
696
702
  receiver?: string | null,
697
703
  netPtOut?: null,
698
704
  netSyOut?: null,
705
+ netSyFee?: null,
699
706
  netSyToReserve?: null
700
707
  ): SwapEventFilter;
701
708
 
@@ -771,7 +778,7 @@ export interface IPMarket extends BaseContract {
771
778
  overrides?: CallOverrides
772
779
  ): Promise<BigNumber>;
773
780
 
774
- readState(overrides?: CallOverrides): Promise<BigNumber>;
781
+ readState(router: string, overrides?: CallOverrides): Promise<BigNumber>;
775
782
 
776
783
  readTokens(overrides?: CallOverrides): Promise<BigNumber>;
777
784
 
@@ -871,7 +878,10 @@ export interface IPMarket extends BaseContract {
871
878
  overrides?: CallOverrides
872
879
  ): Promise<PopulatedTransaction>;
873
880
 
874
- readState(overrides?: CallOverrides): Promise<PopulatedTransaction>;
881
+ readState(
882
+ router: string,
883
+ overrides?: CallOverrides
884
+ ): Promise<PopulatedTransaction>;
875
885
 
876
886
  readTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
877
887
 
@@ -22,38 +22,39 @@ import type {
22
22
  export interface IPMarketFactoryInterface extends utils.Interface {
23
23
  contractName: "IPMarketFactory";
24
24
  functions: {
25
+ "getMarketConfig(address)": FunctionFragment;
25
26
  "isValidMarket(address)": FunctionFragment;
26
- "marketConfig()": FunctionFragment;
27
- "treasury()": FunctionFragment;
28
27
  };
29
28
 
30
29
  encodeFunctionData(
31
- functionFragment: "isValidMarket",
30
+ functionFragment: "getMarketConfig",
32
31
  values: [string]
33
32
  ): string;
34
33
  encodeFunctionData(
35
- functionFragment: "marketConfig",
36
- values?: undefined
34
+ functionFragment: "isValidMarket",
35
+ values: [string]
37
36
  ): string;
38
- encodeFunctionData(functionFragment: "treasury", values?: undefined): string;
39
37
 
40
38
  decodeFunctionResult(
41
- functionFragment: "isValidMarket",
39
+ functionFragment: "getMarketConfig",
42
40
  data: BytesLike
43
41
  ): Result;
44
42
  decodeFunctionResult(
45
- functionFragment: "marketConfig",
43
+ functionFragment: "isValidMarket",
46
44
  data: BytesLike
47
45
  ): Result;
48
- decodeFunctionResult(functionFragment: "treasury", data: BytesLike): Result;
49
46
 
50
47
  events: {
51
48
  "CreateNewMarket(address,address,int256,int256)": EventFragment;
52
- "NewMarketConfig(address,uint96,uint8)": EventFragment;
49
+ "NewMarketConfig(address,uint80,uint8)": EventFragment;
50
+ "SetOverriddenFee(address,uint80,uint8)": EventFragment;
51
+ "UnsetOverriddenFee(address)": EventFragment;
53
52
  };
54
53
 
55
54
  getEvent(nameOrSignatureOrTopic: "CreateNewMarket"): EventFragment;
56
55
  getEvent(nameOrSignatureOrTopic: "NewMarketConfig"): EventFragment;
56
+ getEvent(nameOrSignatureOrTopic: "SetOverriddenFee"): EventFragment;
57
+ getEvent(nameOrSignatureOrTopic: "UnsetOverriddenFee"): EventFragment;
57
58
  }
58
59
 
59
60
  export type CreateNewMarketEvent = TypedEvent<
@@ -70,11 +71,28 @@ export type CreateNewMarketEventFilter = TypedEventFilter<CreateNewMarketEvent>;
70
71
 
71
72
  export type NewMarketConfigEvent = TypedEvent<
72
73
  [string, BigNumber, number],
73
- { treasury: string; lnFeeRateRoot: BigNumber; reserveFeePercent: number }
74
+ {
75
+ treasury: string;
76
+ defaultLnFeeRateRoot: BigNumber;
77
+ reserveFeePercent: number;
78
+ }
74
79
  >;
75
80
 
76
81
  export type NewMarketConfigEventFilter = TypedEventFilter<NewMarketConfigEvent>;
77
82
 
83
+ export type SetOverriddenFeeEvent = TypedEvent<
84
+ [string, BigNumber, number],
85
+ { router: string; lnFeeRateRoot: BigNumber; reserveFeePercent: number }
86
+ >;
87
+
88
+ export type SetOverriddenFeeEventFilter =
89
+ TypedEventFilter<SetOverriddenFeeEvent>;
90
+
91
+ export type UnsetOverriddenFeeEvent = TypedEvent<[string], { router: string }>;
92
+
93
+ export type UnsetOverriddenFeeEventFilter =
94
+ TypedEventFilter<UnsetOverriddenFeeEvent>;
95
+
78
96
  export interface IPMarketFactory extends BaseContract {
79
97
  contractName: "IPMarketFactory";
80
98
  connect(signerOrProvider: Signer | Provider | string): this;
@@ -103,12 +121,8 @@ export interface IPMarketFactory extends BaseContract {
103
121
  removeListener: OnEvent<this>;
104
122
 
105
123
  functions: {
106
- isValidMarket(
107
- market: string,
108
- overrides?: CallOverrides
109
- ): Promise<[boolean]>;
110
-
111
- marketConfig(
124
+ getMarketConfig(
125
+ router: string,
112
126
  overrides?: CallOverrides
113
127
  ): Promise<
114
128
  [string, BigNumber, number] & {
@@ -118,12 +132,14 @@ export interface IPMarketFactory extends BaseContract {
118
132
  }
119
133
  >;
120
134
 
121
- treasury(overrides?: CallOverrides): Promise<[string]>;
135
+ isValidMarket(
136
+ market: string,
137
+ overrides?: CallOverrides
138
+ ): Promise<[boolean]>;
122
139
  };
123
140
 
124
- isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
125
-
126
- marketConfig(
141
+ getMarketConfig(
142
+ router: string,
127
143
  overrides?: CallOverrides
128
144
  ): Promise<
129
145
  [string, BigNumber, number] & {
@@ -133,12 +149,11 @@ export interface IPMarketFactory extends BaseContract {
133
149
  }
134
150
  >;
135
151
 
136
- treasury(overrides?: CallOverrides): Promise<string>;
152
+ isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
137
153
 
138
154
  callStatic: {
139
- isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
140
-
141
- marketConfig(
155
+ getMarketConfig(
156
+ router: string,
142
157
  overrides?: CallOverrides
143
158
  ): Promise<
144
159
  [string, BigNumber, number] & {
@@ -148,7 +163,7 @@ export interface IPMarketFactory extends BaseContract {
148
163
  }
149
164
  >;
150
165
 
151
- treasury(overrides?: CallOverrides): Promise<string>;
166
+ isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
152
167
  };
153
168
 
154
169
  filters: {
@@ -165,37 +180,55 @@ export interface IPMarketFactory extends BaseContract {
165
180
  initialAnchor?: null
166
181
  ): CreateNewMarketEventFilter;
167
182
 
168
- "NewMarketConfig(address,uint96,uint8)"(
183
+ "NewMarketConfig(address,uint80,uint8)"(
169
184
  treasury?: string | null,
170
- lnFeeRateRoot?: null,
185
+ defaultLnFeeRateRoot?: null,
171
186
  reserveFeePercent?: null
172
187
  ): NewMarketConfigEventFilter;
173
188
  NewMarketConfig(
174
189
  treasury?: string | null,
175
- lnFeeRateRoot?: null,
190
+ defaultLnFeeRateRoot?: null,
176
191
  reserveFeePercent?: null
177
192
  ): NewMarketConfigEventFilter;
193
+
194
+ "SetOverriddenFee(address,uint80,uint8)"(
195
+ router?: string | null,
196
+ lnFeeRateRoot?: null,
197
+ reserveFeePercent?: null
198
+ ): SetOverriddenFeeEventFilter;
199
+ SetOverriddenFee(
200
+ router?: string | null,
201
+ lnFeeRateRoot?: null,
202
+ reserveFeePercent?: null
203
+ ): SetOverriddenFeeEventFilter;
204
+
205
+ "UnsetOverriddenFee(address)"(
206
+ router?: string | null
207
+ ): UnsetOverriddenFeeEventFilter;
208
+ UnsetOverriddenFee(router?: string | null): UnsetOverriddenFeeEventFilter;
178
209
  };
179
210
 
180
211
  estimateGas: {
212
+ getMarketConfig(
213
+ router: string,
214
+ overrides?: CallOverrides
215
+ ): Promise<BigNumber>;
216
+
181
217
  isValidMarket(
182
218
  market: string,
183
219
  overrides?: CallOverrides
184
220
  ): Promise<BigNumber>;
185
-
186
- marketConfig(overrides?: CallOverrides): Promise<BigNumber>;
187
-
188
- treasury(overrides?: CallOverrides): Promise<BigNumber>;
189
221
  };
190
222
 
191
223
  populateTransaction: {
224
+ getMarketConfig(
225
+ router: string,
226
+ overrides?: CallOverrides
227
+ ): Promise<PopulatedTransaction>;
228
+
192
229
  isValidMarket(
193
230
  market: string,
194
231
  overrides?: CallOverrides
195
232
  ): Promise<PopulatedTransaction>;
196
-
197
- marketConfig(overrides?: CallOverrides): Promise<PopulatedTransaction>;
198
-
199
- treasury(overrides?: CallOverrides): Promise<PopulatedTransaction>;
200
233
  };
201
234
  }
@@ -81,7 +81,7 @@ export interface IPMsgSendEndpoint extends BaseContract {
81
81
  payload: BytesLike,
82
82
  estimatedGasAmount: BigNumberish,
83
83
  overrides?: CallOverrides
84
- ): Promise<[BigNumber]>;
84
+ ): Promise<[BigNumber] & { fee: BigNumber }>;
85
85
 
86
86
  sendMessage(
87
87
  dstAddress: string,
@@ -76,7 +76,7 @@ export interface IPYieldContractFactoryInterface extends utils.Interface {
76
76
  decodeFunctionResult(functionFragment: "treasury", data: BytesLike): Result;
77
77
 
78
78
  events: {
79
- "CreateYieldContract(address,address,address,uint256)": EventFragment;
79
+ "CreateYieldContract(address,uint256,address,address)": EventFragment;
80
80
  "SetExpiryDivisor(uint256)": EventFragment;
81
81
  "SetInterestFeeRate(uint256)": EventFragment;
82
82
  "SetRewardFeeRate(uint256)": EventFragment;
@@ -91,8 +91,8 @@ export interface IPYieldContractFactoryInterface extends utils.Interface {
91
91
  }
92
92
 
93
93
  export type CreateYieldContractEvent = TypedEvent<
94
- [string, string, string, BigNumber],
95
- { SY: string; PT: string; YT: string; expiry: BigNumber }
94
+ [string, BigNumber, string, string],
95
+ { SY: string; expiry: BigNumber; PT: string; YT: string }
96
96
  >;
97
97
 
98
98
  export type CreateYieldContractEventFilter =
@@ -116,7 +116,7 @@ export type SetInterestFeeRateEventFilter =
116
116
 
117
117
  export type SetRewardFeeRateEvent = TypedEvent<
118
118
  [BigNumber],
119
- { newInterestFeeRate: BigNumber }
119
+ { newRewardFeeRate: BigNumber }
120
120
  >;
121
121
 
122
122
  export type SetRewardFeeRateEventFilter =
@@ -230,17 +230,17 @@ export interface IPYieldContractFactory extends BaseContract {
230
230
  };
231
231
 
232
232
  filters: {
233
- "CreateYieldContract(address,address,address,uint256)"(
233
+ "CreateYieldContract(address,uint256,address,address)"(
234
234
  SY?: string | null,
235
+ expiry?: BigNumberish | null,
235
236
  PT?: null,
236
- YT?: null,
237
- expiry?: null
237
+ YT?: null
238
238
  ): CreateYieldContractEventFilter;
239
239
  CreateYieldContract(
240
240
  SY?: string | null,
241
+ expiry?: BigNumberish | null,
241
242
  PT?: null,
242
- YT?: null,
243
- expiry?: null
243
+ YT?: null
244
244
  ): CreateYieldContractEventFilter;
245
245
 
246
246
  "SetExpiryDivisor(uint256)"(
@@ -256,9 +256,9 @@ export interface IPYieldContractFactory extends BaseContract {
256
256
  ): SetInterestFeeRateEventFilter;
257
257
 
258
258
  "SetRewardFeeRate(uint256)"(
259
- newInterestFeeRate?: null
259
+ newRewardFeeRate?: null
260
260
  ): SetRewardFeeRateEventFilter;
261
- SetRewardFeeRate(newInterestFeeRate?: null): SetRewardFeeRateEventFilter;
261
+ SetRewardFeeRate(newRewardFeeRate?: null): SetRewardFeeRateEventFilter;
262
262
 
263
263
  "SetTreasury(address)"(treasury?: string | null): SetTreasuryEventFilter;
264
264
  SetTreasury(treasury?: string | null): SetTreasuryEventFilter;
@@ -31,6 +31,7 @@ export interface IPYieldTokenInterface extends utils.Interface {
31
31
  "approve(address,uint256)": FunctionFragment;
32
32
  "balanceOf(address)": FunctionFragment;
33
33
  "decimals()": FunctionFragment;
34
+ "doCacheIndexSameBlock()": FunctionFragment;
34
35
  "expiry()": FunctionFragment;
35
36
  "factory()": FunctionFragment;
36
37
  "getRewardTokens()": FunctionFragment;
@@ -63,6 +64,10 @@ export interface IPYieldTokenInterface extends utils.Interface {
63
64
  ): string;
64
65
  encodeFunctionData(functionFragment: "balanceOf", values: [string]): string;
65
66
  encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
67
+ encodeFunctionData(
68
+ functionFragment: "doCacheIndexSameBlock",
69
+ values?: undefined
70
+ ): string;
66
71
  encodeFunctionData(functionFragment: "expiry", values?: undefined): string;
67
72
  encodeFunctionData(functionFragment: "factory", values?: undefined): string;
68
73
  encodeFunctionData(
@@ -124,6 +129,10 @@ export interface IPYieldTokenInterface extends utils.Interface {
124
129
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
125
130
  decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
126
131
  decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
132
+ decodeFunctionResult(
133
+ functionFragment: "doCacheIndexSameBlock",
134
+ data: BytesLike
135
+ ): Result;
127
136
  decodeFunctionResult(functionFragment: "expiry", data: BytesLike): Result;
128
137
  decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result;
129
138
  decodeFunctionResult(
@@ -308,6 +317,8 @@ export interface IPYieldToken extends BaseContract {
308
317
 
309
318
  decimals(overrides?: CallOverrides): Promise<[number]>;
310
319
 
320
+ doCacheIndexSameBlock(overrides?: CallOverrides): Promise<[boolean]>;
321
+
311
322
  expiry(overrides?: CallOverrides): Promise<[BigNumber]>;
312
323
 
313
324
  factory(overrides?: CallOverrides): Promise<[string]>;
@@ -408,6 +419,8 @@ export interface IPYieldToken extends BaseContract {
408
419
 
409
420
  decimals(overrides?: CallOverrides): Promise<number>;
410
421
 
422
+ doCacheIndexSameBlock(overrides?: CallOverrides): Promise<boolean>;
423
+
411
424
  expiry(overrides?: CallOverrides): Promise<BigNumber>;
412
425
 
413
426
  factory(overrides?: CallOverrides): Promise<string>;
@@ -506,6 +519,8 @@ export interface IPYieldToken extends BaseContract {
506
519
 
507
520
  decimals(overrides?: CallOverrides): Promise<number>;
508
521
 
522
+ doCacheIndexSameBlock(overrides?: CallOverrides): Promise<boolean>;
523
+
509
524
  expiry(overrides?: CallOverrides): Promise<BigNumber>;
510
525
 
511
526
  factory(overrides?: CallOverrides): Promise<string>;
@@ -691,6 +706,8 @@ export interface IPYieldToken extends BaseContract {
691
706
 
692
707
  decimals(overrides?: CallOverrides): Promise<BigNumber>;
693
708
 
709
+ doCacheIndexSameBlock(overrides?: CallOverrides): Promise<BigNumber>;
710
+
694
711
  expiry(overrides?: CallOverrides): Promise<BigNumber>;
695
712
 
696
713
  factory(overrides?: CallOverrides): Promise<BigNumber>;
@@ -785,6 +802,10 @@ export interface IPYieldToken extends BaseContract {
785
802
 
786
803
  decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>;
787
804
 
805
+ doCacheIndexSameBlock(
806
+ overrides?: CallOverrides
807
+ ): Promise<PopulatedTransaction>;
808
+
788
809
  expiry(overrides?: CallOverrides): Promise<PopulatedTransaction>;
789
810
 
790
811
  factory(overrides?: CallOverrides): Promise<PopulatedTransaction>;