Skip to main content

DropERC721

Methods

DEFAULT_ADMIN_ROLE

function DEFAULT_ADMIN_ROLE() external view returns (bytes32)

Returns

NameTypeDescription
_0bytes32undefined

approve

function approve(address to, uint256 tokenId) external nonpayable

See {IERC721-approve}.

Parameters

NameTypeDescription
toaddressundefined
tokenIduint256undefined

balanceOf

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

See {IERC721-balanceOf}.

Parameters

NameTypeDescription
owneraddressundefined

Returns

NameTypeDescription
_0uint256undefined

baseURIIndices

function baseURIIndices(uint256) external view returns (uint256)

Largest tokenId of each batch of tokens with the same baseURI

Parameters

NameTypeDescription
_0uint256undefined

Returns

NameTypeDescription
_0uint256undefined

burn

function burn(uint256 tokenId) external nonpayable

Burns tokenId. See {ERC721-_burn}.

Parameters

NameTypeDescription
tokenIduint256undefined

claim

function claim(address _receiver, uint256 _quantity, address _currency, uint256 _pricePerToken, bytes32[] _proofs, uint256 _proofMaxQuantityPerTransaction) external payable

Lets an account claim NFTs.

Parameters

NameTypeDescription
_receiveraddressundefined
_quantityuint256undefined
_currencyaddressundefined
_pricePerTokenuint256undefined
_proofsbytes32[]undefined
_proofMaxQuantityPerTransactionuint256undefined

claimCondition

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

The set of all claim conditions, at any given moment.

Returns

NameTypeDescription
currentStartIduint256undefined
countuint256undefined

contractType

function contractType() external pure returns (bytes32)

Returns the type of the contract.

Returns

NameTypeDescription
_0bytes32undefined

contractURI

function contractURI() external view returns (string)

Contract level metadata.

Returns

NameTypeDescription
_0stringundefined

contractVersion

function contractVersion() external pure returns (uint8)

Returns the version of the contract.

Returns

NameTypeDescription
_0uint8undefined

encryptDecrypt

function encryptDecrypt(bytes data, bytes key) external pure returns (bytes result)

See: https://ethereum.stackexchange.com/questions/69825/decrypt-message-on-chain

Parameters

NameTypeDescription
databytesundefined
keybytesundefined

Returns

NameTypeDescription
resultbytesundefined

encryptedData

function encryptedData(uint256) external view returns (bytes)

*Mapping from 'Largest tokenId of a batch of 'delayed-reveal' tokens with the same baseURI' to encrypted base URI for the respective batch of tokens.**

Parameters

NameTypeDescription
_0uint256undefined

Returns

NameTypeDescription
_0bytesundefined

getActiveClaimConditionId

function getActiveClaimConditionId() external view returns (uint256)

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

Returns

NameTypeDescription
_0uint256undefined

getApproved

function getApproved(uint256 tokenId) external view returns (address)

See {IERC721-getApproved}.

Parameters

NameTypeDescription
tokenIduint256undefined

Returns

NameTypeDescription
_0addressundefined

getBaseURICount

function getBaseURICount() external view returns (uint256)

Returns the amount of stored baseURIs

Returns

NameTypeDescription
_0uint256undefined

getClaimConditionById

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

Returns the claim condition at the given uid.

Parameters

NameTypeDescription
_conditionIduint256undefined

Returns

NameTypeDescription
conditionIDropClaimCondition.ClaimConditionundefined

getClaimTimestamp

function getClaimTimestamp(uint256 _conditionId, address _claimer) external view returns (uint256 lastClaimTimestamp, uint256 nextValidClaimTimestamp)

Returns the timestamp for when a claimer is eligible for claiming NFTs again.

Parameters

NameTypeDescription
_conditionIduint256undefined
_claimeraddressundefined

Returns

NameTypeDescription
lastClaimTimestampuint256undefined
nextValidClaimTimestampuint256undefined

getDefaultRoyaltyInfo

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

Returns the default royalty recipient and bps.

Returns

NameTypeDescription
_0addressundefined
_1uint16undefined

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 role. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.

Parameters

NameTypeDescription
rolebytes32undefined

Returns

NameTypeDescription
_0bytes32undefined

getRoleMember

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

Returns one of the accounts that have role. index must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.

Parameters

NameTypeDescription
rolebytes32undefined
indexuint256undefined

Returns

NameTypeDescription
_0addressundefined

