@lukso/lsp8-contracts
Version:
Package for the LSP8 Identifiable Digital Asset standard
1,763 lines (1,762 loc) • 182 kB
JavaScript
'use strict';
const ilsp8IdentifiableDigitalAssetAbi = [
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorAuthorizationChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "notified", internalType: "bool", type: "bool", indexed: false },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorRevoked"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "TokenIdDataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: false
},
{ name: "from", internalType: "address", type: "address", indexed: true },
{ name: "to", internalType: "address", type: "address", indexed: true },
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "force", internalType: "bool", type: "bool", indexed: false },
{ name: "data", internalType: "bytes", type: "bytes", indexed: false }
],
name: "Transfer"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "authorizeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "balanceOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatchForTokenIds",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" }
],
name: "getDataForTokenId",
outputs: [{ name: "dataValues", internalType: "bytes", type: "bytes" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "getOperatorsOf",
outputs: [{ name: "", internalType: "address[]", type: "address[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "isOperatorFor",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "notify", internalType: "bool", type: "bool" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "revokeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatchForTokenIds",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setDataForTokenId",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "tokenIdsOf",
outputs: [{ name: "", internalType: "bytes32[]", type: "bytes32[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "tokenOwnerOf",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "totalSupply",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address", type: "address" },
{ name: "to", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "force", internalType: "bool", type: "bool" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "transfer",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address[]", type: "address[]" },
{ name: "to", internalType: "address[]", type: "address[]" },
{ name: "tokenId", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "force", internalType: "bool[]", type: "bool[]" },
{ name: "data", internalType: "bytes[]", type: "bytes[]" }
],
name: "transferBatch",
outputs: [],
stateMutability: "nonpayable"
}
];
const lsp8BurnableAbi = [
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{ type: "error", inputs: [], name: "ERC725Y_MsgValueDisallowed" },
{
type: "error",
inputs: [{ name: "storedData", internalType: "bytes", type: "bytes" }],
name: "InvalidExtensionAddress"
},
{
type: "error",
inputs: [{ name: "data", internalType: "bytes", type: "bytes" }],
name: "InvalidFunctionSelector"
},
{ type: "error", inputs: [], name: "LSP4TokenNameNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenSymbolNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenTypeNotEditable" },
{
type: "error",
inputs: [{ name: "callIndex", internalType: "uint256", type: "uint256" }],
name: "LSP8BatchCallFailed"
},
{ type: "error", inputs: [], name: "LSP8CannotSendToAddressZero" },
{ type: "error", inputs: [], name: "LSP8CannotUseAddressZeroAsOperator" },
{ type: "error", inputs: [], name: "LSP8InvalidTransferBatch" },
{
type: "error",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "LSP8NonExistentTokenId"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8NonExistingOperator"
},
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOperator"
},
{
type: "error",
inputs: [
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOwner"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverIsEOA"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8OperatorAlreadyAuthorized"
},
{
type: "error",
inputs: [
{ name: "caller", internalType: "address", type: "address" },
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8RevokeOperatorNotAuthorized"
},
{ type: "error", inputs: [], name: "LSP8TokenContractCannotHoldValue" },
{ type: "error", inputs: [], name: "LSP8TokenIdFormatNotEditable" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataEmptyArray" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataLengthMismatch" },
{ type: "error", inputs: [], name: "LSP8TokenOwnerCannotBeOperator" },
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "oldOwner", internalType: "address", type: "address" },
{ name: "newOwner", internalType: "address", type: "address" }
],
name: "LSP8TokenOwnerChanged"
},
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "NoExtensionFoundForFunctionSelector"
},
{ type: "error", inputs: [], name: "OwnableCannotSetZeroAddressAsOwner" },
{
type: "event",
anonymous: false,
inputs: [
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "DataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorAuthorizationChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "notified", internalType: "bool", type: "bool", indexed: false },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorRevoked"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "previousOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "newOwner",
internalType: "address",
type: "address",
indexed: true
}
],
name: "OwnershipTransferred"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "TokenIdDataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: false
},
{ name: "from", internalType: "address", type: "address", indexed: true },
{ name: "to", internalType: "address", type: "address", indexed: true },
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "force", internalType: "bool", type: "bool", indexed: false },
{ name: "data", internalType: "bytes", type: "bytes", indexed: false }
],
name: "Transfer"
},
{ type: "fallback", stateMutability: "payable" },
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "authorizeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "balanceOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "burn",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "dataKey", internalType: "bytes32", type: "bytes32" }],
name: "getData",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatch",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatchForTokenIds",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" }
],
name: "getDataForTokenId",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "getOperatorsOf",
outputs: [{ name: "", internalType: "address[]", type: "address[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "isOperatorFor",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "owner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "notify", internalType: "bool", type: "bool" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "revokeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setData",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatch",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatchForTokenIds",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setDataForTokenId",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "tokenIdsOf",
outputs: [{ name: "", internalType: "bytes32[]", type: "bytes32[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "tokenOwnerOf",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "totalSupply",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address", type: "address" },
{ name: "to", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "force", internalType: "bool", type: "bool" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "transfer",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address[]", type: "address[]" },
{ name: "to", internalType: "address[]", type: "address[]" },
{ name: "tokenId", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "force", internalType: "bool[]", type: "bool[]" },
{ name: "data", internalType: "bytes[]", type: "bytes[]" }
],
name: "transferBatch",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "newOwner", internalType: "address", type: "address" }],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{ type: "receive", stateMutability: "payable" }
];
const lsp8BurnableInitAbstractAbi = [
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{ type: "error", inputs: [], name: "ERC725Y_MsgValueDisallowed" },
{
type: "error",
inputs: [{ name: "storedData", internalType: "bytes", type: "bytes" }],
name: "InvalidExtensionAddress"
},
{
type: "error",
inputs: [{ name: "data", internalType: "bytes", type: "bytes" }],
name: "InvalidFunctionSelector"
},
{ type: "error", inputs: [], name: "LSP4TokenNameNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenSymbolNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenTypeNotEditable" },
{
type: "error",
inputs: [{ name: "callIndex", internalType: "uint256", type: "uint256" }],
name: "LSP8BatchCallFailed"
},
{ type: "error", inputs: [], name: "LSP8CannotSendToAddressZero" },
{ type: "error", inputs: [], name: "LSP8CannotUseAddressZeroAsOperator" },
{ type: "error", inputs: [], name: "LSP8InvalidTransferBatch" },
{
type: "error",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "LSP8NonExistentTokenId"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8NonExistingOperator"
},
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOperator"
},
{
type: "error",
inputs: [
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOwner"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverIsEOA"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8OperatorAlreadyAuthorized"
},
{
type: "error",
inputs: [
{ name: "caller", internalType: "address", type: "address" },
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8RevokeOperatorNotAuthorized"
},
{ type: "error", inputs: [], name: "LSP8TokenContractCannotHoldValue" },
{ type: "error", inputs: [], name: "LSP8TokenIdFormatNotEditable" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataEmptyArray" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataLengthMismatch" },
{ type: "error", inputs: [], name: "LSP8TokenOwnerCannotBeOperator" },
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "oldOwner", internalType: "address", type: "address" },
{ name: "newOwner", internalType: "address", type: "address" }
],
name: "LSP8TokenOwnerChanged"
},
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "NoExtensionFoundForFunctionSelector"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "DataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{ name: "version", internalType: "uint8", type: "uint8", indexed: false }
],
name: "Initialized"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorAuthorizationChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "notified", internalType: "bool", type: "bool", indexed: false },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorRevoked"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "previousOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "newOwner",
internalType: "address",
type: "address",
indexed: true
}
],
name: "OwnershipTransferred"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "TokenIdDataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: false
},
{ name: "from", internalType: "address", type: "address", indexed: true },
{ name: "to", internalType: "address", type: "address", indexed: true },
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "force", internalType: "bool", type: "bool", indexed: false },
{ name: "data", internalType: "bytes", type: "bytes", indexed: false }
],
name: "Transfer"
},
{ type: "fallback", stateMutability: "payable" },
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "authorizeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "balanceOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "burn",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "dataKey", internalType: "bytes32", type: "bytes32" }],
name: "getData",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatch",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatchForTokenIds",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" }
],
name: "getDataForTokenId",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "getOperatorsOf",
outputs: [{ name: "", internalType: "address[]", type: "address[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "isOperatorFor",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "owner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "notify", internalType: "bool", type: "bool" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "revokeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setData",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatch",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatchForTokenIds",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setDataForTokenId",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "tokenIdsOf",
outputs: [{ name: "", internalType: "bytes32[]", type: "bytes32[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "tokenOwnerOf",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "totalSupply",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address", type: "address" },
{ name: "to", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "force", internalType: "bool", type: "bool" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "transfer",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address[]", type: "address[]" },
{ name: "to", internalType: "address[]", type: "address[]" },
{ name: "tokenId", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "force", internalType: "bool[]", type: "bool[]" },
{ name: "data", internalType: "bytes[]", type: "bytes[]" }
],
name: "transferBatch",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "newOwner", internalType: "address", type: "address" }],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{ type: "receive", stateMutability: "payable" }
];
const lsp8CappedSupplyAbi = [
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{ type: "error", inputs: [], name: "ERC725Y_MsgValueDisallowed" },
{
type: "error",
inputs: [{ name: "storedData", internalType: "bytes", type: "bytes" }],
name: "InvalidExtensionAddress"
},
{
type: "error",
inputs: [{ name: "data", internalType: "bytes", type: "bytes" }],
name: "InvalidFunctionSelector"
},
{ type: "error", inputs: [], name: "LSP4TokenNameNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenSymbolNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenTypeNotEditable" },
{
type: "error",
inputs: [{ name: "callIndex", internalType: "uint256", type: "uint256" }],
name: "LSP8BatchCallFailed"
},
{ type: "error", inputs: [], name: "LSP8CannotSendToAddressZero" },
{ type: "error", inputs: [], name: "LSP8CannotUseAddressZeroAsOperator" },
{ type: "error", inputs: [], name: "LSP8CappedSupplyCannotMintOverCap" },
{ type: "error", inputs: [], name: "LSP8CappedSupplyRequired" },
{ type: "error", inputs: [], name: "LSP8InvalidTransferBatch" },
{
type: "error",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "LSP8NonExistentTokenId"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8NonExistingOperator"
},
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOperator"
},
{
type: "error",
inputs: [
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "LSP8NotTokenOwner"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface"
},
{
type: "error",
inputs: [
{ name: "tokenReceiver", internalType: "address", type: "address" }
],
name: "LSP8NotifyTokenReceiverIsEOA"
},
{
type: "error",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8OperatorAlreadyAuthorized"
},
{
type: "error",
inputs: [
{ name: "caller", internalType: "address", type: "address" },
{ name: "tokenOwner", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "LSP8RevokeOperatorNotAuthorized"
},
{ type: "error", inputs: [], name: "LSP8TokenContractCannotHoldValue" },
{ type: "error", inputs: [], name: "LSP8TokenIdFormatNotEditable" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataEmptyArray" },
{ type: "error", inputs: [], name: "LSP8TokenIdsDataLengthMismatch" },
{ type: "error", inputs: [], name: "LSP8TokenOwnerCannotBeOperator" },
{
type: "error",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "oldOwner", internalType: "address", type: "address" },
{ name: "newOwner", internalType: "address", type: "address" }
],
name: "LSP8TokenOwnerChanged"
},
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "NoExtensionFoundForFunctionSelector"
},
{ type: "error", inputs: [], name: "OwnableCannotSetZeroAddressAsOwner" },
{
type: "event",
anonymous: false,
inputs: [
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "DataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorAuthorizationChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "notified", internalType: "bool", type: "bool", indexed: false },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "OperatorRevoked"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "previousOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "newOwner",
internalType: "address",
type: "address",
indexed: true
}
],
name: "OwnershipTransferred"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataKey",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "dataValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "TokenIdDataChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operator",
internalType: "address",
type: "address",
indexed: false
},
{ name: "from", internalType: "address", type: "address", indexed: true },
{ name: "to", internalType: "address", type: "address", indexed: true },
{
name: "tokenId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{ name: "force", internalType: "bool", type: "bool", indexed: false },
{ name: "data", internalType: "bytes", type: "bytes", indexed: false }
],
name: "Transfer"
},
{ type: "fallback", stateMutability: "payable" },
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "authorizeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "balanceOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "dataKey", internalType: "bytes32", type: "bytes32" }],
name: "getData",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatch",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" }
],
name: "getDataBatchForTokenIds",
outputs: [{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" }
],
name: "getDataForTokenId",
outputs: [{ name: "dataValue", internalType: "bytes", type: "bytes" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "getOperatorsOf",
outputs: [{ name: "", internalType: "address[]", type: "address[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" }
],
name: "isOperatorFor",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "owner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "operator", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "notify", internalType: "bool", type: "bool" },
{
name: "operatorNotificationData",
internalType: "bytes",
type: "bytes"
}
],
name: "revokeOperator",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setData",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatch",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "tokenIds", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataKeys", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "dataValues", internalType: "bytes[]", type: "bytes[]" }
],
name: "setDataBatchForTokenIds",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "dataKey", internalType: "bytes32", type: "bytes32" },
{ name: "dataValue", internalType: "bytes", type: "bytes" }
],
name: "setDataForTokenId",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenOwner", internalType: "address", type: "address" }],
name: "tokenIdsOf",
outputs: [{ name: "", internalType: "bytes32[]", type: "bytes32[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "tokenOwnerOf",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "tokenSupplyCap",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "totalSupply",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address", type: "address" },
{ name: "to", internalType: "address", type: "address" },
{ name: "tokenId", internalType: "bytes32", type: "bytes32" },
{ name: "force", internalType: "bool", type: "bool" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "transfer",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address[]", type: "address[]" },
{ name: "to", internalType: "address[]", type: "address[]" },
{ name: "tokenId", internalType: "bytes32[]", type: "bytes32[]" },
{ name: "force", internalType: "bool[]", type: "bool[]" },
{ name: "data", internalType: "bytes[]", type: "bytes[]" }
],
name: "transferBatch",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "newOwner", internalType: "address", type: "address" }],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{ type: "receive", stateMutability: "payable" }
];
const lsp8CappedSupplyInitAbstractAbi = [
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{ type: "error", inputs: [], name: "ERC725Y_MsgValueDisallowed" },
{
type: "error",
inputs: [{ name: "storedData", internalType: "bytes", type: "bytes" }],
name: "InvalidExtensionAddress"
},
{
type: "error",
inputs: [{ name: "data", internalType: "bytes", type: "bytes" }],
name: "InvalidFunctionSelector"
},
{ type: "error", inputs: [], name: "LSP4TokenNameNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenSymbolNotEditable" },
{ type: "error", inputs: [], name: "LSP4TokenTypeNotEditable" },
{
type: "error",
inputs: [{ name: "callIndex", internalType: "uint256", type: "uint256" }],
name: "LSP8BatchCallFailed"
},
{ type: "error", inputs: [], name: "LSP8CannotSendToAddressZero" },
{ type: "error", inputs: [], name: "LSP8CannotUseAddressZeroAsOperator" },
{ type: "error", inputs: [], name: "LSP8CappedSupplyCannotMintOverCap" },
{ type: "error", inputs: [], name: "LSP8CappedSupplyRequired" },
{ type: "error", inputs: [], name: "LSP8InvalidTransferBatch" },
{
type: "error",
inputs: [{ name: "tokenId", internalType: "bytes32", type: "bytes32" }],
name: "LSP8NonExistentTokenId"
},
{
type: "error",
inputs: [
{ nam