Skip to main content

DropERC20

Methods​

DEFAULT_ADMIN_ROLE​

function DEFAULT_ADMIN_ROLE() external view returns (bytes32)

Returns​

NameTypeDescription
_0bytes32undefined

DOMAIN_SEPARATOR​

function DOMAIN_SEPARATOR() external view returns (bytes32)

See {IERC20Permit-DOMAIN_SEPARATOR}.

Returns​

NameTypeDescription
_0bytes32undefined

allowance​

function allowance(address owner, address spender) external view returns (uint256)

See {IERC20-allowance}.

Parameters​

NameTypeDescription
owneraddressundefined
spenderaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

approve​

function approve(address spender, uint256 amount) external nonpayable returns (bool)

See {IERC20-approve}. NOTE: If amount is the maximum uint256, the allowance is not updated on transferFrom. This is semantically equivalent to an infinite approval. Requirements: - spender cannot be the zero address.

Parameters​

NameTypeDescription
spenderaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

balanceOf​

function balanceOf(address account) external view returns (uint256)

See {IERC20-balanceOf}.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

burn​

function burn(uint256 amount) external nonpayable

Destroys amount tokens from the caller. See {ERC20-_burn}.

Parameters​

NameTypeDescription
amountuint256undefined

burnFrom​

function burnFrom(address account, uint256 amount) external nonpayable

Destroys amount tokens from account, deducting from the caller's allowance. See {ERC20-_burn} and {ERC20-allowance}. Requirements: - the caller must have allowance for accounts's tokens of at least amount.

Parameters​

NameTypeDescription
accountaddressundefined
amountuint256undefined

checkpoints​

function checkpoints(address account, uint32 pos) external view returns (struct ERC20VotesUpgradeable.Checkpoint)

Get the pos-th checkpoint for account.

Parameters​

NameTypeDescription
accountaddressundefined
posuint32undefined

Returns​

NameTypeDescription
_0ERC20VotesUpgradeable.Checkpointundefined

claim​

function claim(address _receiver, uint256 _quantity, address _currency, uint256 _pricePerToken, IDrop.AllowlistProof _allowlistProof, bytes _data) external payable

Parameters​

NameTypeDescription
_receiveraddressundefined
_quantityuint256undefined
_currencyaddressundefined
_pricePerTokenuint256undefined
_allowlistProofIDrop.AllowlistProofundefined
_databytesundefined

claimCondition​

function claimCondition() external view returns (uint256 currentStartId, uint256 count)

Returns​

NameTypeDescription
currentStartIduint256undefined
countuint256undefined

contractType​

function contractType() external pure returns (bytes32)

Returns​

NameTypeDescription
_0bytes32undefined

contractURI​

function contractURI() external view returns (string)

Returns the contract metadata URI.

Returns​

NameTypeDescription
_0stringundefined

contractVersion​

function contractVersion() external pure returns (uint8)

Returns​

NameTypeDescription
_0uint8undefined

decimals​

function decimals() external view returns (uint8)

Returns the number of decimals used to get its user representation. For example, if decimals equals 2, a balance of 505 tokens should be displayed to a user as 5.05 (505 / 10 ** 2). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless this function is overridden; NOTE: This information is only used for display purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.

Returns​

NameTypeDescription
_0uint8undefined

decreaseAllowance​

function decreaseAllowance(address spender, uint256 subtractedValue) external nonpayable returns (bool)

Atomically decreases the allowance granted to spender by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender cannot be the zero address. - spender must have allowance for the caller of at least subtractedValue.

Parameters​

NameTypeDescription
spenderaddressundefined
subtractedValueuint256undefined

Returns​

NameTypeDescription
_0boolundefined

delegate​

function delegate(address delegatee) external nonpayable

Delegate votes from the sender to delegatee.

Parameters​

NameTypeDescription
delegateeaddressundefined

delegateBySig​

function delegateBySig(address delegatee, uint256 nonce, uint256 expiry, uint8 v, bytes32 r, bytes32 s) external nonpayable

Delegates votes from signer to delegatee

Parameters​

NameTypeDescription
delegateeaddressundefined
nonceuint256undefined
expiryuint256undefined
vuint8undefined
rbytes32undefined
sbytes32undefined

delegates​

function delegates(address account) external view returns (address)

Get the address account is currently delegating to.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0addressundefined

getActiveClaimConditionId​

function getActiveClaimConditionId() external view returns (uint256)

