ERC20SignatureMint

The ERC20SignatureMint smart contract adds the signature-based minting extension functionality to the ERC20Base contract. Signature minting uses EIP-712, which enables the contract admin to authorize an external party's request to mint tokens on the admin's contract. At a high level, this means you can authorize others to mint tokens on your contract, and specify what exactly will be minted by that external party.

import "@thirdweb-dev/contracts/base/ERC20SignatureMint.sol";
GitHub
View on GitHub

Usage

Import the contract and inherit from it.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@thirdweb-dev/contracts/base/ERC20SignatureMint.sol";
contract MyToken is ERC20SignatureMint {
constructor(
address _defaultAdmin,
string memory _name,
string memory _symbol,
address _primarySaleRecipient
)
ERC20SignatureMint(
_defaultAdmin,
_name,
_symbol,
_primarySaleRecipient
)
{}
}

Detected Extensions

Once deployed, you can use the features made available by these extensions on the SDK and dashboard:

Functions to Override

The following functions have been implemented on this contract & are available to be overridden to add custom logic: