MinaNFTNameServiceContract
Hierarchy
- TokenContract
- MinaNFTNameServiceContract
Index
Constructors
Properties
Methods
Constructors
externalconstructor
Parameters
externaladdress: PublicKey
externaloptionaltokenId: Field
Returns MinaNFTNameServiceContract
Properties
events
Type declaration
approveEscrow: typeof EscrowApproval
escrowTransfer: typeof EscrowTransfer
mint: typeof NFTMintData
update: typeof Update
upgrade: typeof PublicKey
oracle
The oracle of the contract - the public key used to sign name allowances
Methods
approveBase
Parameters
forest: AccountUpdateForest
Returns Promise<void>
approveEscrow
Approve setting of the new escrow
Parameters
address: PublicKey
address of the NFT
proof: EscrowTransferProof
EscrowTransferProof - escrow proof
Returns Promise<void>
deploy
Parameters
args: DeployArgs
Returns Promise<void>
escrowTransfer
Transfer the NFT to new owner
Parameters
address: PublicKey
address of the NFT
data: EscrowTransfer
EscrowTransfer - data for the transfer
signature1: Signature
signature of the first escrow
signature2: Signature
signature of the second escrow
signature3: Signature
signature of the third escrow
escrow1: PublicKey
public key of the first escrow
escrow2: PublicKey
public key of the second escrow
escrow3: PublicKey
public key of the third escrow
Returns Promise<void>
init
Returns void
isNFT
Parameters
address: PublicKey
Returns void
mint
setOracle
Parameters
newOracle: PublicKey
signature: Signature
Returns Promise<void>
update
Updates metadata of the NFT
Parameters
address: PublicKey
address of the NFT
update: Update
Update - data for the update
signature: Signature
signature of the owner
owner: PublicKey
owner's public key
proof: MinaNFTMetadataUpdateProof
MinaNFTMetadataUpdateProof - proof of the update of the metadata to be correctly inserted into the Merkle Map
Returns Promise<void>
upgrade
Upgrade the NFT to the new version
Parameters
address: PublicKey
the address of the NFT
vk: VerificationKey
the verification key of the new MinaNFTContract
signature: Signature
the signature of the name service allowing the upgrading of the NFT
Returns Promise<void>
MinaNFTNameServiceContract is a smart contract that implements the Mina NFT Name Service standard.