At any given moment, returns the uid for the active claim condition.

Returns​

NameTypeDescription
_0uint256undefined

getClaimConditionById​

function getClaimConditionById(uint256 _conditionId) external view returns (struct IClaimCondition.ClaimCondition condition)

Returns the claim condition at the given uid.

Parameters​

NameTypeDescription
_conditionIduint256undefined

Returns​

NameTypeDescription
conditionIClaimCondition.ClaimConditionundefined

getPastTotalSupply​

function getPastTotalSupply(uint256 blockNumber) external view returns (uint256)

Retrieve the totalSupply at the end of blockNumber. Note, this value is the sum of all balances. It is but NOT the sum of all the delegated votes! Requirements: - blockNumber must have been already mined

Parameters​

NameTypeDescription
blockNumberuint256undefined

Returns​

NameTypeDescription
_0uint256undefined

getPastVotes​

function getPastVotes(address account, uint256 blockNumber) external view returns (uint256)

Retrieve the number of votes for account at the end of blockNumber. Requirements: - blockNumber must have been already mined

Parameters​

NameTypeDescription
accountaddressundefined
blockNumberuint256undefined

Returns​

NameTypeDescription
_0uint256undefined

getPlatformFeeInfo​

function getPlatformFeeInfo() external view returns (address, uint16)

Returns the platform fee recipient and bps.

Returns​

NameTypeDescription
_0addressundefined
_1uint16undefined

getRoleAdmin​

function getRoleAdmin(bytes32 role) external view returns (bytes32)

Returns the admin role that controls the specified role.

See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")

Returns​

NameTypeDescription
_0bytes32undefined

getRoleMember​

function getRoleMember(bytes32 role, uint256 index) external view returns (address member)

Returns the role-member from a list of members for a role, at a given index.

Returns member who has role, at index of role-members list. See struct {RoleMembers}, and mapping {roleMembers}

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
indexuint256Index in list of current members for the role.

Returns​

NameTypeDescription
memberaddressAddress of account that has role

getRoleMemberCount​

function getRoleMemberCount(bytes32 role) external view returns (uint256 count)

Returns total number of accounts that have a role.

Returns count of accounts that have role. See struct {RoleMembers}, and mapping {roleMembers}

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")

Returns​

NameTypeDescription
countuint256Total number of accounts that have role

getSupplyClaimedByWallet​

function getSupplyClaimedByWallet(uint256 _conditionId, address _claimer) external view returns (uint256 supplyClaimedByWallet)

Returns the supply claimed by claimer for a given conditionId.

Parameters​

NameTypeDescription
_conditionIduint256undefined
_claimeraddressundefined

Returns​

NameTypeDescription
supplyClaimedByWalletuint256undefined

getVotes​

function getVotes(address account) external view returns (uint256)

Gets the current votes balance for account

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

grantRole​

function grantRole(bytes32 role, address account) external nonpayable

Grants a role to an account, if not previously granted.

Caller must have admin role for the role. Emits {RoleGranted Event}.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
accountaddressAddress of the account to which the role is being granted.

hasRole​

function hasRole(bytes32 role, address account) external view returns (bool)

Checks whether an account has a particular role.

Returns true if account has been granted role.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
accountaddressAddress of the account for which the role is being checked.

Returns​

NameTypeDescription
_0boolundefined

hasRoleWithSwitch​

function hasRoleWithSwitch(bytes32 role, address account) external view returns (bool)

Checks whether an account has a particular role; role restrictions can be switched on and off.

Returns true if account has been granted role. Role restrictions can be switched on and off: - If address(0) has ROLE, then the ROLE restrictions don't apply. - If address(0) does not have ROLE, then the ROLE restrictions will apply.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
accountaddressAddress of the account for which the role is being checked.

Returns​

NameTypeDescription
_0boolundefined

increaseAllowance​

function increaseAllowance(address spender, uint256 addedValue) external nonpayable returns (bool)

Atomically increases the allowance granted to spender by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender cannot be the zero address.

Parameters​

NameTypeDescription
spenderaddressundefined
addedValueuint256undefined

Returns​

NameTypeDescription
_0boolundefined

initialize​

function initialize(address _defaultAdmin, string _name, string _symbol, string _contractURI, address[] _trustedForwarders, address _saleRecipient, address _platformFeeRecipient, uint128 _platformFeeBps) external nonpayable

Initializes the contract, like a constructor.

Parameters​

