@opensubaccounts/sdk
Preparing search index...
getOpenSubaccounts
Function getOpenSubaccounts
getOpenSubaccounts
<
TClient
extends
Client
>
(
client
:
TClient
,
chainId
:
number
,
)
:
{
[
K
in
string
|
number
|
symbol
]
:
(
{
[
K
in
string
|
number
|
symbol
]
:
(
(
(
TClient
extends
{
public
:
Client
}
?
TClient
<
TClient
>
[
"public"
]
:
TClient
)
extends
Client
?
{
read
:
{
_HARDCODED_CHAIN_ID
:
(
...
parameters
:
...
)
=>
...
;
ALLOWANCE_MANAGER
:
(
...
parameters
:
...
)
=>
...
;
allowanceNonces
:
(
...
parameters
:
...
)
=>
...
;
allowanceRequestBatchTypehash
:
(
...
parameters
:
...
)
=>
...
;
allowanceRequestTypehash
:
(
...
parameters
:
...
)
=>
...
;
allowances
:
(
...
parameters
:
...
)
=>
...
;
domainSeparator
:
(
...
parameters
:
...
)
=>
...
;
eip712Domain
:
(
...
parameters
:
...
)
=>
...
;
encodeTransactionBatchData
:
(
...
parameters
:
...
)
=>
...
;
factory
:
(
...
parameters
:
...
)
=>
...
;
generateAllowanceHolderAddress
:
(
...
parameters
:
...
)
=>
...
;
generateSubaccountAddress
:
(
...
parameters
:
...
)
=>
...
;
hashAllowanceRequestBatch
:
(
...
parameters
:
...
)
=>
...
;
holderAddress
:
(
...
parameters
:
...
)
=>
...
;
isDeployedAllowanceHolder
:
(
...
parameters
:
...
)
=>
...
;
isDeployedSubaccount
:
(
...
parameters
:
...
)
=>
...
;
MULTICHAIN_SIGNATURES_MODULE
:
(
...
parameters
:
...
)
=>
...
;
permit2
:
(
...
parameters
:
...
)
=>
...
;
SAFE_MODULE_SETUP
:
(
...
parameters
:
...
)
=>
...
;
SAFE_PROXY_FACTORY
:
(
...
parameters
:
...
)
=>
...
;
SAFE_SINGLETON
:
(
...
parameters
:
...
)
=>
...
;
SIGLESS_TRANSACTION_EXECUTOR
:
(
...
parameters
:
...
)
=>
...
;
VERSION
:
(
...
parameters
:
...
)
=>
...
;
}
;
}
&
{
estimateGas
:
{
bootstrapAllowance
:
(
...
parameters
:
...
)
=>
...
;
commitHolder
:
(
...
parameters
:
...
)
=>
...
;
createAllowanceHolder
:
(
...
parameters
:
...
)
=>
...
;
createSubaccount
:
(
...
parameters
:
...
)
=>
...
;
execTransactionBatch
:
(
...
parameters
:
...
)
=>
...
;
registerHolder
:
(
...
parameters
:
...
)
=>
...
;
setAllowances
:
(
...
parameters
:
...
)
=>
...
;
spendAllowance
:
(
...
parameters
:
...
)
=>
...
;
}
;
simulate
:
{
bootstrapAllowance
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
commitHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
createAllowanceHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
createSubaccount
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
execTransactionBatch
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
registerHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
setAllowances
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
spendAllowance
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
}
;
}
&
{
createEventFilter
:
{
AllowanceHolderCreated
:
<
const
args
extends
...
,
strict
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
AllowanceSet
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
AllowanceSpent
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
HolderPullFailed
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
SafeTxFailed
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
SubaccountCreated
:
<
const
args
extends
...
,
strict
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
}
;
getEvents
:
{
AllowanceHolderCreated
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSet
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSpent
:
(
...
parameters
:
...
)
=>
...
;
HolderPullFailed
:
(
...
parameters
:
...
)
=>
...
;
SafeTxFailed
:
(
...
parameters
:
...
)
=>
...
;
SubaccountCreated
:
(
...
parameters
:
...
)
=>
...
;
}
;
watchEvent
:
{
AllowanceHolderCreated
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSet
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSpent
:
(
...
parameters
:
...
)
=>
...
;
HolderPullFailed
:
(
...
parameters
:
...
)
=>
...
;
SafeTxFailed
:
(
...
parameters
:
...
)
=>
...
;
SubaccountCreated
:
(
...
parameters
:
...
)
=>
...
;
}
;
}
:
unknown
)
&
(
(
TClient
extends
{
wallet
:
Client
}
?
TClient
<
TClient
>
[
"wallet"
]
:
TClient
)
extends
Client
?
{
estimateGas
:
{
bootstrapAllowance
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
commitHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createAllowanceHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createSubaccount
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
execTransactionBatch
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
registerHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
setAllowances
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
spendAllowance
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
}
;
write
:
{
bootstrapAllowance
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
commitHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createAllowanceHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createSubaccount
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
execTransactionBatch
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
registerHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
setAllowances
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
spendAllowance
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
}
;
}
:
unknown
)
)
[
K
]
}
&
{
abi
:
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
:
"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
:
"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
:
"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
:
"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"
}
,
]
;
address
:
`
0x
${
string
}
`
;
}
)
[
K
]
}
Type Parameters
TClient
extends
Client
Parameters
client
:
TClient
chainId
:
number
Returns
{
[
K
in
string
|
number
|
symbol
]
:
(
{
[
K
in
string
|
number
|
symbol
]
:
(
(
(
TClient
extends
{
public
:
Client
}
?
TClient
<
TClient
>
[
"public"
]
:
TClient
)
extends
Client
?
{
read
:
{
_HARDCODED_CHAIN_ID
:
(
...
parameters
:
...
)
=>
...
;
ALLOWANCE_MANAGER
:
(
...
parameters
:
...
)
=>
...
;
allowanceNonces
:
(
...
parameters
:
...
)
=>
...
;
allowanceRequestBatchTypehash
:
(
...
parameters
:
...
)
=>
...
;
allowanceRequestTypehash
:
(
...
parameters
:
...
)
=>
...
;
allowances
:
(
...
parameters
:
...
)
=>
...
;
domainSeparator
:
(
...
parameters
:
...
)
=>
...
;
eip712Domain
:
(
...
parameters
:
...
)
=>
...
;
encodeTransactionBatchData
:
(
...
parameters
:
...
)
=>
...
;
factory
:
(
...
parameters
:
...
)
=>
...
;
generateAllowanceHolderAddress
:
(
...
parameters
:
...
)
=>
...
;
generateSubaccountAddress
:
(
...
parameters
:
...
)
=>
...
;
hashAllowanceRequestBatch
:
(
...
parameters
:
...
)
=>
...
;
holderAddress
:
(
...
parameters
:
...
)
=>
...
;
isDeployedAllowanceHolder
:
(
...
parameters
:
...
)
=>
...
;
isDeployedSubaccount
:
(
...
parameters
:
...
)
=>
...
;
MULTICHAIN_SIGNATURES_MODULE
:
(
...
parameters
:
...
)
=>
...
;
permit2
:
(
...
parameters
:
...
)
=>
...
;
SAFE_MODULE_SETUP
:
(
...
parameters
:
...
)
=>
...
;
SAFE_PROXY_FACTORY
:
(
...
parameters
:
...
)
=>
...
;
SAFE_SINGLETON
:
(
...
parameters
:
...
)
=>
...
;
SIGLESS_TRANSACTION_EXECUTOR
:
(
...
parameters
:
...
)
=>
...
;
VERSION
:
(
...
parameters
:
...
)
=>
...
;
}
;
}
&
{
estimateGas
:
{
bootstrapAllowance
:
(
...
parameters
:
...
)
=>
...
;
commitHolder
:
(
...
parameters
:
...
)
=>
...
;
createAllowanceHolder
:
(
...
parameters
:
...
)
=>
...
;
createSubaccount
:
(
...
parameters
:
...
)
=>
...
;
execTransactionBatch
:
(
...
parameters
:
...
)
=>
...
;
registerHolder
:
(
...
parameters
:
...
)
=>
...
;
setAllowances
:
(
...
parameters
:
...
)
=>
...
;
spendAllowance
:
(
...
parameters
:
...
)
=>
...
;
}
;
simulate
:
{
bootstrapAllowance
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
commitHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
createAllowanceHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
createSubaccount
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
execTransactionBatch
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
registerHolder
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
setAllowances
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
spendAllowance
:
<
chainOverride
extends
...
=
...
,
accountOverride
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
}
;
}
&
{
createEventFilter
:
{
AllowanceHolderCreated
:
<
const
args
extends
...
,
strict
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
AllowanceSet
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
AllowanceSpent
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
HolderPullFailed
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
SafeTxFailed
:
<
const
args
extends
...
,
strict
extends
...
=
...
>
(
...
parameters
:
...
,
)
=>
...
;
SubaccountCreated
:
<
const
args
extends
...
,
strict
extends
...
=
...
,
>
(
...
parameters
:
...
,
)
=>
...
;
}
;
getEvents
:
{
AllowanceHolderCreated
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSet
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSpent
:
(
...
parameters
:
...
)
=>
...
;
HolderPullFailed
:
(
...
parameters
:
...
)
=>
...
;
SafeTxFailed
:
(
...
parameters
:
...
)
=>
...
;
SubaccountCreated
:
(
...
parameters
:
...
)
=>
...
;
}
;
watchEvent
:
{
AllowanceHolderCreated
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSet
:
(
...
parameters
:
...
)
=>
...
;
AllowanceSpent
:
(
...
parameters
:
...
)
=>
...
;
HolderPullFailed
:
(
...
parameters
:
...
)
=>
...
;
SafeTxFailed
:
(
...
parameters
:
...
)
=>
...
;
SubaccountCreated
:
(
...
parameters
:
...
)
=>
...
;
}
;
}
:
unknown
)
&
(
(
TClient
extends
{
wallet
:
Client
}
?
TClient
<
TClient
>
[
"wallet"
]
:
TClient
)
extends
Client
?
{
estimateGas
:
{
bootstrapAllowance
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
commitHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createAllowanceHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createSubaccount
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
execTransactionBatch
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
registerHolder
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
setAllowances
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
spendAllowance
:
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
}
;
write
:
{
bootstrapAllowance
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
commitHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createAllowanceHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
createSubaccount
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
execTransactionBatch
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
registerHolder
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
setAllowances
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
spendAllowance
:
<
chainOverride
extends
(...)
|
(...)
,
options
extends
{
[
K
in
(...)
]
:
(...)
}
,
>
(
...
parameters
:
[
args
:
...
,
...
parameters
:
(...)
[]
]
,
)
=>
Promise
<
(...)
>
;
}
;
}
:
unknown
)
)
[
K
]
}
&
{
abi
:
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
:
"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
:
"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
:
"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
:
"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"
}
,
]
;
address
:
`
0x
${
string
}
`
;
}
)
[
K
]
}
Settings
Member Visibility
Protected
Inherited
External
Theme
OS
Light
Dark
@opensubaccounts/sdk
Loading...