xdapp-book/src/technical/evm/nftLayer.md

27 lines
906 B
Markdown
Raw Normal View History

2022-09-13 14:53:33 -07:00
# NFT Layer
2022-09-14 09:16:13 -07:00
This is the interface for applications to interact with Wormhole's NFT Bridge Contract to publish messages or verify and parse a received message.
```
// contracts/NFTBridge.sol
// SPDX-License-Identifier: Apache 2
pragma solidity ^0.8.0;
import "./NFTBridgeGetters.sol";
interface INFTBridge is NFTGetters {
function transferNFT(address token, uint256 tokenID, uint16 recipientChain, bytes32 recipient, uint32 nonce) external payable returns (uint64 sequence);
function completeTransfer(bytes memory encodeVm) external ;
function encodeTransfer(NFTBridgeStructs.Transfer memory transfer) external pure returns (bytes memory encoded);
function parseTransfer(bytes memory encoded) external pure returns (NFTBridgeStructs.Transfer memory transfer);
function onERC721Received(address operator, address, uint256, bytes calldata) external view returns (bytes4);
}
```