NameTypeDescription
_defaultAdminaddressundefined
_namestringundefined
_symbolstringundefined
_contractURIstringundefined
_trustedForwardersaddress[]undefined
_saleRecipientaddressundefined
_platformFeeRecipientaddressundefined
_platformFeeBpsuint128undefined

isTrustedForwarder​

function isTrustedForwarder(address forwarder) external view returns (bool)

Parameters​

NameTypeDescription
forwarderaddressundefined

Returns​

NameTypeDescription
_0boolundefined

maxTotalSupply​

function maxTotalSupply() external view returns (uint256)

Global max total supply of tokens.

Returns​

NameTypeDescription
_0uint256undefined

multicall​

function multicall(bytes[] data) external nonpayable returns (bytes[] results)

Receives and executes a batch of function calls on this contract.

Parameters​

NameTypeDescription
databytes[]undefined

Returns​

NameTypeDescription
resultsbytes[]undefined

name​

function name() external view returns (string)

Returns the name of the token.

Returns​

NameTypeDescription
_0stringundefined

nonces​

function nonces(address owner) external view returns (uint256)

See {IERC20Permit-nonces}.

Parameters​

NameTypeDescription
owneraddressundefined

Returns​

NameTypeDescription
_0uint256undefined

numCheckpoints​

function numCheckpoints(address account) external view returns (uint32)

Get number of checkpoints for account.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint32undefined

permit​

function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external nonpayable

See {IERC20Permit-permit}.

Parameters​

NameTypeDescription
owneraddressundefined
spenderaddressundefined
valueuint256undefined
deadlineuint256undefined
vuint8undefined
rbytes32undefined
sbytes32undefined

primarySaleRecipient​

function primarySaleRecipient() external view returns (address)

Returns primary sale recipient address.

Returns​

NameTypeDescription
_0addressundefined

renounceRole​

function renounceRole(bytes32 role, address account) external nonpayable

Revokes role from the account.

Caller must have the role, with caller being the same as account. Emits {RoleRevoked Event}.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
accountaddressAddress of the account from which the role is being revoked.

revokeRole​

function revokeRole(bytes32 role, address account) external nonpayable

Revokes role from an account.

Caller must have admin role for the role. Emits {RoleRevoked Event}.

Parameters​

NameTypeDescription
rolebytes32keccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")
accountaddressAddress of the account from which the role is being revoked.

setClaimConditions​

function setClaimConditions(IClaimCondition.ClaimCondition[] _conditions, bool _resetClaimEligibility) external nonpayable

Parameters​

NameTypeDescription
_conditionsIClaimCondition.ClaimCondition[]undefined
_resetClaimEligibilityboolundefined

setContractURI​

function setContractURI(string _uri) external nonpayable

Lets a contract admin set the URI for contract-level metadata.

Caller should be authorized to setup contractURI, e.g. contract admin. See {_canSetContractURI}. Emits {ContractURIUpdated Event}.

Parameters​

NameTypeDescription
_uristringkeccak256 hash of the role. e.g. keccak256("TRANSFER_ROLE")

setMaxTotalSupply​

function setMaxTotalSupply(uint256 _maxTotalSupply) external nonpayable

Lets a contract admin set the global maximum supply for collection's NFTs.

Parameters​

NameTypeDescription
_maxTotalSupplyuint256undefined

setPlatformFeeInfo​

function setPlatformFeeInfo(address _platformFeeRecipient, uint256 _platformFeeBps) external nonpayable

Updates the platform fee recipient and bps.

Caller should be authorized to set platform fee info. See {_canSetPlatformFeeInfo}. Emits {PlatformFeeInfoUpdated Event}; See {_setupPlatformFeeInfo}.

Parameters​

NameTypeDescription
_platformFeeRecipientaddressAddress to be set as new platformFeeRecipient.
_platformFeeBpsuint256Updated platformFeeBps.

setPrimarySaleRecipient​

function setPrimarySaleRecipient(address _saleRecipient) external nonpayable

Updates primary sale recipient.

Caller should be authorized to set primary sales info. See {_canSetPrimarySaleRecipient}. Emits {PrimarySaleRecipientUpdated Event}; See {_setupPrimarySaleRecipient}.

Parameters​

NameTypeDescription
_saleRecipientaddressAddress to be set as new recipient of primary sales.

symbol​

function symbol() external view returns (string)

Returns the symbol of the token, usually a shorter version of the name.

Returns​

