IERC721Enumerable
IERC721Enumerable is an optional extension of the ERC-721 standard that provides a standardized way to enumerate NFTs managed by a contract. It defines a separate interface, IERC721Enumerable, that extends the core IERC721 interface. Implementing this extension enables external accounts and applications to list all tokens and to list tokens owned by a specific address. Because enumerability requires maintaining additional on-chain data, not all ERC-721 tokens implement this extension; it increases minting, transfer, and storage costs.
The interface declares three view-only functions. totalSupply() returns the total number of tokens tracked by the
Usage in applications is straightforward: to enumerate all tokens, a caller can iterate from 0 to totalSupply()
Implementation notes: when a contract supports IERC721Enumerable, it must maintain internal structures that reflect current ownership