IDLT.sol
ERC-6960 Token Standard Interface (Solidity)
// SPDX-License-Identifier: MIT
pragma solidity 0.8.17;
interface IDLT {
event Transfer(
address indexed sender,
address indexed recipient,
uint256 indexed mainId,
uint256 subId,
uint256 amount
);
event TransferBatch(
address indexed spender,
address indexed sender,
address indexed recipient,
uint256[] mainIds,
uint256[] subIds,
uint256[] amounts
);
event Approval(
address indexed owner,
address indexed spender,
uint256 mainId,
uint256 subId,
uint256 amount
);
event ApprovalForAll(
address indexed spender,
address indexed operator,
bool approved
);
event URI(string oldValue, string newValue, uint256 indexed mainId);
function setApprovalForAll(address operator, bool approved) external;
function safeTransferFrom(
address sender,
address recipient,
uint256 mainId,
uint256 subId,
uint256 amount,
bytes calldata data
) external returns (bool);
function approve(
address spender,
uint256 mainId,
uint256 subId,
uint256 amount
) external returns (bool);
function subBalanceOf(
address account,
uint256 mainId,
uint256 subId
) external view returns (uint256);
function balanceOfBatch(
address[] calldata accounts,
uint256[] calldata mainIds,
uint256[] calldata subIds
) external view returns (uint256[] memory);
function allowance(
address owner,
address spender,
uint256 mainId,
uint256 subId
) external view returns (uint256);
function isApprovedForAll(
address owner,
address operator
) external view returns (bool);
}
Last updated