Interface: AlienFinanceLens

0xF090b119b10FE4aF048B3EAEB9c0d4821CaBcD30

interface AlienFinanceLens {    
    struct MarketConfig {
        // 1 + 1 + 2 + 2 + 2 + 2 + 1 + 1 = 12
        bool isListed;
        uint8 pauseFlags;
        uint16 collateralFactor;
        uint16 liquidationThreshold;
        uint16 liquidationBonus;
        uint16 reserveFactor;
        bool isPToken;
        bool isDelisted;
        // 20 + 20 + 20 + 32 + 32 + 32
        address aTokenAddress;
        address debtTokenAddress;
        address interestRateModelAddress;
        uint256 supplyCap;
        uint256 borrowCap;
        uint256 initialExchangeRate;
    }

    struct MarketMetadata {
        address market;
        string marketName;
        string marketSymbol;
        uint8 marketDecimals;
        bool isListed;
        uint16 collateralFactor;
        uint16 liquidationThreshold;
        uint16 liquidationBonus;
        uint16 reserveFactor;
        bool isPToken;
        bool supplyPaused;
        bool borrowPaused;
        bool transferPaused;
        bool isSoftDelisted;
        address aTokenAddress;
        address debtTokenAddress;
        address interestRateModelAddress;
        uint256 supplyCap;
        uint256 borrowCap;
    }

    struct MarketStatus {
        address market;
        uint256 totalCash;
        uint256 totalBorrow;
        uint256 totalSupply;
        uint256 totalReserves;
        uint256 maxSupplyAmount;
        uint256 maxBorrowAmount;
        uint256 marketPrice;
        uint256 exchangeRate;
        uint256 supplyRate;
        uint256 borrowRate;
    }

    struct UserMarketStatus {
        address market;
        uint256 balance;
        uint256 allowanceToAlien;
        uint256 exchangeRate;
        uint256 aTokenBalance;
        uint256 supplyBalance;
        uint256 borrowBalance;
    }

    function getMarketMetadata(address alien, address market) external view returns (MarketMetadata memory);

    function getAllMarketsMetadata(address alien) external view returns (MarketMetadata[] memory);
    
    function getCurrentMarketStatus(address alien, address market) external returns (MarketStatus memory);

    function getAllMarketsStatus(address alien) external view returns (MarketStatus[] memory);

    function getAllCurrentMarketsStatus(address alien) external returns (MarketStatus[] memory);

    function getUserMarketStatus(address alien, address user, address market) external view returns (UserMarketStatus memory);

    function getCurrentUserMarketStatus(address alien, address user, address market) external returns (UserMarketStatus memory);

    function getUserAllMarketsStatus(address alien, address user) external view returns (UserMarketStatus[] memory);

    function getUserAllCurrentMarketsStatus(address alien, address user) external returns (UserMarketStatus[] memory);
}

Last updated