Interface

XfaiINFT

The XfaiINFT contract inherits from five interfaces: IXfaiINFT, IERC721Enumerable, IERC721, IERC721Metadata, and IERC165. The interfaces of which are the following:

interface IXfaiINFT {
    function reserve() external view returns (uint);
    function totalSharesIssued() external view returns (uint);
    function initialReserve() external view returns (uint);
    function harvestedBalance(address _token) external view returns (uint);
    function INFTShares(uint _id) external view returns (uint);
    function sharesHarvestedByPool(address _token, uint _id) external view returns (uint);
    function totalSharesHarvestedByPool(address _token) external view returns (uint);
    function harvesters(uint _id) external view returns (address);
    function setBaseURI(string memory _baseURI) external;
    function getStates() external view returns (uint, uint, uint);
    function harvesterOf(uint _tokenID) external view returns (address);
    function shareToTokenAmount(uint _tokenID, address _token) external view returns (uint share2amount, uint inftShare, uint harvestedShares);
    function mint(address _to) external returns (uint tokenID, uint share);
    function boost(uint _tokenID) external returns (uint share);
    function harvestToken(
        address _token, 
        uint _tokenID, 
        uint _amount
    ) external returns (uint);
    function harvestETH(
        uint _tokenID, 
        uint _amount
    ) external returns (uint);
    function setHarvester(uint _tokenID, address _harvester) external;

    event Mint(address indexed from, address indexed to, uint share, uint id);
    event Boost(address indexed from, uint share, uint id);
    event HarvestToken(address token, uint harvestedAmount, uint harvestedShare, uint id);
    event HarvestETH(uint harvestedAmount, uint harvestedShare, uint id);
    event Delegate(address indexed newHarvester);
}
interface IERC721Enumerable is IERC721 {
    function totalSupply() external view returns (uint256);
    function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);
    function tokenByIndex(uint256 index) external view returns (uint256);
}
interface IERC721 is IERC165 {
    event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
    event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
    function balanceOf(address owner) external view returns (uint256 balance);
    function ownerOf(uint256 tokenId) external view returns (address owner);
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes calldata data
    ) external;
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;
    function approve(address to, uint256 tokenId) external;
    function setApprovalForAll(address operator, bool _approved) external;
    function getApproved(uint256 tokenId) external view returns (address operator);
    function isApprovedForAll(address owner, address operator) external view returns (bool);
}
interface IERC721Metadata is IERC721 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function tokenURI(uint256 tokenId) external view returns (string memory);
}
interface IERC165 {
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

Last updated