getRoleMemberCount

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

Returns the number of accounts that have role. Can be used together with {getRoleMember} to enumerate all bearers of a role.

Parameters

NameTypeDescription
rolebytes32undefined

Returns

NameTypeDescription
_0uint256undefined

getRoyaltyInfoForToken

function getRoyaltyInfoForToken(uint256 _tokenId) external view returns (address, uint16)

Returns the royalty recipient and bps for a particular token Id.

Parameters

NameTypeDescription
_tokenIduint256undefined

Returns

NameTypeDescription
_0addressundefined
_1uint16undefined

grantRole

function grantRole(bytes32 role, address account) external nonpayable

Grants role to account. If account had not been already granted role, emits a {RoleGranted} event. Requirements: - the caller must have role's admin role.

Parameters

NameTypeDescription
rolebytes32undefined
accountaddressundefined

hasRole

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

Returns true if account has been granted role.

Parameters

NameTypeDescription
rolebytes32undefined
accountaddressundefined

Returns

NameTypeDescription
_0boolundefined

initialize

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

Initiliazes the contract, like a constructor.

Parameters

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

isApprovedForAll

function isApprovedForAll(address owner, address operator) external view returns (bool)

See {IERC721-isApprovedForAll}.

Parameters

NameTypeDescription
owneraddressundefined
operatoraddressundefined

Returns

NameTypeDescription
_0boolundefined

isTrustedForwarder

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

Parameters

NameTypeDescription
forwarderaddressundefined

Returns

NameTypeDescription
_0boolundefined

lazyMint

function lazyMint(uint256 _amount, string _baseURIForTokens, bytes _data) external nonpayable

Lets an account with MINTER_ROLE lazy mint 'n' NFTs. The URIs for each token is the provided _baseURIForTokens + {tokenId}.

Parameters

NameTypeDescription
_amountuint256undefined
_baseURIForTokensstringundefined
_databytesundefined

maxTotalSupply

function maxTotalSupply() external view returns (uint256)

Global max total supply of NFTs.

Returns

NameTypeDescription
_0uint256undefined

maxWalletClaimCount

function maxWalletClaimCount() external view returns (uint256)

The max number of NFTs a wallet can claim.

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)

See {IERC721Metadata-name}.

Returns

NameTypeDescription
_0stringundefined

nextTokenIdToClaim

function nextTokenIdToClaim() external view returns (uint256)

The next token ID of the NFT that can be claimed.

Returns

NameTypeDescription
_0uint256undefined

nextTokenIdToMint

function nextTokenIdToMint() external view returns (uint256)

The next token ID of the NFT to "lazy mint".

Returns

NameTypeDescription
_0uint256undefined

owner

function owner() external view returns (address)

Returns the address of the current owner.

Returns

NameTypeDescription
_0addressundefined

ownerOf

function ownerOf(uint256 tokenId) external view returns (address)

See {IERC721-ownerOf}.

Parameters

NameTypeDescription
tokenIduint256undefined

Returns

NameTypeDescription
_0addressundefined

primarySaleRecipient

function primarySaleRecipient() external view returns (address)

The address that receives all primary sales value.

Returns

NameTypeDescription
_0addressundefined

renounceRole

function renounceRole(bytes32 role, address account) external nonpayable

Revokes role from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked role, emits a {RoleRevoked} event. Requirements: - the caller must be account.

Parameters

NameTypeDescription
rolebytes32undefined
accountaddressundefined

reveal

function reveal(uint256 index, bytes _key) external nonpayable returns (string revealedURI)

Lets an account with MINTER_ROLE reveal the URI for a batch of 'delayed-reveal' NFTs.

Parameters

NameTypeDescription
indexuint256undefined
_keybytesundefined

Returns

NameTypeDescription
revealedURIstringundefined

revokeRole

function revokeRole(bytes32 role, address account) external nonpayable

Revokes role from account. If account had been granted role, emits a {RoleRevoked} event. Requirements: - the caller must have role's admin role.

Parameters

NameTypeDescription
rolebytes32undefined
accountaddressundefined

royaltyInfo

function royaltyInfo(uint256 tokenId, uint256 salePrice) external view returns (address receiver, uint256 royaltyAmount)

Returns the royalty recipient and amount, given a tokenId and sale price.

Parameters

NameTypeDescription
tokenIduint256undefined
salePriceuint256undefined

Returns

