UNPKG

@lukso/lsp-smart-contracts

Version:

The reference smart contract implementation for the LUKSO LSP standards

1,896 lines (1,895 loc) 384 kB
'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