TokenManagerERC721

exitToMainERC721 exitToMainERC721(address contractOnMainnet, uint256 tokenId) external

Move tokens from schain to mainnet.

{contractOnMainnet} tokens are burned on schain and unlocked on mainnet for {to} address.

transferToSchainERC721 transferToSchainERC721(string targetSchainName, address contractOnMainnet, uint256 tokenId) external

Move tokens from schain to schain.

{contractOnMainnet} tokens are burned on origin schain and are minted on {targetSchainName} schain for {to} address.

postMessage postMessage(bytes32 fromChainHash, address sender, bytes data) → address external

Allows MessageProxy to post operational message from mainnet or SKALE chains.

Requirements:

  • MessageProxy must be the sender.

  • fromSchainName must exist in TokenManager addresses.

addERC721TokenByOwner addERC721TokenByOwner(string targetChainName, address erc721OnMainChain, address erc721OnSchain) external

Allows Schain owner to register an ERC721 token clone in the token manager.

initialize initialize(string newChainName, contract IMessageProxyForSchain newMessageProxy, contract ITokenManagerLinker newIMALinker, contract ICommunityLocker newCommunityLocker, address newDepositBox) external

Is called once during contract deployment.

ERC721TokenAdded ERC721TokenAdded(bytes32 chainHash, address erc721OnMainChain, address erc721OnSchain) event

Emitted when schain owner register new ERC721 clone.

ERC721TokenCreated ERC721TokenCreated(bytes32 chainHash, address erc721OnMainChain, address erc721OnSchain) event

Emitted when TokenManagerERC721 automatically deploys new ERC721 clone.

ERC721TokenReceived ERC721TokenReceived(bytes32 chainHash, address erc721OnMainChain, address erc721OnSchain, uint256 tokenId) event

Emitted when someone sends tokens from mainnet to schain.

ERC721TokenReady ERC721TokenReady(bytes32 chainHash, address contractOnMainnet, uint256 tokenId) event

Emitted when token is received by TokenManager and is ready to be cloned or transferred on SKALE chain.