@opensubaccounts/sdk
    Preparing search index...

    Variable AllowanceManagerAbiConst

    AllowanceManagerAbi: readonly [
        {
            inputs: readonly [
                { internalType: "address"; name: "_permit2"; type: "address" },
                { internalType: "address"; name: "factoryAddr"; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "constructor";
        },
        {
            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 [];
            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 [];
            name: "factory";
            outputs: readonly [
                { internalType: "address"; name: "factoryAddress"; type: "address" },
            ];
            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 [];
            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: "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";
        },
        { inputs: readonly []; name: "AllowanceExceeded"; type: "error" },
        { inputs: readonly []; name: "AlreadyInitialised"; 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 []; 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: "Reentrancy"; type: "error" },
        {
            inputs: readonly [
                { internalType: "address"; name: "token"; type: "address" },
            ];
            name: "SafeERC20FailedOperation";
            type: "error";
        },
        { inputs: readonly []; name: "UnauthorizedCaller"; type: "error" },
        { inputs: readonly []; name: "ZeroAmount"; type: "error" },
    ] = ...