Skip to main content

NFTDrop class

Setup a collection of one-of-one NFTs that are minted as users claim them.

Example

import { ThirdwebSDK } from "@thirdweb-dev/sdk";

const sdk = new ThirdwebSDK("{{chainName}}");
const contract = await sdk.getContract("{{contract_address}}", "nft-drop");

Constructors

ConstructorModifiersDescription
(constructor)(network, address, storage, options, abi, chainId, contractWrapper)Constructs a new instance of the NFTDrop class

Properties

PropertyModifiersTypeDescription
abiAbi
checkoutPaperCheckout<PrebuiltNFTDrop>Checkout
claimConditionsDropClaimConditions<PrebuiltNFTDrop>Configure claim conditions
contractRolesstaticreadonly ["admin", "minter", "transfer"]
encoderContractEncoder<PrebuiltNFTDrop>
erc721Erc721<PrebuiltNFTDrop>
estimatorGasCostEstimator<PrebuiltNFTDrop>
eventsContractEvents<PrebuiltNFTDrop>
metadataContractMetadata<PrebuiltNFTDrop, typeof DropErc721ContractSchema>
ownerContractOwner<PrebuiltNFTDrop>
platformFeesContractPlatformFee<PrebuiltNFTDrop>
revealerDelayedReveal<PrebuiltNFTDrop>Delayed reveal
rolesContractRoles<PrebuiltNFTDrop, typeof NFTDrop.contractRoles[number]>
royaltiesContractRoyalty<PrebuiltNFTDrop, typeof DropErc721ContractSchema>Configure royalties
salesContractPrimarySale<PrebuiltNFTDrop>

Methods

MethodModifiersDescription
balance()Get NFT Balance for the currently connected wallet
balanceOf(address)Get NFT Balance
burn(tokenId)Burn a single NFT
claim(quantity, checkERC20Allowance)Claim NFTs to the connected wallet.
claimTo(destinationAddress, quantity, checkERC20Allowance)Claim unique NFTs to a specific Wallet
createBatch(metadatas, options)Create a batch of unique NFTs to be claimed in the future
get(tokenId)Get a single NFT Metadata
getAddress()
getAllClaimed(queryParams)Get All Claimed NFTs
getAllUnclaimed(queryParams)Get All Unclaimed NFTs
getClaimTransaction(destinationAddress, quantity, checkERC20Allowance)Construct a claim transaction without executing it. This is useful for estimating the gas cost of a claim transaction, overriding transaction options and having fine grained control over the transaction execution.
isApproved(address, operator)Get whether this wallet has approved transfers from the given operator
isTransferRestricted()Get whether users can transfer NFTs from this contract
ownerOf(tokenId)Get the current owner of a given NFT within this Contract
totalClaimedSupply()Get the claimed supply
totalSupply()Get the total count NFTs in this drop contract, both claimed and unclaimed
totalUnclaimedSupply()Get the unclaimed supply
transfer(to, tokenId)Transfer a single NFT

Signature:

export declare class NFTDrop extends StandardErc721<PrebuiltNFTDrop>

Extends: StandardErc721<PrebuiltNFTDrop>