Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

IAaveV3PoolLike

Git Source

Minimal pool surface matching the local Aave v3 Horizon pool interface.

This example was derived against ~/Documents/code/solidity/aave-v3-horizon/.

Functions

borrow

function borrow(address asset, uint256 amount, uint256 interestRateMode, uint16 referralCode, address onBehalfOf)
    external;

withdraw

function withdraw(address asset, uint256 amount, address to) external returns (uint256);

liquidationCall

function liquidationCall(
    address collateralAsset,
    address debtAsset,
    address user,
    uint256 debtToCover,
    bool receiveAToken
) external;

setUserUseReserveAsCollateral

function setUserUseReserveAsCollateral(address asset, bool useAsCollateral) external;

finalizeTransfer

function finalizeTransfer(
    address asset,
    address from,
    address to,
    uint256 amount,
    uint256 balanceFromBefore,
    uint256 balanceToBefore
) external;

getUserAccountData

function getUserAccountData(address user)
    external
    view
    returns (
        uint256 totalCollateralBase,
        uint256 totalDebtBase,
        uint256 availableBorrowsBase,
        uint256 currentLiquidationThreshold,
        uint256 ltv,
        uint256 healthFactor
    );

getUserConfiguration

function getUserConfiguration(address user) external view returns (AaveV3Types.UserConfigurationMap memory);

getReserveData

function getReserveData(address asset) external view returns (AaveV3Types.ReserveDataLegacy memory);

getReservesList

function getReservesList() external view returns (address[] memory);

ADDRESSES_PROVIDER

function ADDRESSES_PROVIDER() external view returns (address);