zNFT Token Standard
Handlers Overview
Core Information
Info
- Action:
Info
- Purpose: Returns overall contract metadata (name, symbol, version, description, max supply, total supply) along with module-specific info (Pausable, Roles, Royalty).
Get-Royalty
- Action:
Get-Royalty
- Purpose: Retrieves the current global royalty settings (recipient and percentage).
Total-Supply
- Action:
Total-Supply
- Purpose: Provides the total number of NFTs that have been minted.
Royalty Handlers
Roles/Add
- Action:
Roles/Add
- Purpose: Adds a specified role to an address.
- Guard: OnlyAdminGuard
Roles/Remove
- Action:
Roles/Remove
- Purpose: Removes a specified role from an address.
- Guard: OnlyAdminGuard
Roles/Get-Roles
- Action:
Roles/Get-Roles
- Purpose: Retrieves all roles assigned to an address.
Pausable Handlers
Pausable/Pause
- Action:
Pausable/Pause
- Purpose: Pauses the contract to block operations during emergencies.
- Guard: OnlyAdminGuard
Pausable/Unpause
- Action:
Pausable/Unpause
- Purpose: Resumes contract operations.
- Guard: OnlyAdminGuard
Management Handlers (Admin Only)
Manage/Set-Max-Supply
- Action:
Manage/Set-Max-Supply
- Purpose: Updates the maximum allowable supply of tokens.
Manage/Set-Royalty
- Action:
Manage/Set-Royalty
- Purpose: Configures the global royalty settings.
Minting Tokens (Minter)
Mint
- Action:
Mint
- Purpose: Mints a new NFT by assigning a recipient and setting structured metadata.
- Guard: OnlyMinterGuard
Manage/Update-Metadata
- Action:
Manage/Update-Metadata
- Purpose: Updates token metadata (only if metadata is not frozen; minter only).
- Guard: OnlyMinterGuard
Token Operations
Balance-Of
- Action:
Balance-Of
- Purpose: Returns the list and count of tokens owned by an address.
Owner-Of
- Action:
Owner-Of
- Purpose: Retrieves the owner for a specific token.
Token-Metadata
- Action:
Token-Metadata
- Purpose: Provides metadata for a specific token.
Token-Metadata-Batch
- Action:
Token-Metadata-Batch
- Purpose: Returns metadata for multiple tokens in a single request.
Transfer
- Action:
Transfer
- Purpose: Transfers token ownership from one address to another.
Approve
- Action:
Approve
- Purpose: Approves a specified address to transfer a token.
Get-Approved
- Action:
Get-Approved
- Purpose: Retrieves the address approved to transfer a specific token.
Set-Approval-For-All
- Action:
Set-Approval-For-All
- Purpose: Approves or revokes an operator for managing all tokens owned by the sender.
Is-Approved-For-All
- Action:
Is-Approved-For-All
- Purpose: Checks whether an operator is approved to manage all tokens for a given owner.
All-Tokens
- Action:
All-Tokens
- Purpose: Retrieves a subset of token IDs, useful for pagination or UI indexing.
This documentation provides a comprehensive blueprint for the ZoAO zNFT Token Standard. It outlines all the key features, usage instructions, and a detailed overview of the handler operations to serve as a definitive guide for developers implementing or interacting with this standard.