mirror of
https://github.com/luxfi/eoa-contracts.git
synced 2026-10-30 16:58:32 +00:00
25 lines
1.1 KiB
Solidity
25 lines
1.1 KiB
Solidity
// SPDX-License-Identifier: LGPL-3.0-only
|
|
pragma solidity 0.8.17;
|
|
|
|
/// @dev Note: the ERC-165 identifier for this interface is 0x150b7a02.
|
|
interface IERC721TokenReceiver {
|
|
/// @notice Handle the receipt of an NFT
|
|
/// @dev The ERC721 smart contract calls this function on the recipient
|
|
/// after a `transfer`. This function MAY throw to revert and reject the
|
|
/// transfer. Return of other than the magic value MUST result in the
|
|
/// transaction being reverted.
|
|
/// Note: the contract address is always the message sender.
|
|
/// @param _operator The address which called `safeTransferFrom` function
|
|
/// @param _from The address which previously owned the token
|
|
/// @param _tokenId The NFT identifier which is being transferred
|
|
/// @param _data Additional data with no specified format
|
|
/// @return `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))`
|
|
/// unless throwing
|
|
function onERC721Received(
|
|
address _operator,
|
|
address _from,
|
|
uint256 _tokenId,
|
|
bytes calldata _data
|
|
) external returns (bytes4);
|
|
}
|