Variable OpenSubaccountsAbiConst
OpenSubaccountsAbi: readonly [
{
inputs: readonly [
{
internalType: "address";
name: "_siglessTransactionExecutor";
type: "address";
},
{ internalType: "address"; name: "_safeSingleton"; type: "address" },
{ internalType: "address"; name: "_safeProxyFactory"; type: "address" },
{ internalType: "address"; name: "_safeModuleSetup"; type: "address" },
{ internalType: "address"; name: "_permit2"; type: "address" },
];
stateMutability: "nonpayable";
type: "constructor";
},
{
inputs: readonly [];
name: "ALLOWANCE_MANAGER";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "MULTICHAIN_SIGNATURES_MODULE";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "SAFE_MODULE_SETUP";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "SAFE_PROXY_FACTORY";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "SAFE_SINGLETON";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "SIGLESS_TRANSACTION_EXECUTOR";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "VERSION";
outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "_HARDCODED_CHAIN_ID";
outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: ""; type: "address" },
{ internalType: "address"; name: ""; type: "address" },
{ internalType: "address"; name: ""; type: "address" },
];
name: "allowanceNonces";
outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "allowanceRequestBatchTypehash";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [];
name: "allowanceRequestTypehash";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
];
name: "allowances";
outputs: readonly [
{
components: readonly [
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{ internalType: "uint256"; name: "timeframe"; type: "uint256" },
{ internalType: "uint256"; name: "spent"; type: "uint256" },
{ internalType: "uint256"; name: "resetsAt"; type: "uint256" },
];
internalType: "struct IAllowanceManager.Allowance";
name: "";
type: "tuple";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{ internalType: "uint256"; name: "timeframe"; type: "uint256" },
];
name: "bootstrapAllowance";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "address"; name: "holder"; type: "address" },
];
name: "commitHolder";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "uint256"; name: "quotaAmount"; type: "uint256" },
{ internalType: "uint256"; name: "quotaTimeframe"; type: "uint256" },
{ internalType: "uint256"; name: "initialFund"; type: "uint256" },
{ internalType: "bytes"; name: "firstCallData"; type: "bytes" },
{ internalType: "uint256"; name: "permitDeadline"; type: "uint256" },
{ internalType: "uint8"; name: "v"; type: "uint8" },
{ internalType: "bytes32"; name: "r"; type: "bytes32" },
{ internalType: "bytes32"; name: "s"; type: "bytes32" },
];
name: "createAllowanceHolder";
outputs: readonly [
{ internalType: "address"; name: "holder"; type: "address" },
];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "string"; name: "appDomain"; type: "string" },
{ internalType: "uint32"; name: "accountIndex"; type: "uint32" },
];
name: "createSubaccount";
outputs: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [];
name: "domainSeparator";
outputs: readonly [
{ internalType: "bytes32"; name: "separator"; type: "bytes32" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "eip712Domain";
outputs: readonly [
{ internalType: "bytes1"; name: "fields"; type: "bytes1" },
{ internalType: "string"; name: "name"; type: "string" },
{ internalType: "string"; name: "version"; type: "string" },
{ internalType: "uint256"; name: "chainId"; type: "uint256" },
{ internalType: "address"; name: "verifyingContract"; type: "address" },
{ internalType: "bytes32"; name: "salt"; type: "bytes32" },
{ internalType: "uint256[]"; name: "extensions"; type: "uint256[]" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
components: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
{
components: readonly [
{ internalType: "address"; name: "to"; type: "address" },
{ internalType: "uint256"; name: "value"; type: "uint256" },
{ internalType: "bytes"; name: "data"; type: "bytes" },
{ internalType: "uint8"; name: "operation"; type: "uint8" },
{ internalType: "uint256"; name: "safeTxGas"; type: "uint256" },
{ internalType: "uint256"; name: "baseGas"; type: "uint256" },
{ internalType: "uint256"; name: "gasPrice"; type: "uint256" },
{ internalType: "address"; name: "gasToken"; type: "address" },
{ internalType: "address"; name: "refundReceiver"; type: "address" },
{ internalType: "uint256"; name: "nonce"; type: "uint256" },
];
internalType: "struct ISafeTx.SafeTx[]";
name: "safeTxs";
type: "tuple[]";
},
{ internalType: "uint256[]"; name: "chainIds"; type: "uint256[]" },
];
internalType: "struct MultiChainSignaturesModule.SafeTxBatch";
name: "safeTxBatch";
type: "tuple";
},
];
name: "encodeTransactionBatchData";
outputs: readonly [{ internalType: "bytes"; name: ""; type: "bytes" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "account"; type: "address" },
{
components: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
{
components: readonly [
{ internalType: "address"; name: "to"; type: "address" },
{ internalType: "uint256"; name: "value"; type: "uint256" },
{ internalType: "bytes"; name: "data"; type: "bytes" },
{ internalType: "uint8"; name: "operation"; type: "uint8" },
{ internalType: "uint256"; name: "safeTxGas"; type: "uint256" },
{ internalType: "uint256"; name: "baseGas"; type: "uint256" },
{ internalType: "uint256"; name: "gasPrice"; type: "uint256" },
{ internalType: "address"; name: "gasToken"; type: "address" },
{ internalType: "address"; name: "refundReceiver"; type: "address" },
{ internalType: "uint256"; name: "nonce"; type: "uint256" },
];
internalType: "struct ISafeTx.SafeTx[]";
name: "safeTxs";
type: "tuple[]";
},
{ internalType: "uint256[]"; name: "chainIds"; type: "uint256[]" },
];
internalType: "struct MultiChainSignaturesModule.SafeTxBatch";
name: "safeTxBatch";
type: "tuple";
},
{ internalType: "bytes"; name: "signatures"; type: "bytes" },
];
name: "execTransactionBatch";
outputs: readonly [
{ internalType: "bool"; name: "success"; type: "bool" },
];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [];
name: "factory";
outputs: readonly [
{ internalType: "address"; name: "factoryAddress"; type: "address" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "uint256"; name: "quotaAmount"; type: "uint256" },
{ internalType: "uint256"; name: "timeframe"; type: "uint256" },
{ internalType: "uint256"; name: "initialFund"; type: "uint256" },
{ internalType: "bytes"; name: "firstCallData"; type: "bytes" },
];
name: "generateAllowanceHolderAddress";
outputs: readonly [
{ internalType: "address"; name: "holder"; type: "address" },
{ internalType: "bool"; name: "isDeployed"; type: "bool" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "string"; name: "appDomain"; type: "string" },
{ internalType: "uint32"; name: "accountIndex"; type: "uint32" },
];
name: "generateSubaccountAddress";
outputs: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "bool"; name: "isDeployed"; type: "bool" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
components: readonly [
{
components: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{ internalType: "uint256"; name: "timeframe"; type: "uint256" },
{ internalType: "uint256"; name: "nonce"; type: "uint256" },
];
internalType: "struct IAllowanceManager.AllowanceRequest[]";
name: "requests";
type: "tuple[]";
},
{ internalType: "uint256[]"; name: "chainIds"; type: "uint256[]" },
];
internalType: "struct IAllowanceManager.AllowanceRequestBatch";
name: "batch";
type: "tuple";
},
];
name: "hashAllowanceRequestBatch";
outputs: readonly [
{ internalType: "bytes32"; name: "structHash"; type: "bytes32" },
];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
];
name: "holderAddress";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: ""; type: "address" },
];
name: "isDeployedAllowanceHolder";
outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: ""; type: "address" },
];
name: "isDeployedSubaccount";
outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "permit2";
outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "holder"; type: "address" },
];
name: "registerHolder";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{
components: readonly [
{
components: readonly [
{ internalType: "address"; name: "subaccount"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{ internalType: "uint256"; name: "timeframe"; type: "uint256" },
{ internalType: "uint256"; name: "nonce"; type: "uint256" },
];
internalType: "struct IAllowanceManager.AllowanceRequest[]";
name: "requests";
type: "tuple[]";
},
{ internalType: "uint256[]"; name: "chainIds"; type: "uint256[]" },
];
internalType: "struct IAllowanceManager.AllowanceRequestBatch";
name: "requests";
type: "tuple";
},
{ internalType: "bytes"; name: "signature"; type: "bytes" },
];
name: "setAllowances";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "address"; name: "owner"; type: "address" },
{ internalType: "address"; name: "token"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
];
name: "spendAllowance";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "holder";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "token";
type: "address";
},
];
name: "AllowanceHolderCreated";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "subaccount";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "token";
type: "address";
},
{
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
},
{
indexed: false;
internalType: "uint256";
name: "timeframe";
type: "uint256";
},
];
name: "AllowanceSet";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "subaccount";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "token";
type: "address";
},
{
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
},
];
name: "AllowanceSpent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "holder";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "subaccount";
type: "address";
},
{
indexed: true;
internalType: "uint256";
name: "amount";
type: "uint256";
},
];
name: "HolderPullFailed";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "safe";
type: "address";
},
{
indexed: true;
internalType: "uint256";
name: "index";
type: "uint256";
},
];
name: "SafeTxFailed";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "subaccount";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "owner";
type: "address";
},
{
indexed: true;
internalType: "string";
name: "appDomain";
type: "string";
},
{
indexed: false;
internalType: "uint32";
name: "accountIndex";
type: "uint32";
},
];
name: "SubaccountCreated";
type: "event";
},
{ inputs: readonly []; name: "AllowanceExceeded"; type: "error" },
{
inputs: readonly [];
name: "AllowanceManagerRegistrationFailed";
type: "error";
},
{ inputs: readonly []; name: "AlreadyInitialised"; type: "error" },
{ inputs: readonly []; name: "Create2EmptyBytecode"; type: "error" },
{
inputs: readonly [
{ internalType: "bytes"; name: "dns"; type: "bytes" },
];
name: "DNSDecodingFailed";
type: "error";
},
{
inputs: readonly [
{ internalType: "string"; name: "ens"; type: "string" },
];
name: "DNSEncodingFailed";
type: "error";
},
{ inputs: readonly []; name: "FailedDeployment"; type: "error" },
{ inputs: readonly []; name: "HolderAddressMismatch"; type: "error" },
{ inputs: readonly []; name: "HolderAlreadyCommitted"; type: "error" },
{ inputs: readonly []; name: "HolderCommitMismatch"; type: "error" },
{ inputs: readonly []; name: "HolderManagerMismatch"; type: "error" },
{ inputs: readonly []; name: "HolderMismatch"; type: "error" },
{ inputs: readonly []; name: "HolderNotCommitted"; type: "error" },
{ inputs: readonly []; name: "HolderOwnerMismatch"; type: "error" },
{ inputs: readonly []; name: "HolderTokenMismatch"; type: "error" },
{
inputs: readonly [
{ internalType: "uint256"; name: "balance"; type: "uint256" },
{ internalType: "uint256"; name: "needed"; type: "uint256" },
];
name: "InsufficientBalance";
type: "error";
},
{ inputs: readonly []; name: "InvalidContractSignature"; type: "error" },
{ inputs: readonly []; name: "InvalidNonce"; type: "error" },
{ inputs: readonly []; name: "InvalidSignature"; type: "error" },
{ inputs: readonly []; name: "InvalidSignatureLength"; type: "error" },
{ inputs: readonly []; name: "InvalidSigner"; type: "error" },
{ inputs: readonly []; name: "LengthMismatch"; type: "error" },
{ inputs: readonly []; name: "MismatchedSubaccount"; type: "error" },
{ inputs: readonly []; name: "Reentrancy"; type: "error" },
{
inputs: readonly [
{ internalType: "address"; name: "token"; type: "address" },
];
name: "SafeERC20FailedOperation";
type: "error";
},
{ inputs: readonly []; name: "SubaccountAddressMismatch"; type: "error" },
{ inputs: readonly []; name: "UnauthorizedCaller"; type: "error" },
{ inputs: readonly []; name: "ZeroAmount"; type: "error" },
] = ...