Skip to main content

ERC721Supply

import "@thirdweb-dev/contracts/eip/interface/IERC721Supply.sol"

View all of the NFTs from the collection by implementing the totalSupply function on your ERC721(A) contract.

info

This extension is an interface and requires all of the functions to be implemented


Usage

This is an example smart contract demonstrating how to inherit from this extension and override the functions to add (optional) custom functionality.

The ERC721A contract comes with a totalSupply function that returns the total number of NFTs that have been minted in the collection (including tokens that have been burned).

This means you can already view the total supply of NFTs in the collection by implementing the ERC721A contract.

You can optionally override the functionality of this function as outlined below:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@thirdweb-dev/contracts/eip/ERC721A.sol";

contract Contract is ERC721A {
constructor(
string memory _name,
string memory _symbol
)
ERC721A(
_name,
_symbol
)
{}

function totalSupply() public view override returns (uint256) {
// Your custom implementation here (overriding this function is optional)
}

}

SDK Usage

By adding this extension to a smart contract, the following features, hooks and functions are unlocked in the SDK:

Base Contracts Implementing This Extension