## Mint
- Mint is only allowed from BaseChain.
- 3,605 supply, 500k OMNI cost
- Each account can only mint 10 NFTs in any given time.
- Each account can mint a max of 50 NFTs.
**To mint -**
```solidity
OmniNFTA.mint(mintNmber)
// interchain
fee = OmniNFT.estimateMintFees(
uint256 mintNumber,
address payable _refundAddress,
address nftRecipient,
bytes memory _adapterParams
)
OmniNFT.mint{value: fee}(
uint256 mintNumber, // number of nfts that need to be minted
address payable _refundAddress, // user address
address nftRecipient, // user address
bytes memory _adapterParams
)
// Will confirm the value that adapterparams should take.
```
- **mintNumber** is the number of NFTs to mint for the account
**Text to display on mint page**
- that each user can mint a max of 50 NFTs, 10 in each mint.
- That every NFT can be redeemed for the Omnicat paid for it, but that is an irreversible process.
**Data to display**
- Number of NFTs minted (total) -
```solidity
OmniNFTA.nextTokenIdMint()
```
This gives the number of NFTs inted so far.
- Number of NFTs minted by the user -
```solidity
OmniNFTA.UserMintedNumber(address userAddress)
```
- Balance of User =
```solidity
OmniNFTA.balanceOf(userAddress)
OmniNFT.balanceOf(userAddress)
```
## Burn
- Burn is only allowed after the whole collection has been minted out.
- Burning an NFT gives you back your omnicat.
- Burn can only be done one NFT at a time.
**To Burn -**
```solidity
// On Blast
OmniNFTA.burn(tokenId)
// On other chain
fee = OmniNFT.estimateBurnFees(
uint256 tokenId,
address payable _refundAddress,
bytes memory _adapterParams
) // view call
OmniNFT.burn{value: fee}(
uint256 tokenId,
address payable _refundAddress,
bytes memory _adapterParams
)
```
## Transfer
```solidity
// interchain
OmniNFT (or omniNFTA).
uint256 fee = estimateSendFee(
uint16 _dstChainId,
bytes memory _toAddress,
uint _tokenId,
bool _useZro, // false
bytes memory _adapterParams
)
sendFrom{value: fee}(
address _from, // user address
uint16 _dstChainId, // the chain to send the NFT to
bytes memory _toAddress, // The address on the other chain to send it to
uint _tokenId, // tokenId to send
address payable _refundAddress, // user address
address _zroPaymentAddress, // zero address
bytes memory _adapterParams // same as with omnicat
)
```
```solidity
// on the same chain
omniNFT.safeTransferFrom(
address from, // user address
address to, // the address to send the NFT to
uint256 tokenId // the tokenID to send
)
```
These should all be called by the user.
## How to get the PFP.
- first, you need to get the tokenIds owned by the user in that particular chain
**subgraph urls**
(will update for all chains)
```
BLAST=https://api.studio.thegraph.com/query/46638/nft-blast-test/version/latest
ARBITRUM=https://api.studio.thegraph.com/query/46638/nft-arbitrum-test/version/latest
```
**query**
```graphql
# useraddress should be toLowerCase()
{
owners(where: {id: "0xecb9aba786144562535636d2e73c2fae370cd8f8"}){
id
ownedTokens{
id
}
}
}
# ownedTokens is an array of tokenIds which the user owns on that chain
```
- second to get the image for a tokenURI
```
https://api.omnicat.xyz/nft/${tokenId}
```
## ABIs
### **OmniNFTA**
```json
[
{
"type": "constructor",
"inputs": [
{
"name": "_omnicat",
"type": "address",
"internalType": "contract IOmniCat"
},
{
"name": "_nftInfo",
"type": "tuple",
"internalType": "struct NftInfo",
"components": [
{ "name": "baseURI", "type": "string", "internalType": "string" },
{
"name": "MINT_COST",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "MAX_MINTS_PER_ACCOUNT",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "COLLECTION_SIZE",
"type": "uint256",
"internalType": "uint256"
},
{ "name": "name", "type": "string", "internalType": "string" },
{ "name": "symbol", "type": "string", "internalType": "string" }
]
},
{
"name": "_minGasToTransfer",
"type": "uint256",
"internalType": "uint256"
},
{ "name": "_lzEndpoint", "type": "address", "internalType": "address" },
{
"name": "_mintStartTimestamp",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "nonpayable"
},
{ "type": "receive", "stateMutability": "payable" },
{
"type": "function",
"name": "BLAST",
"inputs": [],
"outputs": [
{ "name": "", "type": "address", "internalType": "contract IBlast" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "COLLECTION_SIZE",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "DEFAULT_PAYLOAD_SIZE_LIMIT",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "FUNCTION_TYPE_SEND",
"inputs": [],
"outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "MAX_MINTS_PER_ACCOUNT",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "MINT_COST",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "NFTUserRefund",
"inputs": [
{
"name": "hashedPayload",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [
{ "name": "userAddress", "type": "address", "internalType": "address" },
{ "name": "chainID", "type": "uint16", "internalType": "uint16" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "UserMintedNumber",
"inputs": [
{ "name": "userAddress", "type": "address", "internalType": "address" }
],
"outputs": [
{ "name": "mintedNumber", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "approve",
"inputs": [
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "balanceOf",
"inputs": [
{ "name": "owner", "type": "address", "internalType": "address" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "baseURI",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "burn",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "clearCredits",
"inputs": [
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "dstChainIdToBatchLimit",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "dstChainIdToTransferGas",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateSendBatchFee",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{
"name": "_tokenIds",
"type": "uint256[]",
"internalType": "uint256[]"
},
{ "name": "_useZro", "type": "bool", "internalType": "bool" },
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [
{ "name": "nativeFee", "type": "uint256", "internalType": "uint256" },
{ "name": "zroFee", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateSendFee",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_tokenId", "type": "uint256", "internalType": "uint256" },
{ "name": "_useZro", "type": "bool", "internalType": "bool" },
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [
{ "name": "nativeFee", "type": "uint256", "internalType": "uint256" },
{ "name": "zroFee", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "extraGas",
"inputs": [],
"outputs": [{ "name": "", "type": "uint64", "internalType": "uint64" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "extractNative",
"inputs": [
{ "name": "amount", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "failedMessages",
"inputs": [
{ "name": "", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "bytes", "internalType": "bytes" },
{ "name": "", "type": "uint64", "internalType": "uint64" }
],
"outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "forceResumeReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "getApproved",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "getConfig",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" },
{ "name": "_chainId", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "address", "internalType": "address" },
{ "name": "_configType", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "getTrustedRemoteAddress",
"inputs": [
{ "name": "_remoteChainId", "type": "uint16", "internalType": "uint16" }
],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "interchainTransactionFees",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "isApprovedForAll",
"inputs": [
{ "name": "owner", "type": "address", "internalType": "address" },
{ "name": "operator", "type": "address", "internalType": "address" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "isTrustedRemote",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "lzEndpoint",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract ILayerZeroEndpoint"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "lzReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "minDstGasLookup",
"inputs": [
{ "name": "", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "uint16", "internalType": "uint16" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "minGasToTransferAndStore",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "mint",
"inputs": [
{ "name": "mintNumber", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "mintStartTimestamp",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "name",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "nextTokenIdMint",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "nonblockingLzReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "omniUserRefund",
"inputs": [
{ "name": "userAddress", "type": "address", "internalType": "address" },
{ "name": "chainId", "type": "uint16", "internalType": "uint16" }
],
"outputs": [
{ "name": "refundAmount", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "omnicat",
"inputs": [],
"outputs": [
{ "name": "", "type": "address", "internalType": "contract IOmniCat" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "onOFTReceived",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "bytes", "internalType": "bytes" },
{ "name": "", "type": "uint64", "internalType": "uint64" },
{ "name": "_from", "type": "bytes32", "internalType": "bytes32" },
{ "name": "_amount", "type": "uint256", "internalType": "uint256" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "owner",
"inputs": [],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "ownerOf",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "pauseContract",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "paused",
"inputs": [],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "payloadSizeLimitLookup",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "precrime",
"inputs": [],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "renounceOwnership",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "retryMessage",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "safeTransferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "safeTransferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" },
{ "name": "data", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "sendBatchFrom",
"inputs": [
{ "name": "_from", "type": "address", "internalType": "address" },
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{
"name": "_tokenIds",
"type": "uint256[]",
"internalType": "uint256[]"
},
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "sendFrom",
"inputs": [
{ "name": "_from", "type": "address", "internalType": "address" },
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_tokenId", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "sendNFTRefund",
"inputs": [
{
"name": "hashedPayload",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "sendOmniRefund",
"inputs": [
{ "name": "userAddress", "type": "address", "internalType": "address" },
{ "name": "chainID", "type": "uint16", "internalType": "uint16" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "setApprovalForAll",
"inputs": [
{ "name": "operator", "type": "address", "internalType": "address" },
{ "name": "approved", "type": "bool", "internalType": "bool" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setBaseUri",
"inputs": [
{ "name": "_newBaseURI", "type": "string", "internalType": "string" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setConfig",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" },
{ "name": "_chainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_configType", "type": "uint256", "internalType": "uint256" },
{ "name": "_config", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setDstChainIdToBatchLimit",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{
"name": "_dstChainIdToBatchLimit",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setDstChainIdToTransferGas",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{
"name": "_dstChainIdToTransferGas",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setMinDstGas",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_packetType", "type": "uint16", "internalType": "uint16" },
{ "name": "_minGas", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setMinGasToTransferAndStore",
"inputs": [
{
"name": "_minGasToTransferAndStore",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setPayloadSizeLimit",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_size", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setPrecrime",
"inputs": [
{ "name": "_precrime", "type": "address", "internalType": "address" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setReceiveVersion",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setSendVersion",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setTrustedRemote",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"internalType": "uint16"
},
{ "name": "_path", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setTrustedRemoteAddress",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"internalType": "uint16"
},
{ "name": "_remoteAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "storedCredits",
"inputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }],
"outputs": [
{ "name": "srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "toAddress", "type": "address", "internalType": "address" },
{ "name": "index", "type": "uint256", "internalType": "uint256" },
{ "name": "creditsRemain", "type": "bool", "internalType": "bool" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "supportsInterface",
"inputs": [
{ "name": "interfaceId", "type": "bytes4", "internalType": "bytes4" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "symbol",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "tokenURI",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "transferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "transferOwnership",
"inputs": [
{ "name": "newOwner", "type": "address", "internalType": "address" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "trustedRemoteLookup",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "unpauseContract",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "event",
"name": "Approval",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ApprovalForAll",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "operator",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"type": "event",
"name": "CollectionMinted",
"inputs": [],
"anonymous": false
},
{
"type": "event",
"name": "CreditCleared",
"inputs": [
{
"name": "_hashedPayload",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "CreditStored",
"inputs": [
{
"name": "_hashedPayload",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
},
{
"name": "_payload",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "MessageFailed",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_nonce",
"type": "uint64",
"indexed": false,
"internalType": "uint64"
},
{
"name": "_payload",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_reason",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "OwnershipTransferred",
"inputs": [
{
"name": "previousOwner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "newOwner",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Paused",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ReceiveFromChain",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": true,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": true,
"internalType": "bytes"
},
{
"name": "_toAddress",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "_tokenIds",
"type": "uint256[]",
"indexed": false,
"internalType": "uint256[]"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RetryMessageSuccess",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_nonce",
"type": "uint64",
"indexed": false,
"internalType": "uint64"
},
{
"name": "_payloadHash",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SendToChain",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": true,
"internalType": "uint16"
},
{
"name": "_from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "_toAddress",
"type": "bytes",
"indexed": true,
"internalType": "bytes"
},
{
"name": "_tokenIds",
"type": "uint256[]",
"indexed": false,
"internalType": "uint256[]"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetDstChainIdToBatchLimit",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_dstChainIdToBatchLimit",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetDstChainIdToTransferGas",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_dstChainIdToTransferGas",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetMinDstGas",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_type",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_minDstGas",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetMinGasToTransferAndStore",
"inputs": [
{
"name": "_minGasToTransferAndStore",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetPrecrime",
"inputs": [
{
"name": "precrime",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetTrustedRemote",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_path",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetTrustedRemoteAddress",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_remoteAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetUserMintRefund",
"inputs": [
{
"name": "hashedPayload",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
},
{
"name": "userAddress",
"type": "address",
"indexed": false,
"internalType": "address"
},
{
"name": "chainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "tokens",
"type": "uint256[]",
"indexed": false,
"internalType": "uint256[]"
},
{
"name": "done",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetUserOmniRefund",
"inputs": [
{
"name": "userAddress",
"type": "address",
"indexed": false,
"internalType": "address"
},
{
"name": "chainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "refundAmount",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Transfer",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Unpaused",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
}
]
```
### **OmniNFT**
```json
[
{
"type": "constructor",
"inputs": [
{
"name": "_baseChainInfo",
"type": "tuple",
"internalType": "struct BaseChainInfo",
"components": [
{
"name": "BASE_CHAIN_ID",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "BASE_CHAIN_ADDRESS",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "_omnicat",
"type": "address",
"internalType": "contract IOmniCat"
},
{
"name": "_nftInfo",
"type": "tuple",
"internalType": "struct NftInfo",
"components": [
{ "name": "baseURI", "type": "string", "internalType": "string" },
{
"name": "MINT_COST",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "MAX_MINTS_PER_ACCOUNT",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "COLLECTION_SIZE",
"type": "uint256",
"internalType": "uint256"
},
{ "name": "name", "type": "string", "internalType": "string" },
{ "name": "symbol", "type": "string", "internalType": "string" }
]
},
{
"name": "_minGasToTransfer",
"type": "uint256",
"internalType": "uint256"
},
{ "name": "_lzEndpoint", "type": "address", "internalType": "address" },
{
"name": "_omniBridgeFee",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "nonpayable"
},
{ "type": "receive", "stateMutability": "payable" },
{
"type": "function",
"name": "BASE_CHAIN_INFO",
"inputs": [],
"outputs": [
{ "name": "BASE_CHAIN_ID", "type": "uint16", "internalType": "uint16" },
{
"name": "BASE_CHAIN_ADDRESS",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "COLLECTION_SIZE",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "DEFAULT_PAYLOAD_SIZE_LIMIT",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "FUNCTION_TYPE_SEND",
"inputs": [],
"outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "MAX_MINTS_PER_ACCOUNT",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "MAX_NFTS_IN_MINT",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "MINT_COST",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "approve",
"inputs": [
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "balanceOf",
"inputs": [
{ "name": "owner", "type": "address", "internalType": "address" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "baseURI",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "burn",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "clearCredits",
"inputs": [
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "dstChainIdToBatchLimit",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "dstChainIdToTransferGas",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateBurnFees",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateMintFees",
"inputs": [
{ "name": "mintNumber", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateSendBatchFee",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{
"name": "_tokenIds",
"type": "uint256[]",
"internalType": "uint256[]"
},
{ "name": "_useZro", "type": "bool", "internalType": "bool" },
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [
{ "name": "nativeFee", "type": "uint256", "internalType": "uint256" },
{ "name": "zroFee", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "estimateSendFee",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_tokenId", "type": "uint256", "internalType": "uint256" },
{ "name": "_useZro", "type": "bool", "internalType": "bool" },
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [
{ "name": "nativeFee", "type": "uint256", "internalType": "uint256" },
{ "name": "zroFee", "type": "uint256", "internalType": "uint256" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "extraGas",
"inputs": [],
"outputs": [{ "name": "", "type": "uint64", "internalType": "uint64" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "extractNative",
"inputs": [
{ "name": "amount", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "failedMessages",
"inputs": [
{ "name": "", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "bytes", "internalType": "bytes" },
{ "name": "", "type": "uint64", "internalType": "uint64" }
],
"outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "forceResumeReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "getApproved",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "getConfig",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" },
{ "name": "_chainId", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "address", "internalType": "address" },
{ "name": "_configType", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "getTrustedRemoteAddress",
"inputs": [
{ "name": "_remoteChainId", "type": "uint16", "internalType": "uint16" }
],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "interchainTransactionFees",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "isApprovedForAll",
"inputs": [
{ "name": "owner", "type": "address", "internalType": "address" },
{ "name": "operator", "type": "address", "internalType": "address" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "isTrustedRemote",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "lzEndpoint",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract ILayerZeroEndpoint"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "lzReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "minDstGasLookup",
"inputs": [
{ "name": "", "type": "uint16", "internalType": "uint16" },
{ "name": "", "type": "uint16", "internalType": "uint16" }
],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "minGasToTransferAndStore",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "mint",
"inputs": [
{ "name": "mintNumber", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "name",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "nonblockingLzReceive",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "omniBridgeFee",
"inputs": [],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "omnicat",
"inputs": [],
"outputs": [
{ "name": "", "type": "address", "internalType": "contract IOmniCat" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "owner",
"inputs": [],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "ownerOf",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "pauseContract",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "paused",
"inputs": [],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "payloadSizeLimitLookup",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "precrime",
"inputs": [],
"outputs": [{ "name": "", "type": "address", "internalType": "address" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "renounceOwnership",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "retryMessage",
"inputs": [
{ "name": "_srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_srcAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_nonce", "type": "uint64", "internalType": "uint64" },
{ "name": "_payload", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "safeTransferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "safeTransferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" },
{ "name": "data", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "sendBatchFrom",
"inputs": [
{ "name": "_from", "type": "address", "internalType": "address" },
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{
"name": "_tokenIds",
"type": "uint256[]",
"internalType": "uint256[]"
},
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "sendFrom",
"inputs": [
{ "name": "_from", "type": "address", "internalType": "address" },
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_toAddress", "type": "bytes", "internalType": "bytes" },
{ "name": "_tokenId", "type": "uint256", "internalType": "uint256" },
{
"name": "_refundAddress",
"type": "address",
"internalType": "address payable"
},
{
"name": "_zroPaymentAddress",
"type": "address",
"internalType": "address"
},
{ "name": "_adapterParams", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "payable"
},
{
"type": "function",
"name": "setApprovalForAll",
"inputs": [
{ "name": "operator", "type": "address", "internalType": "address" },
{ "name": "approved", "type": "bool", "internalType": "bool" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setBaseUri",
"inputs": [
{ "name": "_newBaseURI", "type": "string", "internalType": "string" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setConfig",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" },
{ "name": "_chainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_configType", "type": "uint256", "internalType": "uint256" },
{ "name": "_config", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setDstChainIdToBatchLimit",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{
"name": "_dstChainIdToBatchLimit",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setDstChainIdToTransferGas",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{
"name": "_dstChainIdToTransferGas",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setMinDstGas",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_packetType", "type": "uint16", "internalType": "uint16" },
{ "name": "_minGas", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setMinGasToTransferAndStore",
"inputs": [
{
"name": "_minGasToTransferAndStore",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setOmniBridgeFee",
"inputs": [
{
"name": "_omniBridgeFee",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setPayloadSizeLimit",
"inputs": [
{ "name": "_dstChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "_size", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setPrecrime",
"inputs": [
{ "name": "_precrime", "type": "address", "internalType": "address" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setReceiveVersion",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setSendVersion",
"inputs": [
{ "name": "_version", "type": "uint16", "internalType": "uint16" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setTrustedRemote",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"internalType": "uint16"
},
{ "name": "_path", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "setTrustedRemoteAddress",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"internalType": "uint16"
},
{ "name": "_remoteAddress", "type": "bytes", "internalType": "bytes" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "storedCredits",
"inputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }],
"outputs": [
{ "name": "srcChainId", "type": "uint16", "internalType": "uint16" },
{ "name": "toAddress", "type": "address", "internalType": "address" },
{ "name": "index", "type": "uint256", "internalType": "uint256" },
{ "name": "creditsRemain", "type": "bool", "internalType": "bool" }
],
"stateMutability": "view"
},
{
"type": "function",
"name": "supportsInterface",
"inputs": [
{ "name": "interfaceId", "type": "bytes4", "internalType": "bytes4" }
],
"outputs": [{ "name": "", "type": "bool", "internalType": "bool" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "symbol",
"inputs": [],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "tokenURI",
"inputs": [
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [{ "name": "", "type": "string", "internalType": "string" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "transferFrom",
"inputs": [
{ "name": "from", "type": "address", "internalType": "address" },
{ "name": "to", "type": "address", "internalType": "address" },
{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "transferOwnership",
"inputs": [
{ "name": "newOwner", "type": "address", "internalType": "address" }
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "trustedRemoteLookup",
"inputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }],
"outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }],
"stateMutability": "view"
},
{
"type": "function",
"name": "unpauseContract",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "event",
"name": "Approval",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ApprovalForAll",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "operator",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"type": "event",
"name": "CreditCleared",
"inputs": [
{
"name": "_hashedPayload",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "CreditStored",
"inputs": [
{
"name": "_hashedPayload",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
},
{
"name": "_payload",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "MessageFailed",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_nonce",
"type": "uint64",
"indexed": false,
"internalType": "uint64"
},
{
"name": "_payload",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_reason",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "OwnershipTransferred",
"inputs": [
{
"name": "previousOwner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "newOwner",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Paused",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ReceiveFromChain",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": true,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": true,
"internalType": "bytes"
},
{
"name": "_toAddress",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "_tokenIds",
"type": "uint256[]",
"indexed": false,
"internalType": "uint256[]"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RetryMessageSuccess",
"inputs": [
{
"name": "_srcChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_srcAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
},
{
"name": "_nonce",
"type": "uint64",
"indexed": false,
"internalType": "uint64"
},
{
"name": "_payloadHash",
"type": "bytes32",
"indexed": false,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SendToChain",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": true,
"internalType": "uint16"
},
{
"name": "_from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "_toAddress",
"type": "bytes",
"indexed": true,
"internalType": "bytes"
},
{
"name": "_tokenIds",
"type": "uint256[]",
"indexed": false,
"internalType": "uint256[]"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetDstChainIdToBatchLimit",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_dstChainIdToBatchLimit",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetDstChainIdToTransferGas",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_dstChainIdToTransferGas",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetMinDstGas",
"inputs": [
{
"name": "_dstChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_type",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_minDstGas",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetMinGasToTransferAndStore",
"inputs": [
{
"name": "_minGasToTransferAndStore",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetPrecrime",
"inputs": [
{
"name": "precrime",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetTrustedRemote",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_path",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "SetTrustedRemoteAddress",
"inputs": [
{
"name": "_remoteChainId",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
},
{
"name": "_remoteAddress",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Transfer",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Unpaused",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": false,
"internalType": "address"
}
],
"anonymous": false
}
]
```
### Ignore