import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../../../common";
import type { MockComptroller, MockComptrollerInterface } from "../../../contracts/Comptroller/MockComptroller";
type MockComptrollerConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class MockComptroller__factory extends ContractFactory {
    constructor(...args: MockComptrollerConstructorParams);
    getDeployTransaction(_admin: AddressLike, _oracle: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(_admin: AddressLike, _oracle: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<MockComptroller & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): MockComptroller__factory;
    static readonly bytecode = " ";
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_admin";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_oracle";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        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 anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "MarketEntered";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "MarketExited";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "MarketListed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "MarketUnlisted";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint120";
            readonly name: "borrowCap";
            readonly type: "uint120";
        }, {
            readonly indexed: false;
            readonly internalType: "uint120";
            readonly name: "supplyCap";
            readonly type: "uint120";
        }];
        readonly name: "NewCap";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "compLogic";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "redemptionManager";
            readonly type: "address";
        }];
        readonly name: "NewDependencies";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "closeFactorPercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "minCloseValue";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "minSuBorrowValue";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "minWaitBeforeLiquidatable";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint8";
            readonly name: "largestGroupId";
            readonly type: "uint8";
        }];
        readonly name: "NewGlobalConfig";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "heteroPercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint64";
            readonly name: "homoPercent";
            readonly type: "uint64";
        }, {
            readonly indexed: false;
            readonly internalType: "uint64";
            readonly name: "sutokenPercent";
            readonly type: "uint64";
        }];
        readonly name: "NewLiquidationIncentive";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "ctoken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "mintPaused";
            readonly type: "bool";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "borrowPaused";
            readonly type: "bool";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "transferPaused";
            readonly type: "bool";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "seizePaused";
            readonly type: "bool";
        }];
        readonly name: "NewPause";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "oldPauseGuardian";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "newPauseGuardian";
            readonly type: "address";
        }];
        readonly name: "NewPauseGuardian";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "priceOracle";
            readonly type: "address";
        }];
        readonly name: "NewPriceOracle";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "timelock";
            readonly type: "address";
        }];
        readonly name: "NewTimelock";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }];
        readonly name: "RemoveAssetGroup";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "newAdminRole";
            readonly type: "bytes32";
        }];
        readonly name: "RoleAdminChanged";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "sender";
            readonly type: "address";
        }];
        readonly name: "RoleGranted";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "sender";
            readonly type: "address";
        }];
        readonly name: "RoleRevoked";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "intraCRatePercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "intraMintRatePercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "intraSuRatePercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "interCRatePercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "uint16";
            readonly name: "interSuRatePercent";
            readonly type: "uint16";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "isNewGroup";
            readonly type: "bool";
        }];
        readonly name: "UpdateAssetGroup";
        readonly type: "event";
    }, {
        readonly inputs: readonly [];
        readonly name: "DEFAULT_ADMIN_ROLE";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "PAUSER_ROLE";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint8";
            readonly name: "newGroupId";
            readonly type: "uint8";
        }];
        readonly name: "_changeGroupIdForAsset";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "bool";
            readonly name: "mintPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "borrowPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "transferPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "seizePaused";
            readonly type: "bool";
        }];
        readonly name: "_pause";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address[]";
            readonly name: "cTokens";
            readonly type: "address[]";
        }, {
            readonly internalType: "uint120[]";
            readonly name: "borrowCaps";
            readonly type: "uint120[]";
        }, {
            readonly internalType: "uint120[]";
            readonly name: "supplyCaps";
            readonly type: "uint120[]";
        }];
        readonly name: "_setCaps";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint16";
                readonly name: "closeFactorPercent";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint32";
                readonly name: "minCloseValue";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "minSuBorrowValue";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "minWaitBeforeLiquidatable";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint8";
                readonly name: "largestGroupId";
                readonly type: "uint8";
            }];
            readonly internalType: "struct GlobalConfig";
            readonly name: "globalConfig_";
            readonly type: "tuple";
        }];
        readonly name: "_setGlobalConfig";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_governanceToken";
            readonly type: "address";
        }];
        readonly name: "_setGovTokenAddress";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bool";
            readonly name: "allowed";
            readonly type: "bool";
        }];
        readonly name: "_setInterMintAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "largestGroupId";
            readonly type: "uint8";
        }];
        readonly name: "_setLargestGroupId";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint16";
                readonly name: "heteroPercent";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "homoPercent";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "sutokenPercent";
                readonly type: "uint16";
            }];
            readonly internalType: "struct LiquidationIncentive";
            readonly name: "liquidationIncentive_";
            readonly type: "tuple";
        }];
        readonly name: "_setLiquidationIncentive";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newPauseGuardian";
            readonly type: "address";
        }];
        readonly name: "_setPauseGuardian";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_oracle";
            readonly type: "address";
        }];
        readonly name: "_setPriceOracle";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_timelock";
            readonly type: "address";
        }];
        readonly name: "_setTimelock";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }, {
            readonly internalType: "uint120";
            readonly name: "borrowCap";
            readonly type: "uint120";
        }, {
            readonly internalType: "uint120";
            readonly name: "supplyCap";
            readonly type: "uint120";
        }];
        readonly name: "_supportMarket";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "_unlistMarket";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "accountAssets";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allMarkets";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "";
            readonly type: "uint8";
        }];
        readonly name: "assetGroup";
        readonly outputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraCRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraMintRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraSuRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "interCRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "interSuRatePercent";
            readonly type: "uint16";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "borrowAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "borrowVerify";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "compLogic";
        readonly outputs: readonly [{
            readonly internalType: "contract ICompLogic";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly internalType: "address[]";
            readonly name: "cTokens";
            readonly type: "address[]";
        }];
        readonly name: "enterMarketsFor";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenAddress";
            readonly type: "address";
        }];
        readonly name: "exitMarketFor";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getAllMarkets";
        readonly outputs: readonly [{
            readonly internalType: "address[]";
            readonly name: "";
            readonly type: "address[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "getAssetsIn";
        readonly outputs: readonly [{
            readonly internalType: "address[]";
            readonly name: "";
            readonly type: "address[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenModify";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemTokens";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "getHypoStep1";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint8";
                readonly name: "groupId";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "cDepositVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "cBorrowVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "suDepositVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "suBorrowVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraCRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraMintRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraSuRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interCRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interSuRate";
                readonly type: "uint256";
            }];
            readonly internalType: "struct GroupVar[]";
            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: "cTokenModify";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemTokens";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "getHypoStep2";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }, {
            readonly components: readonly [{
                readonly internalType: "uint8";
                readonly name: "groupId";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "cDepositVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "cBorrowVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "suDepositVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "suBorrowVal";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraCRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraMintRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "intraSuRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interCRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "interSuRate";
                readonly type: "uint256";
            }];
            readonly internalType: "struct GroupVar";
            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: "cTokenModify";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemTokens";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowAmount";
            readonly type: "uint256";
        }];
        readonly name: "getHypotheticalAccountLiquidity";
        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: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }];
        readonly name: "getRoleAdmin";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }];
        readonly name: "getUnderlyingPriceNormalized";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "globalConfig";
        readonly outputs: readonly [{
            readonly internalType: "uint16";
            readonly name: "closeFactorPercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint32";
            readonly name: "minCloseValue";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "minSuBorrowValue";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "minWaitBeforeLiquidatable";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint8";
            readonly name: "largestGroupId";
            readonly type: "uint8";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "governanceToken";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "grantRole";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "hasRole";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "interMintAllowed";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "isComptroller";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "asset";
            readonly type: "address";
        }];
        readonly name: "isListed";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "lastBorrowedAt";
        readonly outputs: readonly [{
            readonly internalType: "uint48";
            readonly name: "";
            readonly type: "uint48";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cTokenBorrowed";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "liquidator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "repayAmount";
            readonly type: "uint256";
        }];
        readonly name: "liquidateBorrowAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cTokenBorrowed";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "liquidator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "actualRepayAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "seizeTokens";
            readonly type: "uint256";
        }];
        readonly name: "liquidateBorrowVerify";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "liquidationIncentive";
        readonly outputs: readonly [{
            readonly internalType: "uint16";
            readonly name: "heteroPercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "homoPercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "sutokenPercent";
            readonly type: "uint16";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "marketConfig";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "mintPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "borrowPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "transferPaused";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "seizePaused";
            readonly type: "bool";
        }, {
            readonly internalType: "uint120";
            readonly name: "borrowCap";
            readonly type: "uint120";
        }, {
            readonly internalType: "uint120";
            readonly name: "supplyCap";
            readonly type: "uint120";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "markets";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "isListed";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "assetGroupId";
            readonly type: "uint8";
        }, {
            readonly internalType: "bool";
            readonly name: "isComped";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "minter";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "mintAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "exchangeRate";
            readonly type: "uint256";
        }];
        readonly name: "mintAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "oracle";
        readonly outputs: readonly [{
            readonly internalType: "contract IPriceOracle";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pauseGuardian";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "redeemer";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemTokens";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "exchangeRate";
            readonly type: "uint256";
        }];
        readonly name: "redeemAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "redeemer";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "redeemTokens";
            readonly type: "uint256";
        }];
        readonly name: "redeemVerify";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "redemptionManager";
        readonly outputs: readonly [{
            readonly internalType: "contract IRedemptionManager";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }];
        readonly name: "removeAssetGroup";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "renounceRole";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "payer";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "repayAmount";
            readonly type: "uint256";
        }];
        readonly name: "repayBorrowAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "payer";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "actualRepayAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "borrowIndex";
            readonly type: "uint256";
        }];
        readonly name: "repayBorrowVerify";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "role";
            readonly type: "bytes32";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "revokeRole";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cTokenCollateral";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "cTokenBorrowed";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "liquidator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "borrower";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "seizeTokens";
            readonly type: "uint256";
        }];
        readonly name: "seizeAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "groupId";
            readonly type: "uint8";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraCRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraMintRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "intraSuRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "interCRatePercent";
            readonly type: "uint16";
        }, {
            readonly internalType: "uint16";
            readonly name: "interSuRatePercent";
            readonly type: "uint16";
        }];
        readonly name: "setAssetGroup";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes4";
            readonly name: "interfaceId";
            readonly type: "bytes4";
        }];
        readonly name: "supportsInterface";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "timelock";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "cToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "src";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "dst";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "transferTokens";
            readonly type: "uint256";
        }];
        readonly name: "transferAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        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(): MockComptrollerInterface;
    static connect(address: string, runner?: ContractRunner | null): MockComptroller;
}
export {};
