aave-protocol-v2/contracts/interfaces/IReserveInterestRateStrategy.sol

41 lines
1008 B
Solidity
Raw Normal View History

// SPDX-License-Identifier: agpl-3.0
2020-11-20 10:45:20 +00:00
pragma solidity 0.6.12;
/**
@title IReserveInterestRateStrategyInterface interface
@notice Interface for the calculation of the interest rates.
*/
interface IReserveInterestRateStrategy {
2020-07-13 08:54:08 +00:00
/**
* @dev returns the base variable borrow rate, in rays
*/
function baseVariableBorrowRate() external view returns (uint256);
2020-09-21 17:52:22 +00:00
/**
* @dev returns the maximum variable borrow rate
*/
function getMaxVariableBorrowRate() external view returns (uint256);
2020-07-13 08:54:08 +00:00
/**
* @dev calculates the liquidity, stable, and variable rates depending on the current utilization rate
* and the base parameters
*
*/
function calculateInterestRates(
address reserve,
uint256 utilizationRate,
uint256 totalStableDebt,
uint256 totalVariableDebt,
2020-09-10 10:51:52 +00:00
uint256 averageStableBorrowRate,
uint256 reserveFactor
2020-07-13 08:54:08 +00:00
)
external
view
2020-07-13 08:54:08 +00:00
returns (
uint256 liquidityRate,
uint256 stableBorrowRate,
uint256 variableBorrowRate
);
}