Simple example of ERC-20 token with interface and access control, added additional functions for mint and burn tokens
Contract deployed to Ropsten Network: https://ropsten.etherscan.io/address/0x17E117Ed9929Ed8e37B369c87dE1613377Ca07c6#code
Contract address: 0x17E117Ed9929Ed8e37B369c87dE1613377Ca07c6
Available tasks:
accounts Prints the list of accounts
approve Allows address to withdraw from your account multiple times, up to the value amount
check Check whatever you need
clean Clears the cache and deletes all artifacts
compile Compiles the entire project, building all artifacts
console Opens a hardhat console
coverage Generates a code coverage report for tests
flatten Flattens and prints contracts and their dependencies
help Prints this message
node Starts a JSON-RPC server on top of Hardhat Network
run Runs a user-defined script after compiling the project
test Runs mocha tests
transfer Transfers amount of tokens to address
transferFrom Transfers amount of tokens from one address to another address
verify Verifies contract on Etherscan