Interest Token
The governance token of Interest Protocol.
function MINTER_ROLE() external view returns(bytes32);
Summary
It returns the hash assigned to the MINTER_ROLE. Addresses must have this role to call the
mint
function.function DEVELOPER_ROLE() external view returns(bytes32);
Summary
It returns the hash assigned to the DEVELOPER_ROLE. Addresses must have this role to upgrade the Interest Token contract.
function mint(address account, uint256 amount) external;
Parameters
- 1.Account - address: The address that will receive the new-minted tokens
- 2.Amount - uint256: The amount of new tokens.
Restrictions
- onlyRole modifier: Callers must have the MINTER_ROLE to call this function.
Event
event Transfer(address indexed from, address indexed to, uint256 value);
Summary
This function allows authorized contracts to mint Interest Token to incentivize liquidity providers.
function burn(uint256 amount) external;
Parameters
- 1.Amount - uint256: The amount of tokens to be burned.
Event
event Transfer(address indexed from, address indexed to, uint256 value);
Summary
This function allows the caller to burn his/her own tokens.
function burnFrom(address account, uint256 amount) external;
Parameters
- 1.Account - address: The address that will have its tokens burned.
- 2.Amount - uint256: The amount of tokens to be burned.
Restrictions:
- allowance: It requires the
msg.sender
to have an allowance with theAccount
equal or higher than theAmount
.
Events
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
Summary
This function allows a caller to burn his/her allowance from a third account. It reduces the allowance and total supply.
This contract uses the UUPS upgradeable pattern. Therefore, the interfaces and functionalities can change in the future.
Last modified 4mo ago