NameTypeDescription
_0stringundefined

totalSupply​

function totalSupply() external view returns (uint256)

See {IERC20-totalSupply}.

Returns​

NameTypeDescription
_0uint256undefined

transfer​

function transfer(address to, uint256 amount) external nonpayable returns (bool)

See {IERC20-transfer}. Requirements: - to cannot be the zero address. - the caller must have a balance of at least amount.

Parameters​

NameTypeDescription
toaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

transferFrom​

function transferFrom(address from, address to, uint256 amount) external nonpayable returns (bool)

See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum uint256. Requirements: - from and to cannot be the zero address. - from must have a balance of at least amount. - the caller must have allowance for from's tokens of at least amount.

Parameters​

NameTypeDescription
fromaddressundefined
toaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

verifyClaim​

function verifyClaim(uint256 _conditionId, address _claimer, uint256 _quantity, address _currency, uint256 _pricePerToken, IDrop.AllowlistProof _allowlistProof) external view returns (bool isOverride)

Parameters​

NameTypeDescription
_conditionIduint256undefined
_claimeraddressundefined
_quantityuint256undefined
_currencyaddressundefined
_pricePerTokenuint256undefined
_allowlistProofIDrop.AllowlistProofundefined

Returns​

NameTypeDescription
isOverrideboolundefined

Events​

Approval​

event Approval(address indexed owner, address indexed spender, uint256 value)

Parameters​

NameTypeDescription
owner indexedaddressundefined
spender indexedaddressundefined
valueuint256undefined

ClaimConditionsUpdated​

event ClaimConditionsUpdated(IClaimCondition.ClaimCondition[] claimConditions, bool resetEligibility)

Emitted when the contract's claim conditions are updated.

Parameters​

NameTypeDescription
claimConditionsIClaimCondition.ClaimCondition[]undefined
resetEligibilityboolundefined

ContractURIUpdated​

event ContractURIUpdated(string prevURI, string newURI)

Parameters​

NameTypeDescription
prevURIstringundefined
newURIstringundefined

DelegateChanged​

event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate)

Parameters​

NameTypeDescription
delegator indexedaddressundefined
fromDelegate indexedaddressundefined
toDelegate indexedaddressundefined

DelegateVotesChanged​

event DelegateVotesChanged(address indexed delegate, uint256 previousBalance, uint256 newBalance)

Parameters​

NameTypeDescription
delegate indexedaddressundefined
previousBalanceuint256undefined
newBalanceuint256undefined

Initialized​

event Initialized(uint8 version)

Parameters​

NameTypeDescription
versionuint8undefined

MaxTotalSupplyUpdated​

event MaxTotalSupplyUpdated(uint256 maxTotalSupply)

Emitted when the global max supply of tokens is updated.

Parameters​

NameTypeDescription
maxTotalSupplyuint256undefined

PlatformFeeInfoUpdated​

event PlatformFeeInfoUpdated(address indexed platformFeeRecipient, uint256 platformFeeBps)

Parameters​

NameTypeDescription
platformFeeRecipient indexedaddressundefined
platformFeeBpsuint256undefined

PrimarySaleRecipientUpdated​

event PrimarySaleRecipientUpdated(address indexed recipient)

Parameters​

NameTypeDescription
recipient indexedaddressundefined

RoleAdminChanged​

event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)

Parameters​

NameTypeDescription
role indexedbytes32undefined
previousAdminRole indexedbytes32undefined
newAdminRole indexedbytes32undefined

RoleGranted​

event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)

Parameters​

NameTypeDescription
role indexedbytes32undefined
account indexedaddressundefined
sender indexedaddressundefined

RoleRevoked​

event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)

Parameters​

NameTypeDescription
role indexedbytes32undefined
account indexedaddressundefined
sender indexedaddressundefined

TokensClaimed​

event TokensClaimed(uint256 indexed claimConditionIndex, address indexed claimer, address indexed receiver, uint256 startTokenId, uint256 quantityClaimed)

Emitted when tokens are claimed via claim.

Parameters​

NameTypeDescription
claimConditionIndex indexeduint256undefined
claimer indexedaddressundefined
receiver indexedaddressundefined
startTokenIduint256undefined
quantityClaimeduint256undefined

Transfer​

event Transfer(address indexed from, address indexed to, uint256 value)

Parameters​

NameTypeDescription
from indexedaddressundefined
to indexedaddressundefined
valueuint256undefined