You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
1.3 KiB
29 lines
1.3 KiB
pragma solidity ^0.6.0;
|
|
|
|
import "../../introspection/IERC165.sol";
|
|
|
|
/**
|
|
@title ERC-1155 Multi Token Standard basic interface
|
|
@dev See https://eips.ethereum.org/EIPS/eip-1155
|
|
*/
|
|
abstract contract IERC1155 is IERC165 {
|
|
event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);
|
|
|
|
event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values);
|
|
|
|
event ApprovalForAll(address indexed account, address indexed operator, bool approved);
|
|
|
|
event URI(string value, uint256 indexed id);
|
|
|
|
function balanceOf(address account, uint256 id) public view virtual returns (uint256);
|
|
|
|
function balanceOfBatch(address[] memory accounts, uint256[] memory ids) public view virtual returns (uint256[] memory);
|
|
|
|
function setApprovalForAll(address operator, bool approved) external virtual;
|
|
|
|
function isApprovedForAll(address account, address operator) external view virtual returns (bool);
|
|
|
|
function safeTransferFrom(address from, address to, uint256 id, uint256 value, bytes calldata data) external virtual;
|
|
|
|
function safeBatchTransferFrom(address from, address to, uint256[] calldata ids, uint256[] calldata values, bytes calldata data) external virtual;
|
|
}
|
|
|