evm/aave/contracts/lendingpool.sol
2021-11-15 14:09:43 +04:00

36 lines
1.3 KiB
Solidity

pragma solidity >=0.6.0;
interface ILendingPool {
function deposit(address asset, uint256 amount, address onBehalfOf, uint16 referralCode) external;
function borrow(address asset, uint256 amount, uint256 interestRateMode, uint16 referralCode, address onBehalfOf) external;
function repay(address asset, uint256 amount, uint256 rateMode, address onBehalfOf) external returns (uint256);
function withdraw(address asset, uint256 amount, address to) external returns (uint256);
function getUserAccountData(address user) external view returns (
uint256 totalCollateralETH,
uint256 totalDebtETH,
uint256 availableBorrowsETH,
uint256 currentLiquidationThreshold,
uint256 ltv,
uint256 healthFactor
);
function getReserveData(address asset) external view returns (
uint256 configuration,
uint256 liquidityIndex,
uint256 variableBorrowIndex,
uint256 currentLiquidityRate,
uint256 currentVariableBorrowRate,
uint256 currentStableBorrowRate,
uint40 lastUpdateTimestamp,
address aTokenAddress,
address stableDebtTokenAddress,
address variableDebtTokenAddress,
address interestRateStrategyAddress,
uint8 id
);
}