Available hooks
Main hooks
| Hook | Description | 
|---|---|
| useSDK | Access the instance of the thirdweb SDK created by the ThirdwebProvider. | 
| useContract | Use this resolve a contract address to a smart contract instance. | 
| useContractWrite | Use this to get data from a contract read-function call. | 
| useContractRead | Use this to get a function to make a write call to your contract. | 
| useContractEvents | Use this to get the contract metadata for a (built-in or custom) contract. | 
| useContractMetadata | Use this to get the contract metadata for a (built-in or custom) contract. | 
Wallet connection
| Hook | Description | 
|---|---|
| useAddress | Hook for accessing the address of the connected wallet. | 
| useWalletConnect | Hook for connecting to a mobile wallet with Wallet Connect. | 
| useDisconnect | Hook for disconnecting the currently connected wallet. | 
Network connection
| Hook | Description | 
|---|---|
| useChainId | Hook for accessing the chain ID of the network the current wallet is connected to | 
| useNetwork | Hook for getting metadata about the network the current wallet is connected to and switching networks. | 
| useNetworkMismatch | Hook for checking whether the connected wallet is on the correct network specified by the desiredChainId passed to the . | 
NFT
| Hook | Description | 
|---|---|
| useNFT | Use this to get an individual NFT token of your NFTContract. | 
| useNFTs | Use this to get a list of NFT tokens of your NFTContract. | 
| useTotalCirculatingSupply | Use this to get a the total (minted) supply of your NFTContract. | 
| useOwnedNFTs | Use this to get a the owned NFTs for a specific Erc721OrErc1155 and wallet address. | 
| useNFTBalance | Use this to get a the total balance of a NFTContract and wallet address. | 
| useTotalCount | Use this to get the total count of NFT tokens of your NFTContract. | 
| useMintNFT | Use this to mint a new NFT on your Erc721OrErc1155. | 
| useMintNFTSupply | Use this mint extra supply on your Erc1155. | 
| useTransferNFT | Use this to transfer tokens on your NFTContract. | 
| useAirdropNFT | Use this to airdrop tokens on your Erc1155. | 
| useBurnNFT | Use this to burn an NFT on your Erc721OrErc1155. | 
Token
| Hook | Description | 
|---|---|
| useTokenSupply | Use this to get a the total supply of your contract. | 
| useTokenBalance | Use this to get the balance of your contract for a given address. | 
| useTokenDecimals | Use this to get the decimals of your contract for a given address. | 
| useMintToken | Use this to mint new tokens on your contract. | 
| useClaimToken | Use this to claim tokens from your contract. | 
| useTransferToken | Use this to transfer tokens on your contract. | 
| useTransferBatchToken | Use this to transfer batch tokens on your contract. | 
| useBurnToken | Use this to burn tokens on your contract. | 
Marketplace
| Hook | Description | 
|---|---|
| useListing | Use this to get a specific listing from the marketplace. | 
| useListings | Use this to get a list all listings from your marketplace contract. | 
| useListingsCount | Use this to get a count of all listings on your marketplace contract. | 
| useActiveListings | Use this to get a list active listings from your marketplace contract. | 
| useWinningBid | Use this to get a the winning bid for an auction listing from your marketplace contract. | 
| useAuctionWinner | Use this to get the winner of an auction listing from your marketplace contract. | 
| useBidBuffer | Use this to get the buffer in basis points between offers from your marketplace contract. | 
| useCreateDirectListing | Use this to create a new Direct Listing on your marketplace contract. | 
| useCreateAuctionListing | Use this to create a new Auction Listing on your marketplace contract. | 
| useCancelListing | Use this to cancel a listing on your marketplace contract. | 
| useMakeBid | Use this to place a bid on an auction listing from your marketplace contract. | 
| useBuyNow | Use this to buy out an auction listing from your marketplace contract. | 
Permissions Controls
| Hook | Description | 
|---|---|
| useAllRoleMembers | Use this to get the roles of all members. | 
| useRoleMembers | Use this to get the members of a role. | 
| useIsAddressRole | Use this to check if a WalletAddress is a member of a role. | 
| useSetAllRoleMembers | Use this to OVERWRITE the list of addresses that are members of specific roles. | 
| useGrantRole | Use this to grant a WalletAddress a specific role. | 
| useRevokeRole | Use this to revoke a WalletAddress a specific role. | 
Drop
| Hook | Description | 
|---|---|
| useUnclaimedNFTs | Use this to get a list of unclaimed NFT tokens of your ERC721 Drop contract. | 
| useClaimedNFTs | Use this to get a list of claimed (minted) NFT tokens of your ERC721 Drop contract.. | 
| useUnclaimedNFTSupply | Use this to get the total unclaimed NFT supply of your ERC721 Drop contract. | 
| useClaimedNFTSupply | Use this to get the total claimed (minted) NFT supply of your ERC721 Drop contract. | 
| useBatchesToReveal | Use this to get a list of batches that are ready to be revealed. | 
| useClaimNFT | Use this to claim a NFT on your DropContract | 
| useLazyMint | Use this to lazy mint a batch of NFTs on your DropContract. | 
| useDelayedRevealLazyMint | Use this to lazy mint a batch of delayed reveal NFTs on your DropContract. | 
| useRevealLazyMint | Use this to reveal a batch of delayed reveal NFTs on your RevealableContract. | 
Claim Conditions
| Hook | Description | 
|---|---|
| useActiveClaimCondition | Use this to get the active claim condition for ERC20, ERC721 or ERC1155 based contracts. | 
| useClaimConditions | Use this to get all claim conditions for ERC20, ERC721 or ERC1155 based contracts. | 
| useClaimIneligibilityReasons | Use this to check for reasons that prevent claiming for either ERC20, ERC721 or ERC1155 based contracts. | 
| useSetClaimConditions | Use this to set claim conditions on your DropContract. | 
| useResetClaimConditions | Use this to reset claim conditions on your DropContract. |