Skip to main content

ERC721Burnable

import "@thirdweb-dev/contracts/extension/interface/IBurnableERC721.sol";

ERC721Burnable allows the NFTs in the contract to be burned (transferred to a non-recoverable address).

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.

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

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

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

function burn(uint256 tokenId) external {
// Your custom implementation here
}
}

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