NameTypeDescription
receiveraddressundefined
royaltyAmountuint256undefined

safeTransferFrom

function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) external nonpayable

See {IERC721-safeTransferFrom}.

Parameters

NameTypeDescription
fromaddressundefined
toaddressundefined
tokenIduint256undefined
_databytesundefined

setApprovalForAll

function setApprovalForAll(address operator, bool approved) external nonpayable

See {IERC721-setApprovalForAll}.

Parameters

NameTypeDescription
operatoraddressundefined
approvedboolundefined

setClaimConditions

function setClaimConditions(IDropClaimCondition.ClaimCondition[] _phases, bool _resetClaimEligibility) external nonpayable

Lets a contract admin (account with DEFAULT_ADMIN_ROLE) set claim conditions.

Parameters

NameTypeDescription
_phasesIDropClaimCondition.ClaimCondition[]undefined
_resetClaimEligibilityboolundefined

setContractURI

function setContractURI(string _uri) external nonpayable

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

Parameters

NameTypeDescription
_uristringundefined

setDefaultRoyaltyInfo

function setDefaultRoyaltyInfo(address _royaltyRecipient, uint256 _royaltyBps) external nonpayable

Lets a contract admin update the default royalty recipient and bps.

Parameters

NameTypeDescription
_royaltyRecipientaddressundefined
_royaltyBpsuint256undefined

setMaxTotalSupply

function setMaxTotalSupply(uint256 _maxTotalSupply) external nonpayable

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

Parameters

NameTypeDescription
_maxTotalSupplyuint256undefined

setMaxWalletClaimCount

function setMaxWalletClaimCount(uint256 _count) external nonpayable

Lets a contract admin set a maximum number of NFTs that can be claimed by any wallet.

Parameters

NameTypeDescription
_countuint256undefined

setOwner

function setOwner(address _newOwner) external nonpayable

Lets a contract admin set a new owner for the contract. The new owner must be a contract admin.

Parameters

NameTypeDescription
_newOwneraddressundefined

setPlatformFeeInfo

function setPlatformFeeInfo(address _platformFeeRecipient, uint256 _platformFeeBps) external nonpayable

Lets a contract admin update the platform fee recipient and bps

Parameters

NameTypeDescription
_platformFeeRecipientaddressundefined
_platformFeeBpsuint256undefined

setPrimarySaleRecipient

function setPrimarySaleRecipient(address _saleRecipient) external nonpayable

Lets a contract admin set the recipient for all primary sales.

Parameters

NameTypeDescription
_saleRecipientaddressundefined

setRoyaltyInfoForToken

function setRoyaltyInfoForToken(uint256 _tokenId, address _recipient, uint256 _bps) external nonpayable

Lets a contract admin set the royalty recipient and bps for a particular token Id.

Parameters

NameTypeDescription
_tokenIduint256undefined
_recipientaddressundefined
_bpsuint256undefined

setWalletClaimCount

function setWalletClaimCount(address _claimer, uint256 _count) external nonpayable

Lets a contract admin set a claim count for a wallet.

Parameters

NameTypeDescription
_claimeraddressundefined
_countuint256undefined

supportsInterface

function supportsInterface(bytes4 interfaceId) external view returns (bool)

See ERC 165

Parameters

NameTypeDescription
interfaceIdbytes4undefined

Returns

NameTypeDescription
_0boolundefined

symbol

function symbol() external view returns (string)

See {IERC721Metadata-symbol}.

Returns

NameTypeDescription
_0stringundefined

tokenByIndex

function tokenByIndex(uint256 index) external view returns (uint256)

See {IERC721Enumerable-tokenByIndex}.

Parameters

NameTypeDescription
indexuint256undefined

Returns

NameTypeDescription
_0uint256undefined

tokenOfOwnerByIndex

function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256)

See {IERC721Enumerable-tokenOfOwnerByIndex}.

Parameters

NameTypeDescription
owneraddressundefined
indexuint256undefined

Returns

NameTypeDescription
_0uint256undefined

tokenURI

function tokenURI(uint256 _tokenId) external view returns (string)

Returns the URI for a given tokenId.

Parameters

NameTypeDescription
_tokenIduint256undefined

Returns

NameTypeDescription
_0stringundefined

totalSupply

function totalSupply() external view returns (uint256)

See {IERC721Enumerable-totalSupply}.

Returns

NameTypeDescription
_0uint256undefined

transferFrom

