ISynergy

Git Source

Author: transientlabs.xyz

Interface for Synergy

Interface id = 0x8193ebea

Functions

proposeNewTokenUri

Function to propose a token uri update for a specific token

Requires owner or admin

If the owner of the contract is the owner of the token, the change takes hold right away

MUST emit a MetadataUpdate event if the owner of the token is the owner of the contract

MUST emit a SynergyStatusChange event if the owner of the token is not the owner of the contract

function proposeNewTokenUri(uint256 tokenId, string calldata newUri) external;

Parameters

NameTypeDescription
tokenIduint256The token to propose new metadata for
newUristringThe new token uri proposed

acceptTokenUriUpdate

Function to accept a proposed token uri update for a specific token

Requires owner of the token or delegate to call the function

MUST emit a SynergyStatusChange event

function acceptTokenUriUpdate(uint256 tokenId) external;

Parameters

NameTypeDescription
tokenIduint256The token to accept the metadata update for

rejectTokenUriUpdate

Function to reject a proposed token uri update for a specific token

Requires owner of the token or delegate to call the function

MUST emit a SynergyStatusChange event

function rejectTokenUriUpdate(uint256 tokenId) external;

Parameters

NameTypeDescription
tokenIduint256The token to reject the metadata update for

Events

SynergyStatusChange

Event for changing the status of a proposed metadata update.

event SynergyStatusChange(address indexed from, uint256 indexed tokenId, SynergyAction indexed action, string uri);

Enums

SynergyAction

Enum defining Synergy actions

enum SynergyAction {
    Created,
    Accepted,
    Rejected
}