github.com/cwntr/go-defi@v0.0.0-20210629134751-07f9ec2f7e66/contracts/handlers/aave/IAToken.sol (about)

     1  pragma solidity ^0.5.0;
     2  
     3  interface IAToken {
     4      function underlyingAssetAddress() external returns(address);
     5      function redirectInterestStream(address _to) external;
     6      function redirectInterestStreamOf(address _from, address _to) external;
     7      function allowInterestRedirectionTo(address _to) external;
     8      function redeem(uint256 _amount) external;
     9      function principalBalanceOf(address _user) external view returns(uint256);
    10      function isTransferAllowed(address _user, uint256 _amount) external view returns (bool);
    11      function getUserIndex(address _user) external view returns(uint256);
    12      function getInterestRedirectionAddress(address _user) external view returns(address);
    13      function getRedirectedBalance(address _user) external view returns(uint256);
    14  
    15      function totalSupply() external view returns (uint256 supply);
    16      function balanceOf(address _owner) external view returns (uint256 balance);
    17      function transfer(address _to, uint256 _value) external returns (bool success);
    18      function transferFrom(address _from, address _to, uint256 _value) external returns (bool success);
    19      function approve(address _spender, uint256 _value) external returns (bool success);
    20      function allowance(address _owner, address _spender) external view returns (uint256 remaining);
    21  
    22      function name() external view returns (string memory);
    23      function symbol() external view returns (string memory);
    24      function decimals() external view returns (uint8);
    25  }