function transferFrom(address from, address to, uint256 tokenId) external nonpayable

See {IERC721-transferFrom}.

Parameters

NameTypeDescription
fromaddressundefined
toaddressundefined
tokenIduint256undefined

verifyClaim

function verifyClaim(uint256 _conditionId, address _claimer, uint256 _quantity, address _currency, uint256 _pricePerToken, bool verifyMaxQuantityPerTransaction) external view

Checks a request to claim NFTs against the active claim condition's criteria.

Parameters

NameTypeDescription
_conditionIduint256undefined
_claimeraddressundefined
_quantityuint256undefined
_currencyaddressundefined
_pricePerTokenuint256undefined
verifyMaxQuantityPerTransactionboolundefined

verifyClaimMerkleProof

function verifyClaimMerkleProof(uint256 _conditionId, address _claimer, uint256 _quantity, bytes32[] _proofs, uint256 _proofMaxQuantityPerTransaction) external view returns (bool validMerkleProof, uint256 merkleProofIndex)

Checks whether a claimer meets the claim condition's allowlist criteria.

Parameters

NameTypeDescription
_conditionIduint256undefined
_claimeraddressundefined
_quantityuint256undefined
_proofsbytes32[]undefined
_proofMaxQuantityPerTransactionuint256undefined

Returns

NameTypeDescription
validMerkleProofboolundefined
merkleProofIndexuint256undefined

walletClaimCount

function walletClaimCount(address) external view returns (uint256)

Mapping from address => total number of NFTs a wallet has claimed.

Parameters

NameTypeDescription
_0addressundefined

Returns

NameTypeDescription
_0uint256undefined

Events

Approval

event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)

Parameters

NameTypeDescription
owner indexedaddressundefined
approved indexedaddressundefined
tokenId indexeduint256undefined

ApprovalForAll

event ApprovalForAll(address indexed owner, address indexed operator, bool approved)

Parameters

NameTypeDescription
owner indexedaddressundefined
operator indexedaddressundefined
approvedboolundefined

ClaimConditionsUpdated

event ClaimConditionsUpdated(IDropClaimCondition.ClaimCondition[] claimConditions)

Parameters

NameTypeDescription
claimConditionsIDropClaimCondition.ClaimCondition[]undefined

DefaultRoyalty

event DefaultRoyalty(address indexed newRoyaltyRecipient, uint256 newRoyaltyBps)

Parameters

NameTypeDescription
newRoyaltyRecipient indexedaddressundefined
newRoyaltyBpsuint256undefined

MaxTotalSupplyUpdated

event MaxTotalSupplyUpdated(uint256 maxTotalSupply)

Parameters

NameTypeDescription
maxTotalSupplyuint256undefined

MaxWalletClaimCountUpdated

event MaxWalletClaimCountUpdated(uint256 count)

Parameters

NameTypeDescription
countuint256undefined

NFTRevealed

event NFTRevealed(uint256 endTokenId, string revealedURI)

Parameters

NameTypeDescription
endTokenIduint256undefined
revealedURIstringundefined

OwnerUpdated

event OwnerUpdated(address indexed prevOwner, address indexed newOwner)

Parameters

NameTypeDescription
prevOwner indexedaddressundefined
newOwner indexedaddressundefined

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

RoyaltyForToken

event RoyaltyForToken(uint256 indexed tokenId, address indexed royaltyRecipient, uint256 royaltyBps)

Parameters

NameTypeDescription
tokenId indexeduint256undefined
royaltyRecipient indexedaddressundefined
royaltyBpsuint256undefined

TokensClaimed

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

Parameters

NameTypeDescription
claimConditionIndex indexeduint256undefined
claimer indexedaddressundefined
receiver indexedaddressundefined
startTokenIduint256undefined
quantityClaimeduint256undefined

TokensLazyMinted

event TokensLazyMinted(uint256 startTokenId, uint256 endTokenId, string baseURI, bytes encryptedBaseURI)

Parameters

NameTypeDescription
startTokenIduint256undefined
endTokenIduint256undefined
baseURIstringundefined
encryptedBaseURIbytesundefined

Transfer

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

Parameters

NameTypeDescription
from indexedaddressundefined
to indexedaddressundefined
tokenId indexeduint256undefined

WalletClaimCountUpdated

event WalletClaimCountUpdated(address indexed wallet, uint256 count)

Parameters

NameTypeDescription
wallet indexedaddressundefined
countuint256undefined