export declare const BAMM_ABI: readonly [{
    readonly inputs: readonly [{
        readonly internalType: "bytes";
        readonly name: "_encodedBammConstructorArgs";
        readonly type: "bytes";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "constructor";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "target";
        readonly type: "address";
    }];
    readonly name: "AddressEmptyCode";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "account";
        readonly type: "address";
    }];
    readonly name: "AddressInsufficientBalance";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "CannotWithdrawToSelf";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "FailedInnerCall";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "IncorrectAmountOutMinimum";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "IncorrectSwapTokens";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "InsufficientAmount";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "InvalidRent";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "InvalidUtilityRate";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "InvalidVault";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "NoBAMMTokensMinted";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "NotFactory";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "NotSolvent";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "OraclePriceDeviated";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "ReentrancyGuardReentrantCall";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "int256";
        readonly name: "value";
        readonly type: "int256";
    }];
    readonly name: "SafeCastOverflowedIntToUint";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "value";
        readonly type: "uint256";
    }];
    readonly name: "SafeCastOverflowedUintToInt";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "token";
        readonly type: "address";
    }];
    readonly name: "SafeERC20FailedOperation";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "Solvent";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "ZeroLiquidityMinted";
    readonly type: "error";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "lender";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "recipient";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "lpIn";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "bammOut";
        readonly type: "uint256";
    }];
    readonly name: "BAMMMinted";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "lender";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "recipient";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "bammIn";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "lpOut";
        readonly type: "uint256";
    }];
    readonly name: "BAMMRedeemed";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "sqrtRentedReal";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "sqrtBalance";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rentedMultiplier";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "interestRate";
        readonly type: "uint256";
    }];
    readonly name: "BAMMState";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token0";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token1";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "rent";
        readonly type: "int256";
    }];
    readonly name: "ExecuteAction";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "liquidator";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "token0Fee";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "token1Fee";
        readonly type: "uint256";
    }];
    readonly name: "MicroLiquidate";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "oldMaxOracleDiff";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "newMaxOracleDiff";
        readonly type: "uint256";
    }];
    readonly name: "NewMaxOracleDiff";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "previousVariableInterestRate";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newVariableInterestRate";
        readonly type: "address";
    }];
    readonly name: "NewVariableInterestRate";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "rent";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "token0ToAddToLp";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "token1ToAddToLp";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "bool";
        readonly name: "closePosition";
        readonly type: "bool";
    }];
    readonly name: "RentRepaid";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "rent";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token0Amount";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token1Amount";
        readonly type: "int256";
    }];
    readonly name: "Renting";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token0";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token1";
        readonly type: "int256";
    }];
    readonly name: "VaultSwap";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token0";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "token1";
        readonly type: "int256";
    }, {
        readonly indexed: false;
        readonly internalType: "int256";
        readonly name: "rent";
        readonly type: "int256";
    }];
    readonly name: "VaultUpdated";
    readonly type: "event";
}, {
    readonly inputs: readonly [];
    readonly name: "FEE_SHARE";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "LIQUIDATION_FEE";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "MAX_UTILITY_RATE";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "MINIMUM_LIQUIDITY";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "PRECISION";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "SOLVENCY_THRESHOLD_FULL_LIQUIDATION";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "SOLVENCY_THRESHOLD_LIQUIDATION";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "addInterest";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "reserve0";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "reserve1";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "totalSupply";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "_rentedMultiplier";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "int256";
            readonly name: "token0Amount";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "token1Amount";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "rent";
            readonly type: "int256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "token0AmountMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "token1AmountMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "closePosition";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly internalType: "struct IBAMM.Action";
        readonly name: "action";
        readonly type: "tuple";
    }];
    readonly name: "executeActions";
    readonly outputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "int256";
            readonly name: "token0";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "token1";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "rented";
            readonly type: "int256";
        }];
        readonly internalType: "struct IBAMM.Vault";
        readonly name: "vault";
        readonly type: "tuple";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "int256";
            readonly name: "token0Amount";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "token1Amount";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "rent";
            readonly type: "int256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "token0AmountMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "token1AmountMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "closePosition";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly internalType: "struct IBAMM.Action";
        readonly name: "action";
        readonly type: "tuple";
    }, {
        readonly components: readonly [{
            readonly internalType: "address";
            readonly name: "tokenIn";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "tokenOut";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMinimum";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes";
            readonly name: "route";
            readonly type: "bytes";
        }];
        readonly internalType: "struct IFraxswapRouterMultihop.FraxswapParams";
        readonly name: "swapParams";
        readonly type: "tuple";
    }];
    readonly name: "executeActionsAndSwap";
    readonly outputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "int256";
            readonly name: "token0";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "token1";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "rented";
            readonly type: "int256";
        }];
        readonly internalType: "struct IBAMM.Vault";
        readonly name: "vault";
        readonly type: "tuple";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "factory";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "fraxswapOracle";
    readonly outputs: readonly [{
        readonly internalType: "contract IFraxswapOracle";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "fullUtilizationRate";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "tokenIn";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "tokenOut";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "reserveIn";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "reserveOut";
        readonly type: "uint256";
    }];
    readonly name: "getMaxSell";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "maxSell";
        readonly type: "uint256";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "getUserVault";
    readonly outputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "int256";
            readonly name: "token0";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "token1";
            readonly type: "int256";
        }, {
            readonly internalType: "int256";
            readonly name: "rented";
            readonly type: "int256";
        }];
        readonly internalType: "struct IBAMM.Vault";
        readonly name: "vault";
        readonly type: "tuple";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "iBammErc20";
    readonly outputs: readonly [{
        readonly internalType: "contract BAMMERC20";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly name: "isUser";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "maxOracleDiff";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "microLiquidate";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "token0Fee";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "token1Fee";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "to";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "lpIn";
        readonly type: "uint256";
    }];
    readonly name: "mint";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "bammOut";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "pair";
    readonly outputs: readonly [{
        readonly internalType: "contract IFraxswapPair";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "pairFactory";
    readonly outputs: readonly [{
        readonly internalType: "contract IFraxswapFactory";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "_utilization";
        readonly type: "uint256";
    }];
    readonly name: "previewInterestRate";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "newRatePerSec";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "to";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "bammIn";
        readonly type: "uint256";
    }];
    readonly name: "redeem";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "lpOut";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "rentedMultiplier";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "routerMultihop";
    readonly outputs: readonly [{
        readonly internalType: "contract IFraxswapRouterMultihop";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "newMaxDiff";
        readonly type: "uint256";
    }];
    readonly name: "setMaxOracleDeviation";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newVariableInterestRate";
        readonly type: "address";
    }];
    readonly name: "setVariableInterestRate";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "sqrtRented";
    readonly outputs: readonly [{
        readonly internalType: "int256";
        readonly name: "";
        readonly type: "int256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "timeSinceLastInterestPayment";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "token0";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Metadata";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "token1";
    readonly outputs: readonly [{
        readonly internalType: "contract IERC20Metadata";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly name: "userVaults";
    readonly outputs: readonly [{
        readonly internalType: "int256";
        readonly name: "token0";
        readonly type: "int256";
    }, {
        readonly internalType: "int256";
        readonly name: "token1";
        readonly type: "int256";
    }, {
        readonly internalType: "int256";
        readonly name: "rented";
        readonly type: "int256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly name: "users";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "usersArray";
    readonly outputs: readonly [{
        readonly internalType: "address[]";
        readonly name: "";
        readonly type: "address[]";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "usersLength";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "variableInterestRate";
    readonly outputs: readonly [{
        readonly internalType: "contract IVariableInterestRate";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "version";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "_major";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "_minor";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "_patch";
        readonly type: "uint256";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}];
