@lukso/lsp-smart-contracts
Version:
The reference smart contract implementation for the LUKSO LSP standards
1,896 lines (1,895 loc) • 384 kB
JavaScript
'use strict';
const lsp0Erc725AccountAbi = [
{
type: "constructor",
inputs: [
{ name: "initialOwner", internalType: "address", type: "address" }
],
stateMutability: "payable"
},
{ type: "error", inputs: [], name: "ERC725X_ContractDeploymentFailed" },
{
type: "error",
inputs: [],
name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress"
},
{ type: "error", inputs: [], name: "ERC725X_ExecuteParametersEmptyArray" },
{
type: "error",
inputs: [],
name: "ERC725X_ExecuteParametersLengthMismatch"
},
{
type: "error",
inputs: [
{ name: "balance", internalType: "uint256", type: "uint256" },
{ name: "value", internalType: "uint256", type: "uint256" }
],
name: "ERC725X_InsufficientBalance"
},
{
type: "error",
inputs: [],
name: "ERC725X_MsgValueDisallowedInDelegateCall"
},
{ type: "error", inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall" },
{ type: "error", inputs: [], name: "ERC725X_NoContractBytecodeProvided" },
{
type: "error",
inputs: [
{
name: "operationTypeProvided",
internalType: "uint256",
type: "uint256"
}
],
name: "ERC725X_UnknownOperationType"
},
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{
type: "error",
inputs: [{ name: "caller", internalType: "address", type: "address" }],
name: "LSP14CallerNotPendingOwner"
},
{ type: "error", inputs: [], name: "LSP14CannotTransferOwnershipToSelf" },
{
type: "error",
inputs: [],
name: "LSP14MustAcceptOwnershipInSeparateTransaction"
},
{
type: "error",
inputs: [
{
name: "renounceOwnershipStart",
internalType: "uint256",
type: "uint256"
},
{
name: "renounceOwnershipEnd",
internalType: "uint256",
type: "uint256"
}
],
name: "LSP14NotInRenounceOwnershipInterval"
},
{
type: "error",
inputs: [
{ name: "postCall", internalType: "bool", type: "bool" },
{ name: "returnedStatus", internalType: "bytes4", type: "bytes4" }
],
name: "LSP20CallVerificationFailed"
},
{
type: "error",
inputs: [{ name: "postCall", internalType: "bool", type: "bool" }],
name: "LSP20CallingVerifierFailed"
},
{
type: "error",
inputs: [
{ name: "logicVerifier", internalType: "address", type: "address" }
],
name: "LSP20EOACannotVerifyCall"
},
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "NoExtensionFoundForFunctionSelector"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operationType",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "contractAddress",
internalType: "address",
type: "address",
indexed: true
},
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: false
},
{ name: "salt", internalType: "bytes32", type: "bytes32", indexed: true }
],
name: "ContractCreated"
},
{
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: "operationType",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "target",
internalType: "address",
type: "address",
indexed: true
},
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: false
},
{
name: "selector",
internalType: "bytes4",
type: "bytes4",
indexed: true
}
],
name: "Executed"
},
{ type: "event", anonymous: false, inputs: [], name: "OwnershipRenounced" },
{
type: "event",
anonymous: false,
inputs: [
{
name: "previousOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "newOwner",
internalType: "address",
type: "address",
indexed: true
}
],
name: "OwnershipTransferStarted"
},
{
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: "RenounceOwnershipStarted"
},
{
type: "event",
anonymous: false,
inputs: [
{ name: "from", internalType: "address", type: "address", indexed: true },
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "typeId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "receivedData",
internalType: "bytes",
type: "bytes",
indexed: false
},
{
name: "returnedValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "UniversalReceiver"
},
{ type: "fallback", stateMutability: "payable" },
{
type: "function",
inputs: [],
name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "VERSION",
outputs: [{ name: "", internalType: "string", type: "string" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "acceptOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "operationType", internalType: "uint256", type: "uint256" },
{ name: "target", internalType: "address", type: "address" },
{ name: "value", internalType: "uint256", type: "uint256" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "execute",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "operationsType", internalType: "uint256[]", type: "uint256[]" },
{ name: "targets", internalType: "address[]", type: "address[]" },
{ name: "values", internalType: "uint256[]", type: "uint256[]" },
{ name: "datas", internalType: "bytes[]", type: "bytes[]" }
],
name: "executeBatch",
outputs: [{ name: "", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "payable"
},
{
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: "dataHash", internalType: "bytes32", type: "bytes32" },
{ name: "signature", internalType: "bytes", type: "bytes" }
],
name: "isValidSignature",
outputs: [
{ name: "returnedStatus", internalType: "bytes4", type: "bytes4" }
],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "owner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "pendingOwner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "renounceOwnership",
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: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "pendingNewOwner", internalType: "address", type: "address" }
],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "typeId", internalType: "bytes32", type: "bytes32" },
{ name: "receivedData", internalType: "bytes", type: "bytes" }
],
name: "universalReceiver",
outputs: [{ name: "returnedValues", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{ type: "receive", stateMutability: "payable" }
];
const lsp0Erc725AccountInitAbi = [
{ type: "constructor", inputs: [], stateMutability: "nonpayable" },
{ type: "error", inputs: [], name: "ERC725X_ContractDeploymentFailed" },
{
type: "error",
inputs: [],
name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress"
},
{ type: "error", inputs: [], name: "ERC725X_ExecuteParametersEmptyArray" },
{
type: "error",
inputs: [],
name: "ERC725X_ExecuteParametersLengthMismatch"
},
{
type: "error",
inputs: [
{ name: "balance", internalType: "uint256", type: "uint256" },
{ name: "value", internalType: "uint256", type: "uint256" }
],
name: "ERC725X_InsufficientBalance"
},
{
type: "error",
inputs: [],
name: "ERC725X_MsgValueDisallowedInDelegateCall"
},
{ type: "error", inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall" },
{ type: "error", inputs: [], name: "ERC725X_NoContractBytecodeProvided" },
{
type: "error",
inputs: [
{
name: "operationTypeProvided",
internalType: "uint256",
type: "uint256"
}
],
name: "ERC725X_UnknownOperationType"
},
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray" },
{ type: "error", inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch" },
{
type: "error",
inputs: [{ name: "caller", internalType: "address", type: "address" }],
name: "LSP14CallerNotPendingOwner"
},
{ type: "error", inputs: [], name: "LSP14CannotTransferOwnershipToSelf" },
{
type: "error",
inputs: [],
name: "LSP14MustAcceptOwnershipInSeparateTransaction"
},
{
type: "error",
inputs: [
{
name: "renounceOwnershipStart",
internalType: "uint256",
type: "uint256"
},
{
name: "renounceOwnershipEnd",
internalType: "uint256",
type: "uint256"
}
],
name: "LSP14NotInRenounceOwnershipInterval"
},
{
type: "error",
inputs: [
{ name: "postCall", internalType: "bool", type: "bool" },
{ name: "returnedStatus", internalType: "bytes4", type: "bytes4" }
],
name: "LSP20CallVerificationFailed"
},
{
type: "error",
inputs: [{ name: "postCall", internalType: "bool", type: "bool" }],
name: "LSP20CallingVerifierFailed"
},
{
type: "error",
inputs: [
{ name: "logicVerifier", internalType: "address", type: "address" }
],
name: "LSP20EOACannotVerifyCall"
},
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "NoExtensionFoundForFunctionSelector"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "operationType",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "contractAddress",
internalType: "address",
type: "address",
indexed: true
},
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: false
},
{ name: "salt", internalType: "bytes32", type: "bytes32", indexed: true }
],
name: "ContractCreated"
},
{
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: "operationType",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "target",
internalType: "address",
type: "address",
indexed: true
},
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: false
},
{
name: "selector",
internalType: "bytes4",
type: "bytes4",
indexed: true
}
],
name: "Executed"
},
{
type: "event",
anonymous: false,
inputs: [
{ name: "version", internalType: "uint8", type: "uint8", indexed: false }
],
name: "Initialized"
},
{ type: "event", anonymous: false, inputs: [], name: "OwnershipRenounced" },
{
type: "event",
anonymous: false,
inputs: [
{
name: "previousOwner",
internalType: "address",
type: "address",
indexed: true
},
{
name: "newOwner",
internalType: "address",
type: "address",
indexed: true
}
],
name: "OwnershipTransferStarted"
},
{
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: "RenounceOwnershipStarted"
},
{
type: "event",
anonymous: false,
inputs: [
{ name: "from", internalType: "address", type: "address", indexed: true },
{
name: "value",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "typeId",
internalType: "bytes32",
type: "bytes32",
indexed: true
},
{
name: "receivedData",
internalType: "bytes",
type: "bytes",
indexed: false
},
{
name: "returnedValue",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "UniversalReceiver"
},
{ type: "fallback", stateMutability: "payable" },
{
type: "function",
inputs: [],
name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "VERSION",
outputs: [{ name: "", internalType: "string", type: "string" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "acceptOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "operationType", internalType: "uint256", type: "uint256" },
{ name: "target", internalType: "address", type: "address" },
{ name: "value", internalType: "uint256", type: "uint256" },
{ name: "data", internalType: "bytes", type: "bytes" }
],
name: "execute",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "operationsType", internalType: "uint256[]", type: "uint256[]" },
{ name: "targets", internalType: "address[]", type: "address[]" },
{ name: "values", internalType: "uint256[]", type: "uint256[]" },
{ name: "datas", internalType: "bytes[]", type: "bytes[]" }
],
name: "executeBatch",
outputs: [{ name: "", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "payable"
},
{
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: "initialOwner", internalType: "address", type: "address" }
],
name: "initialize",
outputs: [],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "dataHash", internalType: "bytes32", type: "bytes32" },
{ name: "signature", internalType: "bytes", type: "bytes" }
],
name: "isValidSignature",
outputs: [
{ name: "returnedStatus", internalType: "bytes4", type: "bytes4" }
],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "owner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "pendingOwner",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "renounceOwnership",
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: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "pendingNewOwner", internalType: "address", type: "address" }
],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "typeId", internalType: "bytes32", type: "bytes32" },
{ name: "receivedData", internalType: "bytes", type: "bytes" }
],
name: "universalReceiver",
outputs: [{ name: "returnedValues", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{ type: "receive", stateMutability: "payable" }
];
const lsp11SocialRecoveryAbi = [
{ type: "error", inputs: [], name: "AccountNotSetupYet" },
{
type: "error",
inputs: [{ name: "iteration", internalType: "uint256", type: "uint256" }],
name: "BatchCallsFailed"
},
{
type: "error",
inputs: [],
name: "BatchExecuteRelayCallParamsLengthMismatch"
},
{
type: "error",
inputs: [
{ name: "guardian", internalType: "address", type: "address" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "CallerIsNotGuardian"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "CallerIsNotTheAccount"
},
{
type: "error",
inputs: [
{ name: "votedAddress", internalType: "address", type: "address" },
{ name: "caller", internalType: "address", type: "address" }
],
name: "CallerIsNotVotedAddress"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoverer", internalType: "address", type: "address" }
],
name: "CallerVotesHaveNotReachedThreshold"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "committer", internalType: "address", type: "address" }
],
name: "CannotRecoverAfterDirectCommit"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "delay", internalType: "uint256", type: "uint256" }
],
name: "CannotRecoverBeforeDelay"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "guardian", internalType: "address", type: "address" },
{
name: "guardianVotedAddress",
internalType: "address",
type: "address"
}
],
name: "CannotVoteToAddressTwice"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "guardian", internalType: "address", type: "address" }
],
name: "GuardianAlreadyExists"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "guardian", internalType: "address", type: "address" }
],
name: "GuardianNotFound"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "threshold", internalType: "uint256", type: "uint256" }
],
name: "GuardianNumberCannotGoBelowThreshold"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "committer", internalType: "address", type: "address" }
],
name: "InvalidCommitment"
},
{
type: "error",
inputs: [
{ name: "signer", internalType: "address", type: "address" },
{ name: "invalidNonce", internalType: "uint256", type: "uint256" },
{ name: "signature", internalType: "bytes", type: "bytes" }
],
name: "InvalidRelayNonce"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "secretHash", internalType: "bytes32", type: "bytes32" }
],
name: "InvalidSecretHash"
},
{
type: "error",
inputs: [
{ name: "totalValues", internalType: "uint256", type: "uint256" },
{ name: "msgValue", internalType: "uint256", type: "uint256" }
],
name: "LSP11BatchExcessiveValueSent"
},
{
type: "error",
inputs: [
{ name: "totalValues", internalType: "uint256", type: "uint256" },
{ name: "msgValue", internalType: "uint256", type: "uint256" }
],
name: "LSP11BatchInsufficientValueSent"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "nonGuardian", internalType: "address", type: "address" }
],
name: "NotAGuardianOfTheAccount"
},
{ type: "error", inputs: [], name: "RelayCallBeforeStartTime" },
{ type: "error", inputs: [], name: "RelayCallExpired" },
{
type: "error",
inputs: [
{ name: "functionSelector", internalType: "bytes4", type: "bytes4" }
],
name: "RelayCallNotSupported"
},
{
type: "error",
inputs: [
{ name: "votedAddress", internalType: "address", type: "address" },
{ name: "recoveredAddress", internalType: "address", type: "address" }
],
name: "SignerIsNotVotedAddress"
},
{
type: "error",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "threshold", internalType: "uint256", type: "uint256" }
],
name: "ThresholdExceedsGuardianNumber"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "guardian",
internalType: "address",
type: "address",
indexed: true
}
],
name: "GuardianAdded"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "guardian",
internalType: "address",
type: "address",
indexed: true
}
],
name: "GuardianRemoved"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "recoveryCounter",
internalType: "uint256",
type: "uint256",
indexed: false
},
{
name: "guardian",
internalType: "address",
type: "address",
indexed: true
},
{
name: "guardianVotedAddress",
internalType: "address",
type: "address",
indexed: true
}
],
name: "GuardianVotedFor"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "guardianThreshold",
internalType: "uint256",
type: "uint256",
indexed: true
}
],
name: "GuardiansThresholdChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "previousRecoveryCounter",
internalType: "uint256",
type: "uint256",
indexed: true
}
],
name: "RecoveryCancelled"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "recoveryDelay",
internalType: "uint256",
type: "uint256",
indexed: true
}
],
name: "RecoveryDelayChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "recoveryCounter",
internalType: "uint256",
type: "uint256",
indexed: true
},
{
name: "guardianVotedAddress",
internalType: "address",
type: "address",
indexed: true
},
{
name: "calldataExecuted",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "RecoveryProcessSuccessful"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "secretHash",
internalType: "bytes32",
type: "bytes32",
indexed: true
}
],
name: "SecretHashChanged"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "account",
internalType: "address",
type: "address",
indexed: true
},
{
name: "recoveryCounter",
internalType: "uint256",
type: "uint256",
indexed: false
},
{
name: "committedBy",
internalType: "address",
type: "address",
indexed: true
},
{
name: "commitment",
internalType: "bytes32",
type: "bytes32",
indexed: true
}
],
name: "SecretHashCommitted"
},
{
type: "function",
inputs: [],
name: "COMMITMEMT_DELAY",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [],
name: "DEFAULT_RECOVERY_DELAY",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "newGuardian", internalType: "address", type: "address" }
],
name: "addGuardian",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "data", internalType: "bytes[]", type: "bytes[]" }],
name: "batchCalls",
outputs: [{ name: "results", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "cancelRecoveryProcess",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "votedAddress", internalType: "address", type: "address" },
{ name: "commitment", internalType: "bytes32", type: "bytes32" }
],
name: "commitToRecover",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "signature", internalType: "bytes", type: "bytes" },
{ name: "nonce", internalType: "uint256", type: "uint256" },
{ name: "validityTimestamps", internalType: "uint256", type: "uint256" },
{ name: "payload", internalType: "bytes", type: "bytes" }
],
name: "executeRelayCall",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "signatures", internalType: "bytes[]", type: "bytes[]" },
{ name: "nonces", internalType: "uint256[]", type: "uint256[]" },
{
name: "validityTimestamps",
internalType: "uint256[]",
type: "uint256[]"
},
{ name: "values", internalType: "uint256[]", type: "uint256[]" },
{ name: "payloads", internalType: "bytes[]", type: "bytes[]" }
],
name: "executeRelayCallBatch",
outputs: [{ name: "", internalType: "bytes[]", type: "bytes[]" }],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryCounter", internalType: "uint256", type: "uint256" },
{ name: "committedBy", internalType: "address", type: "address" }
],
name: "getCommitmentInfoOf",
outputs: [
{ name: "", internalType: "bytes32", type: "bytes32" },
{ name: "", internalType: "uint256", type: "uint256" }
],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryCounter", internalType: "uint256", type: "uint256" }
],
name: "getFirstRecoveryTimestampOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "getGuardiansOf",
outputs: [{ name: "", internalType: "address[]", type: "address[]" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "getGuardiansThresholdOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "from", internalType: "address", type: "address" },
{ name: "channelId", internalType: "uint128", type: "uint128" }
],
name: "getNonce",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "getRecoveryCounterOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "getRecoveryDelayOf",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "account", internalType: "address", type: "address" }],
name: "getSecretHashOf",
outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryCounter", internalType: "uint256", type: "uint256" },
{ name: "guardian", internalType: "address", type: "address" }
],
name: "getVotedAddressByGuardian",
outputs: [{ name: "", internalType: "address", type: "address" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryCounter", internalType: "uint256", type: "uint256" },
{ name: "votedAddress", internalType: "address", type: "address" }
],
name: "getVotesOfGuardianVotedAddress",
outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryCounter", internalType: "uint256", type: "uint256" },
{ name: "votedAddress", internalType: "address", type: "address" }
],
name: "hasReachedThreshold",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "guardianAddress", internalType: "address", type: "address" }
],
name: "isGuardianOf",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "votedAddress", internalType: "address", type: "address" },
{ name: "secretHash", internalType: "bytes32", type: "bytes32" },
{ name: "newSecretHash", internalType: "bytes32", type: "bytes32" },
{ name: "calldataToExecute", internalType: "bytes", type: "bytes" }
],
name: "recoverAccess",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "payable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "existingGuardian", internalType: "address", type: "address" }
],
name: "removeGuardian",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "newThreshold", internalType: "uint256", type: "uint256" }
],
name: "setGuardiansThreshold",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{ name: "recoveryDelay", internalType: "uint256", type: "uint256" }
],
name: "setRecoveryDelay",
outputs: [],
stateMutability: "nonpayable"
},
{
type: "function",
inputs: [
{ name: "account", internalType: "address", type: "address" },
{
name: "newRecoverSecretHash",
internalType: "bytes32",
type: "bytes32"
}
],
name: "setRecoverySecretHash",
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: "account", internalType: "address", type: "address" },
{ name: "guardian", internalType: "address", type: "address" },
{
name: "guardianVotedAddress",
internalType: "address",
type: "address"
}
],
name: "voteForRecovery",
outputs: [],
stateMutability: "nonpayable"
}
];
const lsp1UniversalReceiverDelegateUpAbi = [
{
type: "error",
inputs: [{ name: "caller", internalType: "address", type: "address" }],
name: "CannotRegisterEOAsAsAssets"
},
{
type: "function",
inputs: [],
name: "VERSION",
outputs: [{ name: "", internalType: "string", type: "string" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "notifier", internalType: "address", type: "address" },
{ name: "", internalType: "uint256", type: "uint256" },
{ name: "typeId", internalType: "bytes32", type: "bytes32" },
{ name: "", internalType: "bytes", type: "bytes" }
],
name: "universalReceiverDelegate",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "nonpayable"
}
];
const lsp1UniversalReceiverDelegateVaultAbi = [
{
type: "error",
inputs: [{ name: "caller", internalType: "address", type: "address" }],
name: "CannotRegisterEOAsAsAssets"
},
{
type: "function",
inputs: [],
name: "VERSION",
outputs: [{ name: "", internalType: "string", type: "string" }],
stateMutability: "view"
},
{
type: "function",
inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
name: "supportsInterface",
outputs: [{ name: "", internalType: "bool", type: "bool" }],
stateMutability: "view"
},
{
type: "function",
inputs: [
{ name: "notifier", internalType: "address", type: "address" },
{ name: "", internalType: "uint256", type: "uint256" },
{ name: "typeId", internalType: "bytes32", type: "bytes32" },
{ name: "", internalType: "bytes", type: "bytes" }
],
name: "universalReceiverDelegate",
outputs: [{ name: "", internalType: "bytes", type: "bytes" }],
stateMutability: "nonpayable"
}
];
const lsp23LinkedContractsFactoryAbi = [
{ type: "error", inputs: [], name: "InvalidValueSum" },
{
type: "error",
inputs: [{ name: "errorData", internalType: "bytes", type: "bytes" }],
name: "PrimaryContractProxyInitFailureError"
},
{
type: "error",
inputs: [{ name: "errorData", internalType: "bytes", type: "bytes" }],
name: "SecondaryContractProxyInitFailureError"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "primaryContract",
internalType: "address",
type: "address",
indexed: true
},
{
name: "secondaryContract",
internalType: "address",
type: "address",
indexed: true
},
{
name: "primaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment",
type: "tuple",
components: [
{ name: "salt", internalType: "bytes32", type: "bytes32" },
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" }
],
indexed: false
},
{
name: "secondaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment",
type: "tuple",
components: [
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" },
{
name: "addPrimaryContractAddress",
internalType: "bool",
type: "bool"
},
{
name: "extraConstructorParams",
internalType: "bytes",
type: "bytes"
}
],
indexed: false
},
{
name: "postDeploymentModule",
internalType: "address",
type: "address",
indexed: false
},
{
name: "postDeploymentModuleCalldata",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "DeployedContracts"
},
{
type: "event",
anonymous: false,
inputs: [
{
name: "primaryContract",
internalType: "address",
type: "address",
indexed: true
},
{
name: "secondaryContract",
internalType: "address",
type: "address",
indexed: true
},
{
name: "primaryContractDeploymentInit",
internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeploymentInit",
type: "tuple",
components: [
{ name: "salt", internalType: "bytes32", type: "bytes32" },
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{
name: "implementationContract",
internalType: "address",
type: "address"
},
{
name: "initializationCalldata",
internalType: "bytes",
type: "bytes"
}
],
indexed: false
},
{
name: "secondaryContractDeploymentInit",
internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeploymentInit",
type: "tuple",
components: [
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{
name: "implementationContract",
internalType: "address",
type: "address"
},
{
name: "initializationCalldata",
internalType: "bytes",
type: "bytes"
},
{
name: "addPrimaryContractAddress",
internalType: "bool",
type: "bool"
},
{
name: "extraInitializationParams",
internalType: "bytes",
type: "bytes"
}
],
indexed: false
},
{
name: "postDeploymentModule",
internalType: "address",
type: "address",
indexed: false
},
{
name: "postDeploymentModuleCalldata",
internalType: "bytes",
type: "bytes",
indexed: false
}
],
name: "DeployedERC1167Proxies"
},
{
type: "function",
inputs: [
{
name: "primaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment",
type: "tuple",
components: [
{ name: "salt", internalType: "bytes32", type: "bytes32" },
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" }
]
},
{
name: "secondaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment",
type: "tuple",
components: [
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" },
{
name: "addPrimaryContractAddress",
internalType: "bool",
type: "bool"
},
{
name: "extraConstructorParams",
internalType: "bytes",
type: "bytes"
}
]
},
{
name: "postDeploymentModule",
internalType: "address",
type: "address"
},
{
name: "postDeploymentModuleCalldata",
internalType: "bytes",
type: "bytes"
}
],
name: "computeAddresses",
outputs: [
{
name: "primaryContractAddress",
internalType: "address",
type: "address"
},
{
name: "secondaryContractAddress",
internalType: "address",
type: "address"
}
],
stateMutability: "view"
},
{
type: "function",
inputs: [
{
name: "primaryContractDeploymentInit",
internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeploymentInit",
type: "tuple",
components: [
{ name: "salt", internalType: "bytes32", type: "bytes32" },
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{
name: "implementationContract",
internalType: "address",
type: "address"
},
{
name: "initializationCalldata",
internalType: "bytes",
type: "bytes"
}
]
},
{
name: "secondaryContractDeploymentInit",
internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeploymentInit",
type: "tuple",
components: [
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{
name: "implementationContract",
internalType: "address",
type: "address"
},
{
name: "initializationCalldata",
internalType: "bytes",
type: "bytes"
},
{
name: "addPrimaryContractAddress",
internalType: "bool",
type: "bool"
},
{
name: "extraInitializationParams",
internalType: "bytes",
type: "bytes"
}
]
},
{
name: "postDeploymentModule",
internalType: "address",
type: "address"
},
{
name: "postDeploymentModuleCalldata",
internalType: "bytes",
type: "bytes"
}
],
name: "computeERC1167Addresses",
outputs: [
{
name: "primaryContractAddress",
internalType: "address",
type: "address"
},
{
name: "secondaryContractAddress",
internalType: "address",
type: "address"
}
],
stateMutability: "view"
},
{
type: "function",
inputs: [
{
name: "primaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment",
type: "tuple",
components: [
{ name: "salt", internalType: "bytes32", type: "bytes32" },
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" }
]
},
{
name: "secondaryContractDeployment",
internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment",
type: "tuple",
components: [
{ name: "fundingAmount", internalType: "uint256", type: "uint256" },
{ name: "creationBytecode", internalType: "bytes", type: "bytes" },
{
name: "addPrimaryContractAddress",
internalType: "bool",
type: "bool"
},
{
name: "extraConstructorParams",
internalType: "bytes",
type: "bytes"
}
]
},
{
name: "postDeploymentModule",
internalType: "address",
type: "address"
},
{
name: "postDeploymentModuleCalldata",
internalType: "bytes",
type: "bytes"
}
],
name: "deployContracts",
outputs: [
{
name: "primaryContractAddress",
internalType: "address",
type: "address"
},
{
name: "secondaryContractAddress",
internalType: "address",
type: "address"
}
],
stateMutab