// SPDX-License-Identifier: AGPL-3.0 pragma solidity ^0.8.11; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; interface IERC20Custom is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function cap() external view returns (uint256); function setCap(uint256 _newCap) external; function increaseCap(uint256 _increaseCap) external; function decreaseCap(uint256 _decreaseCap) external; function pause() external; function unpause() external; function mint(address to, uint256 amount) external; function burn(uint256 amount) external; function burnFrom(address account, uint256 amount) external; }