import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../../../common";
import type { CompoundLens, CompoundLensInterface } from "../../../contracts/Comptroller/CompoundLens";
type CompoundLensConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class CompoundLens__factory extends ContractFactory {
    constructor(...args: CompoundLensConstructorParams);
    getDeployTransaction(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<CompoundLens & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): CompoundLens__factory;
    static readonly bytecode = " ";
    static readonly abi: readonly [{
        readonly inputs: readonly [];
        readonly name: "AddReservesMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "AddReservesOverflow";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "BorrowAndDepositBackFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "BorrowCapReached";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "BorrowCashNotAvailable";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "BorrowMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "BorrowPaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "usdThreshold";
            readonly type: "uint256";
        }];
        readonly name: "BorrowValueMustBeLargerThanThreshold";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "CantEnterPausedMarket";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "CantExitMarketWithNonZeroBorrowBalance";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "CantSweepUnderlying";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ComptrollerMismatch";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "EitherAssetOrDebtMustBeZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }, {
            readonly internalType: "uint256";
            readonly name: "cDepositVal";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "suDepositVal";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "cBorrowVal";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "suBorrowVal";
            readonly type: "uint256";
        }];
        readonly name: "EitherAssetOrDebtMustBeZeroInGroup";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ExpiredSignature";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InsufficientCollateral";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InsufficientShortfall";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InterMintNotAllowed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidAddress";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidAmount";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidBlockNumber";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidCToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidCloseFactor";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidComptroller";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidDiscountRate";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidExchangeRate";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidGroupId";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidInput";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidInterestRateModel";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidMinSuBorrowValue";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidRedeem";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidReduceAmount";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidReserveFactor";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidSignatureForRedeemFaceValue";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidSignatureLength";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidSuToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidTimestamp";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateBorrow_LiquidatorIsBorrower";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateBorrow_RepayAmountIsMax";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateBorrow_RepayAmountIsZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateBorrow_SeizeTooMuch";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateCollateralMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "LiquidateMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketAlreadyListed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketAlreadyUnlisted";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketCanOnlyInitializeOnce";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketNotEmpty";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketNotListed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MarketPaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MinDelayNotReached";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MintMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MintPaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MintTokensCantBeZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NoRedemptionProvider";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotCToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEnoughForSeize";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEnoughRedeemAmount";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEnoughRedeemTokens";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEnoughUnderlyingAfterRedeem";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEnoughUnderlyingForMint";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotLiquidatableYet";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotSuToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyAdmin";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyAdminOrPauser";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyCToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyListedCToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyPausedMarketCanBeUnlisted";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyPendingAdmin";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyRedemptionManager";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OverThreshold";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "PriceError";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ProtectedMint_OnlyAllowAssetsInTheSameGroup";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RedeemMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RedeemTransferOutNotPossible";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RedemptionSeizeTooMuch";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RedemptionSignerNotInitialized";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ReduceReservesCashNotAvailable";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ReduceReservesMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "Reentered";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RepayBorrowMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RepayTokenNotListed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SeizePaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SeizeTokenNotListed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "Seize_LiquidatorIsBorrower";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SenderMustBeCToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SetInterestRateModelMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SetReservesFactorMarketNotFresh";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "SupplyCapReached";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TokenInOrAmountInMustBeZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TokenTransferInFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TokenTransferOutFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TooMuchRepay";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TotalBorrowsNotZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TotalSupplyNotZero";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TransferNotAllowed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TransferPaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "UnderlyingBalanceError";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ZeroAddressNotAllowed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address payable";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "cTokenBalances";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "isCToken";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "isCEther";
                readonly type: "bool";
            }, {
                readonly internalType: "uint256";
                readonly name: "balanceOf";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowBalanceCurrent";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "balanceOfUnderlying";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "tokenBalance";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "tokenAllowance";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CTokenBalances";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken[]";
            readonly name: "cTokens";
            readonly type: "address[]";
        }, {
            readonly internalType: "address payable";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "cTokenBalancesAll";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "isCToken";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "isCEther";
                readonly type: "bool";
            }, {
                readonly internalType: "uint256";
                readonly name: "balanceOf";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowBalanceCurrent";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "balanceOfUnderlying";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "tokenBalance";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "tokenAllowance";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CTokenBalances[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "cTokenMetadata";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeRateCurrent";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "supplyRatePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowRatePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveFactorMantissa";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalBorrows";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalReserves";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalSupply";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalCash";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "isListed";
                readonly type: "bool";
            }, {
                readonly internalType: "address";
                readonly name: "underlyingAssetAddress";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "cTokenDecimals";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "underlyingDecimals";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "isCToken";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "isCEther";
                readonly type: "bool";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowCap";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositCap";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "heteroLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "homoLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "sutokenLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint8";
                readonly name: "groupId";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "mintRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "discountRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "interMintAllowed";
                readonly type: "bool";
            }];
            readonly internalType: "struct CompoundLens.CTokenMetadata";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken[]";
            readonly name: "cTokens";
            readonly type: "address[]";
        }];
        readonly name: "cTokenMetadataAll";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeRateCurrent";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "supplyRatePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowRatePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveFactorMantissa";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalBorrows";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalReserves";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalSupply";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "totalCash";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "isListed";
                readonly type: "bool";
            }, {
                readonly internalType: "address";
                readonly name: "underlyingAssetAddress";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "cTokenDecimals";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "underlyingDecimals";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "isCToken";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "isCEther";
                readonly type: "bool";
            }, {
                readonly internalType: "uint256";
                readonly name: "borrowCap";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositCap";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "heteroLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "homoLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "sutokenLiquidationIncentive";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint8";
                readonly name: "groupId";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "mintRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "discountRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "interMintAllowed";
                readonly type: "bool";
            }];
            readonly internalType: "struct CompoundLens.CTokenMetadata[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "cTokenUnderlyingPrice";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "underlyingPrice";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CTokenUnderlyingPrice";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken[]";
            readonly name: "cTokens";
            readonly type: "address[]";
        }];
        readonly name: "cTokenUnderlyingPriceAll";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "cToken";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "underlyingPrice";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CTokenUnderlyingPrice[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "suToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "suBorrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "calcBorrowAmountForProtectedMint";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IComptroller";
            readonly name: "comptroller";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "getAccountLimits";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address[]";
                readonly name: "markets";
                readonly type: "address[]";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "shortfall";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.AccountLimits";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IComptroller";
            readonly name: "comptroller";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "collateralToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "liabilityToken";
            readonly type: "address";
        }];
        readonly name: "getCollateralRate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "comp";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "getCompBalanceMetadata";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "balance";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "votes";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "delegate";
                readonly type: "address";
            }];
            readonly internalType: "struct CompoundLens.CompBalanceMetadata";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "comp";
            readonly type: "address";
        }, {
            readonly internalType: "contract IComptroller";
            readonly name: "comptroller";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "getCompBalanceMetadataExt";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "balance";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "votes";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "delegate";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "allocated";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CompBalanceMetadataExt";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICToken";
            readonly name: "comp";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly internalType: "uint32[]";
            readonly name: "blockNumbers";
            readonly type: "uint32[]";
        }];
        readonly name: "getCompVotes";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "votes";
                readonly type: "uint256";
            }];
            readonly internalType: "struct CompoundLens.CompVotes[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IGovernorBravo";
            readonly name: "governor";
            readonly type: "address";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "proposalIds";
            readonly type: "uint256[]";
        }];
        readonly name: "getGovBravoProposals";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "proposalId";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "proposer";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "eta";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "targets";
                readonly type: "address[]";
            }, {
                readonly internalType: "uint256[]";
                readonly name: "values";
                readonly type: "uint256[]";
            }, {
                readonly internalType: "string[]";
                readonly name: "signatures";
                readonly type: "string[]";
            }, {
                readonly internalType: "bytes[]";
                readonly name: "calldatas";
                readonly type: "bytes[]";
            }, {
                readonly internalType: "uint256";
                readonly name: "startBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "endBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "forVotes";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "againstVotes";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "abstainVotes";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "canceled";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "executed";
                readonly type: "bool";
            }];
            readonly internalType: "struct CompoundLens.GovBravoProposal[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IGovernorBravo";
            readonly name: "governor";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "voter";
            readonly type: "address";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "proposalIds";
            readonly type: "uint256[]";
        }];
        readonly name: "getGovBravoReceipts";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "proposalId";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "hasVoted";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "support";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint96";
                readonly name: "votes";
                readonly type: "uint96";
            }];
            readonly internalType: "struct CompoundLens.GovBravoReceipt[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IGovernorAlpha";
            readonly name: "governor";
            readonly type: "address";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "proposalIds";
            readonly type: "uint256[]";
        }];
        readonly name: "getGovProposals";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "proposalId";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "proposer";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "eta";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "targets";
                readonly type: "address[]";
            }, {
                readonly internalType: "uint256[]";
                readonly name: "values";
                readonly type: "uint256[]";
            }, {
                readonly internalType: "string[]";
                readonly name: "signatures";
                readonly type: "string[]";
            }, {
                readonly internalType: "bytes[]";
                readonly name: "calldatas";
                readonly type: "bytes[]";
            }, {
                readonly internalType: "uint256";
                readonly name: "startBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "endBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "forVotes";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "againstVotes";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "canceled";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "executed";
                readonly type: "bool";
            }];
            readonly internalType: "struct CompoundLens.GovProposal[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IGovernorAlpha";
            readonly name: "governor";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "voter";
            readonly type: "address";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "proposalIds";
            readonly type: "uint256[]";
        }];
        readonly name: "getGovReceipts";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "proposalId";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "hasVoted";
                readonly type: "bool";
            }, {
                readonly internalType: "bool";
                readonly name: "support";
                readonly type: "bool";
            }, {
                readonly internalType: "uint96";
                readonly name: "votes";
                readonly type: "uint96";
            }];
            readonly internalType: "struct CompoundLens.GovReceipt[]";
            readonly name: "";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "percentScale";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "version";
        readonly outputs: readonly [{
            readonly internalType: "enum Version";
            readonly name: "";
            readonly type: "uint8";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }];
    static createInterface(): CompoundLensInterface;
    static connect(address: string, runner?: ContractRunner | null): CompoundLens;
}
export {};
