Variable abisConst

abis: {
    BundleRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "hash";
                    type: "bytes32";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "bundle";
                    type: "string";
                },
                { indexed: false; internalType: "string"; name: "host"; type: "string" },
                {
                    indexed: false;
                    internalType: "string";
                    name: "source";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "output";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "infoHash";
                    type: "string";
                },
                { indexed: false; internalType: "bool"; name: "active"; type: "bool" },
                {
                    indexed: false;
                    internalType: "address";
                    name: "creator";
                    type: "address";
                },
            ];
            name: "BundleRegistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "hash";
                    type: "bytes32";
                },
                { indexed: false; internalType: "bool"; name: "toggle"; type: "bool" },
            ];
            name: "BundleStateChange";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            name: "bundles";
            outputs: readonly [
                { internalType: "string"; name: "bundle"; type: "string" },
                { internalType: "string"; name: "source"; type: "string" },
                { internalType: "string"; name: "host"; type: "string" },
                { internalType: "string"; name: "output"; type: "string" },
                { internalType: "string"; name: "info"; type: "string" },
                { internalType: "bool"; name: "active"; type: "bool" },
                { internalType: "address"; name: "author"; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_bundle"; type: "string" },
                { internalType: "string"; name: "_source"; type: "string" },
                { internalType: "string"; name: "_host"; type: "string" },
                { internalType: "string"; name: "_output"; type: "string" },
                { internalType: "string"; name: "_infoHash"; type: "string" },
                { internalType: "bool"; name: "_active"; type: "bool" },
            ];
            name: "register";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "_adapter"; type: "bytes32" },
                { internalType: "bool"; name: "_remainActive"; type: "bool" },
            ];
            name: "setAdapterState";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ];
    CamelotMultiPositionLiquidityManager: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "spender";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Deposit";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0Earned";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1Earned";
                    type: "uint256";
                },
            ];
            name: "FeesEarned";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint160";
                    name: "sqrtPriceX96";
                    type: "uint160";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount1";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalSupply";
                    type: "uint256";
                },
            ];
            name: "Snapshot";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Withdraw";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STEER_FRACTION_OF_FEE";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STRATEGIST_FRACTION_OF_FEE";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "TOTAL_FEE";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
            ];
            name: "accruedFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
            ];
            name: "accruedFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "algebraMintCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int256"; name: "amount0Wanted"; type: "int256" },
                { internalType: "int256"; name: "amount1Wanted"; type: "int256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "algebraSwapCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "spender"; type: "address" },
            ];
            name: "allowance";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "feeIdentifier"; type: "string" },
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            name: "collectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "subtractedValue"; type: "uint256" },
            ];
            name: "decreaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Used"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Used"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int24"; name: "tickLower"; type: "int24" },
                { internalType: "int24"; name: "tickUpper"; type: "int24" },
                { internalType: "uint128"; name: "liquidity"; type: "uint128" },
            ];
            name: "emergencyBurn";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "feeDetails";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
                { internalType: "address[]"; name: ""; type: "address[]" },
                { internalType: "string[]"; name: ""; type: "string[]" },
                { internalType: "uint256[]"; name: ""; type: "uint256[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getPositions";
            outputs: readonly [
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "uint16[]"; name: ""; type: "uint16[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "getRoleMember";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleMemberCount";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getTotalAmounts";
            outputs: readonly [
                { internalType: "uint256"; name: "total0"; type: "uint256" },
                { internalType: "uint256"; name: "total1"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "addedValue"; type: "uint256" },
            ];
            name: "increaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "address"; name: ""; type: "address" },
                { internalType: "address"; name: "_steer"; type: "address" },
                { internalType: "bytes"; name: "_params"; type: "bytes" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxTickChange";
            outputs: readonly [{ internalType: "int24"; name: ""; type: "int24" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "poke";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pool";
            outputs: readonly [
                { internalType: "contract IAlgebraPool"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "totalWeight"; type: "uint256" },
                {
                    components: readonly [
                        { internalType: "int24[]"; name: "lowerTick"; type: "int24[]" },
                        { internalType: "int24[]"; name: "upperTick"; type: "int24[]" },
                        { internalType: "uint16[]"; name: "relativeWeight"; type: "uint16[]" },
                    ];
                    internalType: "struct CamelotMultiPositionLiquidityManager.LiquidityPositions";
                    name: "newPositions";
                    type: "tuple";
                },
                { internalType: "bytes"; name: "timeSensitiveData"; type: "bytes" },
            ];
            name: "tend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token0";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token1";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transfer";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "sender"; type: "address" },
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "twapInterval";
            outputs: readonly [{ internalType: "uint32"; name: ""; type: "uint32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
    ];
    GasVault: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "origin";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "target";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
            ];
            name: "Deposited";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "jobHash";
                    type: "bytes32";
                },
            ];
            name: "EtherUsed";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "targetAddress";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
            ];
            name: "Withdrawn";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            name: "ethBalances";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_targetAddress"; type: "address" },
            ];
            name: "gasAvailableForTransaction";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_orchestrator"; type: "address" },
                { internalType: "address"; name: "_stratRegistry"; type: "address" },
                { internalType: "address"; name: "_vaultRegistry"; type: "address" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "orchestrator";
            outputs: readonly [
                { internalType: "contract IOrchestrator"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
                { internalType: "uint256"; name: "originalGas"; type: "uint256" },
                { internalType: "bytes32"; name: "jobHash"; type: "bytes32" },
            ];
            name: "reimburseGas";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "strategyRegistry";
            outputs: readonly [
                {
                    internalType: "contract IStrategyRegistry";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
                { internalType: "uint256"; name: "highGasEstimate"; type: "uint256" },
            ];
            name: "transactionsRemaining";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "vaultRegistry";
            outputs: readonly [
                {
                    internalType: "contract IVaultRegistry";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount"; type: "uint256" },
                { internalType: "address payable"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ];
    SteerPeriphery: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "algebraVaultDetailsByAddress";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "string"; name: "vaultType"; type: "string" },
                        { internalType: "address"; name: "token0"; type: "address" },
                        { internalType: "address"; name: "token1"; type: "address" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "symbol"; type: "string" },
                        { internalType: "uint256"; name: "decimals"; type: "uint256" },
                        { internalType: "string"; name: "token0Name"; type: "string" },
                        { internalType: "string"; name: "token1Name"; type: "string" },
                        { internalType: "string"; name: "token0Symbol"; type: "string" },
                        { internalType: "string"; name: "token1Symbol"; type: "string" },
                        { internalType: "uint256"; name: "token0Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Decimals"; type: "uint256" },
                        {
                            internalType: "uint256";
                            name: "totalLPTokensIssued";
                            type: "uint256";
                        },
                        { internalType: "uint256"; name: "token0Balance"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Balance"; type: "uint256" },
                        { internalType: "address"; name: "vaultCreator"; type: "address" },
                    ];
                    internalType: "struct IMultiPositionManager.AlgebraVaultDetails";
                    name: "details";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "bytes"; name: "params"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVDGParams";
                    name: "cvdgParams";
                    type: "tuple";
                },
            ];
            name: "createVaultAndDepositGas";
            outputs: readonly [
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "address";
                            name: "strategyCreator";
                            type: "address";
                        },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                        { internalType: "bytes"; name: "params"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVSParams";
                    name: "cvsParams";
                    type: "tuple";
                },
            ];
            name: "createVaultAndStrategy";
            outputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "address";
                            name: "strategyCreator";
                            type: "address";
                        },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                        { internalType: "bytes"; name: "jobInitParams"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "bytes[]"; name: "userProvidedData"; type: "bytes[]" },
                        {
                            internalType: "address[]";
                            name: "targetAddresses";
                            type: "address[]";
                        },
                        { internalType: "string"; name: "jobName"; type: "string" },
                        { internalType: "string"; name: "ipfsForJobDetails"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVSRJParams";
                    name: "cvsrjParams";
                    type: "tuple";
                },
            ];
            name: "createVaultStrategyAndRegisterJob";
            outputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vaultAddress"; type: "address" },
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vaultAddress"; type: "address" },
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "uint256"; name: "poolId"; type: "uint256" },
            ];
            name: "depositAndStake";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "_strategyRegistry";
                    type: "address";
                },
                { internalType: "address"; name: "_vaultRegistry"; type: "address" },
                { internalType: "address"; name: "_gasVault"; type: "address" },
                { internalType: "address"; name: "_stakingRewards"; type: "address" },
                { internalType: "string"; name: "_nodeConfig"; type: "string" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "nodeConfig";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_nodeConfig"; type: "string" },
            ];
            name: "setNodeConfig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "creator"; type: "address" },
            ];
            name: "strategiesByCreator";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "id"; type: "uint256" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "address"; name: "owner"; type: "address" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                    ];
                    internalType: "struct IStrategyRegistry.RegisteredStrategy[]";
                    name: "";
                    type: "tuple[]";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "vaultBalancesByAddressWithFees";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "amountToken0"; type: "uint256" },
                        { internalType: "uint256"; name: "amountToken1"; type: "uint256" },
                    ];
                    internalType: "struct IMultiPositionManager.VaultBalance";
                    name: "balances";
                    type: "tuple";
                },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "vaultDetailsByAddress";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "string"; name: "vaultType"; type: "string" },
                        { internalType: "address"; name: "token0"; type: "address" },
                        { internalType: "address"; name: "token1"; type: "address" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "symbol"; type: "string" },
                        { internalType: "uint256"; name: "decimals"; type: "uint256" },
                        { internalType: "string"; name: "token0Name"; type: "string" },
                        { internalType: "string"; name: "token1Name"; type: "string" },
                        { internalType: "string"; name: "token0Symbol"; type: "string" },
                        { internalType: "string"; name: "token1Symbol"; type: "string" },
                        { internalType: "uint256"; name: "token0Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "feeTier"; type: "uint256" },
                        {
                            internalType: "uint256";
                            name: "totalLPTokensIssued";
                            type: "uint256";
                        },
                        { internalType: "uint256"; name: "token0Balance"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Balance"; type: "uint256" },
                        { internalType: "address"; name: "vaultCreator"; type: "address" },
                    ];
                    internalType: "struct IMultiPositionManager.VaultDetails";
                    name: "details";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "strategyId"; type: "uint256" },
            ];
            name: "vaultsByStrategy";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum IVaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct IVaultRegistry.VaultData[]";
                    name: "";
                    type: "tuple[]";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ];
    StrategyRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "approved";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "operator";
                    type: "address";
                },
                { indexed: false; internalType: "bool"; name: "approved"; type: "bool" },
            ];
            name: "ApprovalForAll";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
                { indexed: false; internalType: "string"; name: "name"; type: "string" },
            ];
            name: "StrategyCreated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "GOVERNANCE_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "MINTER_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "PAUSER_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "_tokenIdTracker";
            outputs: readonly [
                { internalType: "uint256"; name: "_value"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "baseURI";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "strategyCreator"; type: "address" },
                { internalType: "string"; name: "strategyName"; type: "string" },
                { internalType: "string"; name: "execBundle"; type: "string" },
                { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
            ];
            name: "createStrategy";
            outputs: readonly [
                {
                    internalType: "uint256";
                    name: "newStrategyTokenId";
                    type: "uint256";
                },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "getApproved";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "getRegisteredStrategy";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "id"; type: "uint256" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "address"; name: "owner"; type: "address" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                    ];
                    internalType: "struct IStrategyRegistry.RegisteredStrategy";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "hashedEmptyString";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "registry"; type: "string" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "operator"; type: "address" },
            ];
            name: "isApprovedForAll";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxMaxGasPerAction";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "ownerOf";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "operator"; type: "address" },
                { internalType: "bool"; name: "approved"; type: "bool" },
            ];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "uint128"; name: "_maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "_maxGasPerAction"; type: "uint128" },
            ];
            name: "setGasParameters";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "uint256";
                    name: "_maxMaxGasPerAction";
                    type: "uint256";
                },
            ];
            name: "setMaxMaxGasPerAction";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
            ];
            name: "strategies";
            outputs: readonly [
                { internalType: "uint256"; name: "id"; type: "uint256" },
                { internalType: "string"; name: "name"; type: "string" },
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "string"; name: "execBundle"; type: "string" },
                { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "tokenByIndex";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            name: "tokenIdToExecBundle";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "tokenURI";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ];
    VaultRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "selectorLength"; type: "uint256" },
                {
                    internalType: "uint256";
                    name: "isImplementedLength";
                    type: "uint256";
                },
            ];
            name: "IncorrectArrayLengths";
            type: "error";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "_ipfsHash";
                    type: "string";
                },
            ];
            name: "BeaconConfigUpdated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
            ];
            name: "BeaconDeregistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "_address";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "_ipfsHash";
                    type: "string";
                },
            ];
            name: "BeaconRegistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "";
                    type: "address";
                },
                { indexed: false; internalType: "string"; name: ""; type: "string" },
            ];
            name: "FeeSettingFailed";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "deployer";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "vault";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "beaconName";
                    type: "string";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "vaultManager";
                    type: "address";
                },
            ];
            name: "VaultCreated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "vault";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "enum VaultRegistry.VaultState";
                    name: "newState";
                    type: "uint8";
                },
            ];
            name: "VaultStateChanged";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
            ];
            name: "beaconAddresses";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            name: "beaconTypes";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes"; name: "_params"; type: "bytes" },
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "string"; name: "_beaconName"; type: "string" },
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "string"; name: "_payloadIpfs"; type: "string" },
            ];
            name: "createVault";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_address"; type: "address" },
                { internalType: "string"; name: "_name"; type: "string" },
                { internalType: "string"; name: "_ipfsConfigForBeacon"; type: "string" },
            ];
            name: "deployAndRegisterBeacon";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
            ];
            name: "deregisterBeacon";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "doISupportInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "feeManager";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vault"; type: "address" },
            ];
            name: "getStrategyCreatorForVault";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "uint256"; name: "_vaultId"; type: "uint256" },
            ];
            name: "getVaultByStrategyAndIndex";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum VaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct VaultRegistry.VaultData";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
            ];
            name: "getVaultCountByStrategyId";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_address"; type: "address" },
            ];
            name: "getVaultDetails";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum VaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct VaultRegistry.VaultData";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_orchestrator"; type: "address" },
                { internalType: "address"; name: "_strategyRegistry"; type: "address" },
                { internalType: "address"; name: "_whitelistRegistry"; type: "address" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
                { internalType: "bytes4"; name: ""; type: "bytes4" },
            ];
            name: "interfaceImplementations";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            name: "linkedVaults";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "orchestrator";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
                { internalType: "address"; name: "_address"; type: "address" },
                { internalType: "string"; name: "_ipfsConfigForBeacon"; type: "string" },
            ];
            name: "registerBeacon";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_feeManager"; type: "address" },
            ];
            name: "setFeeManager";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultHelper"; type: "address" },
            ];
            name: "setVaultHelper";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "strategyRegistry";
            outputs: readonly [
                {
                    internalType: "contract IStrategyRegistry";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalVaultCount";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
                {
                    internalType: "string";
                    name: "_newIPFSConfigForBeacon";
                    type: "string";
                },
            ];
            name: "updateBeaconConfig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "beaconName"; type: "string" },
                { internalType: "bytes4[]"; name: "selectors"; type: "bytes4[]" },
                { internalType: "bool[]"; name: "isImplemented"; type: "bool[]" },
            ];
            name: "updateInterfaceImplementations";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vault"; type: "address" },
                {
                    internalType: "enum VaultRegistry.VaultState";
                    name: "_newState";
                    type: "uint8";
                },
            ];
            name: "updateVaultState";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "vaultHelper";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "whitelistRegistry";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ];
    QuickSwapUniv3MultiPositionLiquidityManager: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "spender";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Deposit";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0Earned";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1Earned";
                    type: "uint256";
                },
            ];
            name: "FeesEarned";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint160";
                    name: "sqrtPriceX96";
                    type: "uint160";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount1";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalSupply";
                    type: "uint256";
                },
            ];
            name: "Snapshot";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Withdraw";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STEER_FRACTION_OF_FEE";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "TOTAL_FEE";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees0";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees1";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "spender"; type: "address" },
            ];
            name: "allowance";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "subtractedValue"; type: "uint256" },
            ];
            name: "decreaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Used"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Used"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int24"; name: "tickLower"; type: "int24" },
                { internalType: "int24"; name: "tickUpper"; type: "int24" },
                { internalType: "uint128"; name: "liquidity"; type: "uint128" },
            ];
            name: "emergencyBurn";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getPositions";
            outputs: readonly [
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "uint16[]"; name: ""; type: "uint16[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "getRoleMember";
            outputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleMemberCount";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getTotalAmounts";
            outputs: readonly [
                { internalType: "uint256"; name: "total0"; type: "uint256" },
                { internalType: "uint256"; name: "total1"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "addedValue"; type: "uint256" },
            ];
            name: "increaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "address"; name: ""; type: "address" },
                { internalType: "address"; name: "_steer"; type: "address" },
                { internalType: "bytes"; name: "_params"; type: "bytes" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxTickChange";
            outputs: readonly [{ internalType: "int24"; name: ""; type: "int24" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "poke";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pool";
            outputs: readonly [
                {
                    internalType: "contract IUniswapV3Pool";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "steerCollectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "strategistCollectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "totalWeight"; type: "uint256" },
                {
                    components: readonly [
                        { internalType: "int24[]"; name: "lowerTick"; type: "int24[]" },
                        { internalType: "int24[]"; name: "upperTick"; type: "int24[]" },
                        { internalType: "uint16[]"; name: "relativeWeight"; type: "uint16[]" },
                    ];
                    internalType: "struct QuickSwapUniv3MultiPositionLiquidityManager.LiquidityPositions";
                    name: "newPositions";
                    type: "tuple";
                },
                { internalType: "bytes"; name: "timeSensitiveData"; type: "bytes" },
            ];
            name: "tend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token0";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token1";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transfer";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "sender"; type: "address" },
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "twapInterval";
            outputs: readonly [{ internalType: "uint32"; name: ""; type: "uint32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "uniswapV3MintCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int256"; name: "amount0Wanted"; type: "int256" },
                { internalType: "int256"; name: "amount1Wanted"; type: "int256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "uniswapV3SwapCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
    ];
} = ...

Type declaration

  • ReadonlyBundleRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "hash";
                    type: "bytes32";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "bundle";
                    type: "string";
                },
                { indexed: false; internalType: "string"; name: "host"; type: "string" },
                {
                    indexed: false;
                    internalType: "string";
                    name: "source";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "output";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "infoHash";
                    type: "string";
                },
                { indexed: false; internalType: "bool"; name: "active"; type: "bool" },
                {
                    indexed: false;
                    internalType: "address";
                    name: "creator";
                    type: "address";
                },
            ];
            name: "BundleRegistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "hash";
                    type: "bytes32";
                },
                { indexed: false; internalType: "bool"; name: "toggle"; type: "bool" },
            ];
            name: "BundleStateChange";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: ""; type: "bytes32" },
            ];
            name: "bundles";
            outputs: readonly [
                { internalType: "string"; name: "bundle"; type: "string" },
                { internalType: "string"; name: "source"; type: "string" },
                { internalType: "string"; name: "host"; type: "string" },
                { internalType: "string"; name: "output"; type: "string" },
                { internalType: "string"; name: "info"; type: "string" },
                { internalType: "bool"; name: "active"; type: "bool" },
                { internalType: "address"; name: "author"; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_bundle"; type: "string" },
                { internalType: "string"; name: "_source"; type: "string" },
                { internalType: "string"; name: "_host"; type: "string" },
                { internalType: "string"; name: "_output"; type: "string" },
                { internalType: "string"; name: "_infoHash"; type: "string" },
                { internalType: "bool"; name: "_active"; type: "bool" },
            ];
            name: "register";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "_adapter"; type: "bytes32" },
                { internalType: "bool"; name: "_remainActive"; type: "bool" },
            ];
            name: "setAdapterState";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ]
  • ReadonlyCamelotMultiPositionLiquidityManager: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "spender";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Deposit";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0Earned";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1Earned";
                    type: "uint256";
                },
            ];
            name: "FeesEarned";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint160";
                    name: "sqrtPriceX96";
                    type: "uint160";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount1";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalSupply";
                    type: "uint256";
                },
            ];
            name: "Snapshot";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Withdraw";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STEER_FRACTION_OF_FEE";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STRATEGIST_FRACTION_OF_FEE";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "TOTAL_FEE";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            name: "accruedFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            name: "accruedFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "algebraMintCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int256"; name: "amount0Wanted"; type: "int256" },
                { internalType: "int256"; name: "amount1Wanted"; type: "int256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "algebraSwapCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "spender"; type: "address" },
            ];
            name: "allowance";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "feeIdentifier"; type: "string" },
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            name: "collectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "subtractedValue"; type: "uint256" },
            ];
            name: "decreaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Used"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Used"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int24"; name: "tickLower"; type: "int24" },
                { internalType: "int24"; name: "tickUpper"; type: "int24" },
                { internalType: "uint128"; name: "liquidity"; type: "uint128" },
            ];
            name: "emergencyBurn";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "feeDetails";
            outputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
                { internalType: "address[]"; name: ""; type: "address[]" },
                { internalType: "string[]"; name: ""; type: "string[]" },
                { internalType: "uint256[]"; name: ""; type: "uint256[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getPositions";
            outputs: readonly [
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "uint16[]"; name: ""; type: "uint16[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "getRoleMember";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleMemberCount";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getTotalAmounts";
            outputs: readonly [
                { internalType: "uint256"; name: "total0"; type: "uint256" },
                { internalType: "uint256"; name: "total1"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "addedValue"; type: "uint256" },
            ];
            name: "increaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "address"; name: ""; type: "address" },
                { internalType: "address"; name: "_steer"; type: "address" },
                { internalType: "bytes"; name: "_params"; type: "bytes" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxTickChange";
            outputs: readonly [{ internalType: "int24"; name: ""; type: "int24" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "poke";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pool";
            outputs: readonly [
                { internalType: "contract IAlgebraPool"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "totalWeight"; type: "uint256" },
                {
                    components: readonly [
                        { internalType: "int24[]"; name: "lowerTick"; type: "int24[]" },
                        { internalType: "int24[]"; name: "upperTick"; type: "int24[]" },
                        { internalType: "uint16[]"; name: "relativeWeight"; type: "uint16[]" },
                    ];
                    internalType: "struct CamelotMultiPositionLiquidityManager.LiquidityPositions";
                    name: "newPositions";
                    type: "tuple";
                },
                { internalType: "bytes"; name: "timeSensitiveData"; type: "bytes" },
            ];
            name: "tend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token0";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token1";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transfer";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "sender"; type: "address" },
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "twapInterval";
            outputs: readonly [{ internalType: "uint32"; name: ""; type: "uint32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
    ]
  • ReadonlyGasVault: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "origin";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "target";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
            ];
            name: "Deposited";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "bytes32";
                    name: "jobHash";
                    type: "bytes32";
                },
            ];
            name: "EtherUsed";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "targetAddress";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount";
                    type: "uint256";
                },
            ];
            name: "Withdrawn";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            name: "ethBalances";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_targetAddress"; type: "address" },
            ];
            name: "gasAvailableForTransaction";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_orchestrator"; type: "address" },
                { internalType: "address"; name: "_stratRegistry"; type: "address" },
                { internalType: "address"; name: "_vaultRegistry"; type: "address" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "orchestrator";
            outputs: readonly [
                { internalType: "contract IOrchestrator"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
                { internalType: "uint256"; name: "originalGas"; type: "uint256" },
                { internalType: "bytes32"; name: "jobHash"; type: "bytes32" },
            ];
            name: "reimburseGas";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "strategyRegistry";
            outputs: readonly [
                {
                    internalType: "contract IStrategyRegistry";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "targetAddress"; type: "address" },
                { internalType: "uint256"; name: "highGasEstimate"; type: "uint256" },
            ];
            name: "transactionsRemaining";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "vaultRegistry";
            outputs: readonly [
                { internalType: "contract IVaultRegistry"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount"; type: "uint256" },
                { internalType: "address payable"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ]
  • ReadonlySteerPeriphery: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "algebraVaultDetailsByAddress";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "string"; name: "vaultType"; type: "string" },
                        { internalType: "address"; name: "token0"; type: "address" },
                        { internalType: "address"; name: "token1"; type: "address" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "symbol"; type: "string" },
                        { internalType: "uint256"; name: "decimals"; type: "uint256" },
                        { internalType: "string"; name: "token0Name"; type: "string" },
                        { internalType: "string"; name: "token1Name"; type: "string" },
                        { internalType: "string"; name: "token0Symbol"; type: "string" },
                        { internalType: "string"; name: "token1Symbol"; type: "string" },
                        { internalType: "uint256"; name: "token0Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Decimals"; type: "uint256" },
                        {
                            internalType: "uint256";
                            name: "totalLPTokensIssued";
                            type: "uint256";
                        },
                        { internalType: "uint256"; name: "token0Balance"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Balance"; type: "uint256" },
                        { internalType: "address"; name: "vaultCreator"; type: "address" },
                    ];
                    internalType: "struct IMultiPositionManager.AlgebraVaultDetails";
                    name: "details";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "bytes"; name: "params"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVDGParams";
                    name: "cvdgParams";
                    type: "tuple";
                },
            ];
            name: "createVaultAndDepositGas";
            outputs: readonly [
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "address";
                            name: "strategyCreator";
                            type: "address";
                        },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                        { internalType: "bytes"; name: "params"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVSParams";
                    name: "cvsParams";
                    type: "tuple";
                },
            ];
            name: "createVaultAndStrategy";
            outputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "address";
                            name: "strategyCreator";
                            type: "address";
                        },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                        { internalType: "bytes"; name: "jobInitParams"; type: "bytes" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                        { internalType: "address"; name: "vaultManager"; type: "address" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "bytes[]"; name: "userProvidedData"; type: "bytes[]" },
                        {
                            internalType: "address[]";
                            name: "targetAddresses";
                            type: "address[]";
                        },
                        { internalType: "string"; name: "jobName"; type: "string" },
                        { internalType: "string"; name: "ipfsForJobDetails"; type: "string" },
                    ];
                    internalType: "struct ISteerPeriphery.CVSRJParams";
                    name: "cvsrjParams";
                    type: "tuple";
                },
            ];
            name: "createVaultStrategyAndRegisterJob";
            outputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "address"; name: "newVault"; type: "address" },
            ];
            stateMutability: "payable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vaultAddress"; type: "address" },
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vaultAddress"; type: "address" },
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "uint256"; name: "poolId"; type: "uint256" },
            ];
            name: "depositAndStake";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "_strategyRegistry";
                    type: "address";
                },
                { internalType: "address"; name: "_vaultRegistry"; type: "address" },
                { internalType: "address"; name: "_gasVault"; type: "address" },
                { internalType: "address"; name: "_stakingRewards"; type: "address" },
                { internalType: "string"; name: "_nodeConfig"; type: "string" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "nodeConfig";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_nodeConfig"; type: "string" },
            ];
            name: "setNodeConfig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "creator"; type: "address" },
            ];
            name: "strategiesByCreator";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "id"; type: "uint256" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "address"; name: "owner"; type: "address" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                    ];
                    internalType: "struct IStrategyRegistry.RegisteredStrategy[]";
                    name: "";
                    type: "tuple[]";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "vaultBalancesByAddressWithFees";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "amountToken0"; type: "uint256" },
                        { internalType: "uint256"; name: "amountToken1"; type: "uint256" },
                    ];
                    internalType: "struct IMultiPositionManager.VaultBalance";
                    name: "balances";
                    type: "tuple";
                },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "vault"; type: "address" },
            ];
            name: "vaultDetailsByAddress";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "string"; name: "vaultType"; type: "string" },
                        { internalType: "address"; name: "token0"; type: "address" },
                        { internalType: "address"; name: "token1"; type: "address" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "string"; name: "symbol"; type: "string" },
                        { internalType: "uint256"; name: "decimals"; type: "uint256" },
                        { internalType: "string"; name: "token0Name"; type: "string" },
                        { internalType: "string"; name: "token1Name"; type: "string" },
                        { internalType: "string"; name: "token0Symbol"; type: "string" },
                        { internalType: "string"; name: "token1Symbol"; type: "string" },
                        { internalType: "uint256"; name: "token0Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Decimals"; type: "uint256" },
                        { internalType: "uint256"; name: "feeTier"; type: "uint256" },
                        {
                            internalType: "uint256";
                            name: "totalLPTokensIssued";
                            type: "uint256";
                        },
                        { internalType: "uint256"; name: "token0Balance"; type: "uint256" },
                        { internalType: "uint256"; name: "token1Balance"; type: "uint256" },
                        { internalType: "address"; name: "vaultCreator"; type: "address" },
                    ];
                    internalType: "struct IMultiPositionManager.VaultDetails";
                    name: "details";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "strategyId"; type: "uint256" },
            ];
            name: "vaultsByStrategy";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum IVaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct IVaultRegistry.VaultData[]";
                    name: "";
                    type: "tuple[]";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ]
  • ReadonlyStrategyRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "approved";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "operator";
                    type: "address";
                },
                { indexed: false; internalType: "bool"; name: "approved"; type: "bool" },
            ];
            name: "ApprovalForAll";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
                { indexed: false; internalType: "string"; name: "name"; type: "string" },
            ];
            name: "StrategyCreated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "GOVERNANCE_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "MINTER_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "PAUSER_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "_tokenIdTracker";
            outputs: readonly [
                { internalType: "uint256"; name: "_value"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "baseURI";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "strategyCreator"; type: "address" },
                { internalType: "string"; name: "strategyName"; type: "string" },
                { internalType: "string"; name: "execBundle"; type: "string" },
                { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
            ];
            name: "createStrategy";
            outputs: readonly [
                {
                    internalType: "uint256";
                    name: "newStrategyTokenId";
                    type: "uint256";
                },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "getApproved";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "getRegisteredStrategy";
            outputs: readonly [
                {
                    components: readonly [
                        { internalType: "uint256"; name: "id"; type: "uint256" },
                        { internalType: "string"; name: "name"; type: "string" },
                        { internalType: "address"; name: "owner"; type: "address" },
                        { internalType: "string"; name: "execBundle"; type: "string" },
                        { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                        { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
                    ];
                    internalType: "struct IStrategyRegistry.RegisteredStrategy";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "hashedEmptyString";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "registry"; type: "string" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "operator"; type: "address" },
            ];
            name: "isApprovedForAll";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxMaxGasPerAction";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "ownerOf";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "operator"; type: "address" },
                { internalType: "bool"; name: "approved"; type: "bool" },
            ];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "uint128"; name: "_maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "_maxGasPerAction"; type: "uint128" },
            ];
            name: "setGasParameters";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "uint256";
                    name: "_maxMaxGasPerAction";
                    type: "uint256";
                },
            ];
            name: "setMaxMaxGasPerAction";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            name: "strategies";
            outputs: readonly [
                { internalType: "uint256"; name: "id"; type: "uint256" },
                { internalType: "string"; name: "name"; type: "string" },
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "string"; name: "execBundle"; type: "string" },
                { internalType: "uint128"; name: "maxGasCost"; type: "uint128" },
                { internalType: "uint128"; name: "maxGasPerAction"; type: "uint128" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "tokenByIndex";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            name: "tokenIdToExecBundle";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "tokenURI";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "from"; type: "address" },
                { internalType: "address"; name: "to"; type: "address" },
                { internalType: "uint256"; name: "tokenId"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ]
  • ReadonlyVaultRegistry: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "previousAdmin";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "newAdmin";
                    type: "address";
                },
            ];
            name: "AdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "implementation";
                    type: "address";
                },
            ];
            name: "Upgraded";
            type: "event";
        },
        { stateMutability: "payable"; type: "fallback" },
        {
            inputs: readonly [];
            name: "admin";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newAdmin"; type: "address" },
            ];
            name: "changeAdmin";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "implementation";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
            ];
            name: "upgradeTo";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                {
                    internalType: "address";
                    name: "newImplementation";
                    type: "address";
                },
                { internalType: "bytes"; name: "data"; type: "bytes" },
            ];
            name: "upgradeToAndCall";
            outputs: readonly [];
            stateMutability: "payable";
            type: "function";
        },
        { stateMutability: "payable"; type: "receive" },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "selectorLength"; type: "uint256" },
                { internalType: "uint256"; name: "isImplementedLength"; type: "uint256" },
            ];
            name: "IncorrectArrayLengths";
            type: "error";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "_ipfsHash";
                    type: "string";
                },
            ];
            name: "BeaconConfigUpdated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
            ];
            name: "BeaconDeregistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "string";
                    name: "_name";
                    type: "string";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "_address";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "_ipfsHash";
                    type: "string";
                },
            ];
            name: "BeaconRegistered";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "beacon";
                    type: "address";
                },
            ];
            name: "BeaconUpgraded";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                { indexed: false; internalType: "address"; name: ""; type: "address" },
                { indexed: false; internalType: "string"; name: ""; type: "string" },
            ];
            name: "FeeSettingFailed";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "previousOwner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "newOwner";
                    type: "address";
                },
            ];
            name: "OwnershipTransferred";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "deployer";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "vault";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "string";
                    name: "beaconName";
                    type: "string";
                },
                {
                    indexed: true;
                    internalType: "uint256";
                    name: "tokenId";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "address";
                    name: "vaultManager";
                    type: "address";
                },
            ];
            name: "VaultCreated";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "vault";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "enum VaultRegistry.VaultState";
                    name: "newState";
                    type: "uint8";
                },
            ];
            name: "VaultStateChanged";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            name: "beaconAddresses";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: ""; type: "address" },
            ];
            name: "beaconTypes";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes"; name: "_params"; type: "bytes" },
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "string"; name: "_beaconName"; type: "string" },
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "string"; name: "_payloadIpfs"; type: "string" },
            ];
            name: "createVault";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_address"; type: "address" },
                { internalType: "string"; name: "_name"; type: "string" },
                { internalType: "string"; name: "_ipfsConfigForBeacon"; type: "string" },
            ];
            name: "deployAndRegisterBeacon";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
            ];
            name: "deregisterBeacon";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "doISupportInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "feeManager";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vault"; type: "address" },
            ];
            name: "getStrategyCreatorForVault";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
                { internalType: "uint256"; name: "_vaultId"; type: "uint256" },
            ];
            name: "getVaultByStrategyAndIndex";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum VaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct VaultRegistry.VaultData";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "_tokenId"; type: "uint256" },
            ];
            name: "getVaultCountByStrategyId";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_address"; type: "address" },
            ];
            name: "getVaultDetails";
            outputs: readonly [
                {
                    components: readonly [
                        {
                            internalType: "enum VaultRegistry.VaultState";
                            name: "state";
                            type: "uint8";
                        },
                        { internalType: "uint256"; name: "tokenId"; type: "uint256" },
                        { internalType: "uint256"; name: "vaultID"; type: "uint256" },
                        { internalType: "string"; name: "payloadIpfs"; type: "string" },
                        { internalType: "address"; name: "vaultAddress"; type: "address" },
                        { internalType: "string"; name: "beaconName"; type: "string" },
                    ];
                    internalType: "struct VaultRegistry.VaultData";
                    name: "";
                    type: "tuple";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_orchestrator"; type: "address" },
                { internalType: "address"; name: "_strategyRegistry"; type: "address" },
                { internalType: "address"; name: "_whitelistRegistry"; type: "address" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: ""; type: "string" },
                { internalType: "bytes4"; name: ""; type: "bytes4" },
            ];
            name: "interfaceImplementations";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: ""; type: "uint256" },
                { internalType: "uint256"; name: ""; type: "uint256" },
            ];
            name: "linkedVaults";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "orchestrator";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "owner";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
                { internalType: "address"; name: "_address"; type: "address" },
                { internalType: "string"; name: "_ipfsConfigForBeacon"; type: "string" },
            ];
            name: "registerBeacon";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "renounceOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_feeManager"; type: "address" },
            ];
            name: "setFeeManager";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultHelper"; type: "address" },
            ];
            name: "setVaultHelper";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "strategyRegistry";
            outputs: readonly [
                {
                    internalType: "contract IStrategyRegistry";
                    name: "";
                    type: "address";
                },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalVaultCount";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "newOwner"; type: "address" },
            ];
            name: "transferOwnership";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "_name"; type: "string" },
                {
                    internalType: "string";
                    name: "_newIPFSConfigForBeacon";
                    type: "string";
                },
            ];
            name: "updateBeaconConfig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "string"; name: "beaconName"; type: "string" },
                { internalType: "bytes4[]"; name: "selectors"; type: "bytes4[]" },
                { internalType: "bool[]"; name: "isImplemented"; type: "bool[]" },
            ];
            name: "updateInterfaceImplementations";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vault"; type: "address" },
                {
                    internalType: "enum VaultRegistry.VaultState";
                    name: "_newState";
                    type: "uint8";
                },
            ];
            name: "updateVaultState";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "vaultHelper";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "whitelistRegistry";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "initialLogic"; type: "address" },
                { internalType: "address"; name: "initialAdmin"; type: "address" },
                { internalType: "bytes"; name: "_data"; type: "bytes" },
            ];
            stateMutability: "payable";
            type: "constructor";
        },
    ]
  • ReadonlyQuickSwapUniv3MultiPositionLiquidityManager: readonly [
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "owner";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "spender";
                    type: "address";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Approval";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Deposit";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0Earned";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1Earned";
                    type: "uint256";
                },
            ];
            name: "FeesEarned";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Paused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "previousAdminRole";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "newAdminRole";
                    type: "bytes32";
                },
            ];
            name: "RoleAdminChanged";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleGranted";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "bytes32";
                    name: "role";
                    type: "bytes32";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
            ];
            name: "RoleRevoked";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "uint160";
                    name: "sqrtPriceX96";
                    type: "uint160";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalAmount1";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "totalSupply";
                    type: "uint256";
                },
            ];
            name: "Snapshot";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "from";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "value";
                    type: "uint256";
                },
            ];
            name: "Transfer";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: false;
                    internalType: "address";
                    name: "account";
                    type: "address";
                },
            ];
            name: "Unpaused";
            type: "event";
        },
        {
            anonymous: false;
            inputs: readonly [
                {
                    indexed: true;
                    internalType: "address";
                    name: "sender";
                    type: "address";
                },
                { indexed: true; internalType: "address"; name: "to"; type: "address" },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "shares";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount0";
                    type: "uint256";
                },
                {
                    indexed: false;
                    internalType: "uint256";
                    name: "amount1";
                    type: "uint256";
                },
            ];
            name: "Withdraw";
            type: "event";
        },
        {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "STEER_FRACTION_OF_FEE";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "TOTAL_FEE";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedSteerFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees0";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "accruedStrategistFees1";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "owner"; type: "address" },
                { internalType: "address"; name: "spender"; type: "address" },
            ];
            name: "allowance";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "approve";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "balanceOf";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "subtractedValue"; type: "uint256" },
            ];
            name: "decreaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Desired"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "deposit";
            outputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Used"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Used"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int24"; name: "tickLower"; type: "int24" },
                { internalType: "int24"; name: "tickUpper"; type: "int24" },
                { internalType: "uint128"; name: "liquidity"; type: "uint128" },
            ];
            name: "emergencyBurn";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getPositions";
            outputs: readonly [
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "int24[]"; name: ""; type: "int24[]" },
                { internalType: "uint16[]"; name: ""; type: "uint16[]" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleAdmin";
            outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "uint256"; name: "index"; type: "uint256" },
            ];
            name: "getRoleMember";
            outputs: readonly [{ internalType: "address"; name: ""; type: "address" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
            ];
            name: "getRoleMemberCount";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "getTotalAmounts";
            outputs: readonly [
                { internalType: "uint256"; name: "total0"; type: "uint256" },
                { internalType: "uint256"; name: "total1"; type: "uint256" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "hasRole";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "spender"; type: "address" },
                { internalType: "uint256"; name: "addedValue"; type: "uint256" },
            ];
            name: "increaseAllowance";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "_vaultManager"; type: "address" },
                { internalType: "address"; name: ""; type: "address" },
                { internalType: "address"; name: "_steer"; type: "address" },
                { internalType: "bytes"; name: "_params"; type: "bytes" },
            ];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "maxTickChange";
            outputs: readonly [{ internalType: "int24"; name: ""; type: "int24" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "paused";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "poke";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "pool";
            outputs: readonly [
                { internalType: "contract IUniswapV3Pool"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes32"; name: "role"; type: "bytes32" },
                { internalType: "address"; name: "account"; type: "address" },
            ];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "steerCollectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "strategistCollectFees";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
            ];
            name: "supportsInterface";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "totalWeight"; type: "uint256" },
                {
                    components: readonly [
                        { internalType: "int24[]"; name: "lowerTick"; type: "int24[]" },
                        { internalType: "int24[]"; name: "upperTick"; type: "int24[]" },
                        { internalType: "uint16[]"; name: "relativeWeight"; type: "uint16[]" },
                    ];
                    internalType: "struct QuickSwapUniv3MultiPositionLiquidityManager.LiquidityPositions";
                    name: "newPositions";
                    type: "tuple";
                },
                { internalType: "bytes"; name: "timeSensitiveData"; type: "bytes" },
            ];
            name: "tend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token0";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "token1";
            outputs: readonly [
                { internalType: "contract IERC20"; name: ""; type: "address" },
            ];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transfer";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "address"; name: "sender"; type: "address" },
                { internalType: "address"; name: "recipient"; type: "address" },
                { internalType: "uint256"; name: "amount"; type: "uint256" },
            ];
            name: "transferFrom";
            outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "twapInterval";
            outputs: readonly [{ internalType: "uint32"; name: ""; type: "uint32" }];
            stateMutability: "view";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "uniswapV3MintCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "int256"; name: "amount0Wanted"; type: "int256" },
                { internalType: "int256"; name: "amount1Wanted"; type: "int256" },
                { internalType: "bytes"; name: ""; type: "bytes" },
            ];
            name: "uniswapV3SwapCallback";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [];
            name: "unpause";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        },
        {
            inputs: readonly [
                { internalType: "uint256"; name: "shares"; type: "uint256" },
                { internalType: "uint256"; name: "amount0Min"; type: "uint256" },
                { internalType: "uint256"; name: "amount1Min"; type: "uint256" },
                { internalType: "address"; name: "to"; type: "address" },
            ];
            name: "withdraw";
            outputs: readonly [
                { internalType: "uint256"; name: "amount0"; type: "uint256" },
                { internalType: "uint256"; name: "amount1"; type: "uint256" },
            ];
            stateMutability: "nonpayable";
            type: "function";
        },
    ]