/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */

import { ethers } from "ethers";
import {
  FactoryOptions,
  HardhatEthersHelpers as HardhatEthersHelpersBase,
} from "@nomicfoundation/hardhat-ethers/types";

import * as Contracts from ".";

declare module "hardhat/types/runtime" {
  interface HardhatEthersHelpers extends HardhatEthersHelpersBase {
    getContractFactory(
      name: "OwnableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OwnableUpgradeable__factory>;
    getContractFactory(
      name: "ERC2771ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable__factory>;
    getContractFactory(
      name: "MinimalForwarderUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MinimalForwarderUpgradeable__factory>;
    getContractFactory(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable__factory>;
    getContractFactory(
      name: "PausableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.PausableUpgradeable__factory>;
    getContractFactory(
      name: "IERC1155Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1155Upgradeable__factory>;
    getContractFactory(
      name: "IERC20PermitUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20PermitUpgradeable__factory>;
    getContractFactory(
      name: "IERC20MetadataUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20MetadataUpgradeable__factory>;
    getContractFactory(
      name: "IERC20Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Upgradeable__factory>;
    getContractFactory(
      name: "ERC721Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC721Upgradeable__factory>;
    getContractFactory(
      name: "IERC721MetadataUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721MetadataUpgradeable__factory>;
    getContractFactory(
      name: "IERC721ReceiverUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721ReceiverUpgradeable__factory>;
    getContractFactory(
      name: "IERC721Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721Upgradeable__factory>;
    getContractFactory(
      name: "ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ContextUpgradeable__factory>;
    getContractFactory(
      name: "EIP712Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EIP712Upgradeable__factory>;
    getContractFactory(
      name: "ERC165Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165Upgradeable__factory>;
    getContractFactory(
      name: "IERC165Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165Upgradeable__factory>;
    getContractFactory(
      name: "AccessControl",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControl__factory>;
    getContractFactory(
      name: "AccessControlEnumerable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControlEnumerable__factory>;
    getContractFactory(
      name: "IAccessControl",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControl__factory>;
    getContractFactory(
      name: "IAccessControlEnumerable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControlEnumerable__factory>;
    getContractFactory(
      name: "Ownable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Ownable__factory>;
    getContractFactory(
      name: "IVotes",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IVotes__factory>;
    getContractFactory(
      name: "IERC1822Proxiable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1822Proxiable__factory>;
    getContractFactory(
      name: "BeaconProxy",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.BeaconProxy__factory>;
    getContractFactory(
      name: "IBeacon",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBeacon__factory>;
    getContractFactory(
      name: "UpgradeableBeacon",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.UpgradeableBeacon__factory>;
    getContractFactory(
      name: "ERC1967Upgrade",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC1967Upgrade__factory>;
    getContractFactory(
      name: "Proxy",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Proxy__factory>;
    getContractFactory(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable__factory>;
    getContractFactory(
      name: "Pausable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Pausable__factory>;
    getContractFactory(
      name: "ERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20__factory>;
    getContractFactory(
      name: "ERC20Permit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Permit__factory>;
    getContractFactory(
      name: "IERC20Permit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Permit__factory>;
    getContractFactory(
      name: "ERC20Burnable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Burnable__factory>;
    getContractFactory(
      name: "ERC20Pausable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Pausable__factory>;
    getContractFactory(
      name: "ERC20Votes",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Votes__factory>;
    getContractFactory(
      name: "IERC20Metadata",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Metadata__factory>;
    getContractFactory(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20__factory>;
    getContractFactory(
      name: "ERC20PresetMinterPauser",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20PresetMinterPauser__factory>;
    getContractFactory(
      name: "ERC165",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165__factory>;
    getContractFactory(
      name: "IERC165",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165__factory>;
    getContractFactory(
      name: "CollateralManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManager__factory>;
    getContractFactory(
      name: "TellerAS",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerAS__factory>;
    getContractFactory(
      name: "TellerASEIP712Verifier",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASEIP712Verifier__factory>;
    getContractFactory(
      name: "TellerASRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASRegistry__factory>;
    getContractFactory(
      name: "TellerASResolver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASResolver__factory>;
    getContractFactory(
      name: "ERC2771ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable__factory>;
    getContractFactory(
      name: "CollateralEscrowV1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralEscrowV1__factory>;
    getContractFactory(
      name: "EscrowVault",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EscrowVault__factory>;
    getContractFactory(
      name: "IFlashLoanSimpleReceiver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFlashLoanSimpleReceiver__factory>;
    getContractFactory(
      name: "IPool",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPool__factory>;
    getContractFactory(
      name: "IPoolAddressesProvider",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPoolAddressesProvider__factory>;
    getContractFactory(
      name: "ICollateralEscrowV1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralEscrowV1__factory>;
    getContractFactory(
      name: "IASRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASRegistry__factory>;
    getContractFactory(
      name: "IASResolver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASResolver__factory>;
    getContractFactory(
      name: "ICollateralManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralManager__factory>;
    getContractFactory(
      name: "IEAS",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEAS__factory>;
    getContractFactory(
      name: "IEASEIP712Verifier",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEASEIP712Verifier__factory>;
    getContractFactory(
      name: "IEscrowVault",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEscrowVault__factory>;
    getContractFactory(
      name: "IExtensionsContext",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IExtensionsContext__factory>;
    getContractFactory(
      name: "ILenderCommitmentForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderCommitmentForwarder__factory>;
    getContractFactory(
      name: "ILenderManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderManager__factory>;
    getContractFactory(
      name: "IMarketLiquidityRewards",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketLiquidityRewards__factory>;
    getContractFactory(
      name: "IMarketRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketRegistry__factory>;
    getContractFactory(
      name: "IProtocolFee",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IProtocolFee__factory>;
    getContractFactory(
      name: "IReputationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IReputationManager__factory>;
    getContractFactory(
      name: "ITellerV2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2__factory>;
    getContractFactory(
      name: "ITellerV2Autopay",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Autopay__factory>;
    getContractFactory(
      name: "ITellerV2Context",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Context__factory>;
    getContractFactory(
      name: "ITellerV2Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Storage__factory>;
    getContractFactory(
      name: "IUniswapV2Router",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IUniswapV2Router__factory>;
    getContractFactory(
      name: "IWETH",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IWETH__factory>;
    getContractFactory(
      name: "CommitmentRolloverLoan",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CommitmentRolloverLoan__factory>;
    getContractFactory(
      name: "ExtensionsContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ExtensionsContextUpgradeable__factory>;
    getContractFactory(
      name: "FlashRolloverLoan_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G1__factory>;
    getContractFactory(
      name: "FlashRolloverLoan_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G2__factory>;
    getContractFactory(
      name: "FlashRolloverLoan",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarder_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G1__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarder_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G2__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarder_G3",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G3__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarderStaging",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderStaging__factory>;
    getContractFactory(
      name: "LenderManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManager__factory>;
    getContractFactory(
      name: "V2Calculations",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.V2Calculations__factory>;
    getContractFactory(
      name: "MarketLiquidityRewards",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketLiquidityRewards__factory>;
    getContractFactory(
      name: "MarketRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistry__factory>;
    getContractFactory(
      name: "MetaForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MetaForwarder__factory>;
    getContractFactory(
      name: "AavePoolAddressProviderMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolAddressProviderMock__factory>;
    getContractFactory(
      name: "AavePoolMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolMock__factory>;
    getContractFactory(
      name: "CollateralManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManagerMock__factory>;
    getContractFactory(
      name: "LenderCommitmentForwarderMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderMock__factory>;
    getContractFactory(
      name: "LenderManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManagerMock__factory>;
    getContractFactory(
      name: "MarketRegistryMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistryMock__factory>;
    getContractFactory(
      name: "ReputationManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManagerMock__factory>;
    getContractFactory(
      name: "TellerASMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASMock__factory>;
    getContractFactory(
      name: "TellerV2SolMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2SolMock__factory>;
    getContractFactory(
      name: "WethMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.WethMock__factory>;
    getContractFactory(
      name: "ProtocolFee",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFee__factory>;
    getContractFactory(
      name: "ProtocolFeeMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFeeMock__factory>;
    getContractFactory(
      name: "ReputationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManager__factory>;
    getContractFactory(
      name: "TellerV0Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV0Storage__factory>;
    getContractFactory(
      name: "TellerV2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2__factory>;
    getContractFactory(
      name: "TellerV2Autopay",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Autopay__factory>;
    getContractFactory(
      name: "TellerV2Context",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Context__factory>;
    getContractFactory(
      name: "TellerV2MarketForwarder_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G1__factory>;
    getContractFactory(
      name: "TellerV2MarketForwarder_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G2__factory>;
    getContractFactory(
      name: "TellerV2Storage_G0",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G0__factory>;
    getContractFactory(
      name: "TellerV2Storage_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G1__factory>;
    getContractFactory(
      name: "TellerV2Storage_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G2__factory>;
    getContractFactory(
      name: "TellerV2Storage_G3",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G3__factory>;
    getContractFactory(
      name: "TellerV2Storage_G4",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G4__factory>;
    getContractFactory(
      name: "TellerV2Storage_G5",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G5__factory>;
    getContractFactory(
      name: "TellerV2Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage__factory>;
    getContractFactory(
      name: "TLR",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TLR__factory>;

    getContractAt(
      name: "OwnableUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.OwnableUpgradeable>;
    getContractAt(
      name: "ERC2771ContextUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    getContractAt(
      name: "MinimalForwarderUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.MinimalForwarderUpgradeable>;
    getContractAt(
      name: "Initializable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.Initializable>;
    getContractAt(
      name: "PausableUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.PausableUpgradeable>;
    getContractAt(
      name: "IERC1155Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC1155Upgradeable>;
    getContractAt(
      name: "IERC20PermitUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20PermitUpgradeable>;
    getContractAt(
      name: "IERC20MetadataUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20MetadataUpgradeable>;
    getContractAt(
      name: "IERC20Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20Upgradeable>;
    getContractAt(
      name: "ERC721Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC721Upgradeable>;
    getContractAt(
      name: "IERC721MetadataUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC721MetadataUpgradeable>;
    getContractAt(
      name: "IERC721ReceiverUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC721ReceiverUpgradeable>;
    getContractAt(
      name: "IERC721Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC721Upgradeable>;
    getContractAt(
      name: "ContextUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ContextUpgradeable>;
    getContractAt(
      name: "EIP712Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.EIP712Upgradeable>;
    getContractAt(
      name: "ERC165Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC165Upgradeable>;
    getContractAt(
      name: "IERC165Upgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC165Upgradeable>;
    getContractAt(
      name: "AccessControl",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.AccessControl>;
    getContractAt(
      name: "AccessControlEnumerable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.AccessControlEnumerable>;
    getContractAt(
      name: "IAccessControl",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IAccessControl>;
    getContractAt(
      name: "IAccessControlEnumerable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IAccessControlEnumerable>;
    getContractAt(
      name: "Ownable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.Ownable>;
    getContractAt(
      name: "IVotes",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IVotes>;
    getContractAt(
      name: "IERC1822Proxiable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC1822Proxiable>;
    getContractAt(
      name: "BeaconProxy",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.BeaconProxy>;
    getContractAt(
      name: "IBeacon",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IBeacon>;
    getContractAt(
      name: "UpgradeableBeacon",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.UpgradeableBeacon>;
    getContractAt(
      name: "ERC1967Upgrade",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC1967Upgrade>;
    getContractAt(
      name: "Proxy",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.Proxy>;
    getContractAt(
      name: "Initializable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.Initializable>;
    getContractAt(
      name: "Pausable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.Pausable>;
    getContractAt(
      name: "ERC20",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20>;
    getContractAt(
      name: "ERC20Permit",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20Permit>;
    getContractAt(
      name: "IERC20Permit",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20Permit>;
    getContractAt(
      name: "ERC20Burnable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20Burnable>;
    getContractAt(
      name: "ERC20Pausable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20Pausable>;
    getContractAt(
      name: "ERC20Votes",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20Votes>;
    getContractAt(
      name: "IERC20Metadata",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20Metadata>;
    getContractAt(
      name: "IERC20",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "ERC20PresetMinterPauser",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20PresetMinterPauser>;
    getContractAt(
      name: "ERC165",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC165>;
    getContractAt(
      name: "IERC165",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC165>;
    getContractAt(
      name: "CollateralManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.CollateralManager>;
    getContractAt(
      name: "TellerAS",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerAS>;
    getContractAt(
      name: "TellerASEIP712Verifier",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerASEIP712Verifier>;
    getContractAt(
      name: "TellerASRegistry",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerASRegistry>;
    getContractAt(
      name: "TellerASResolver",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerASResolver>;
    getContractAt(
      name: "ERC2771ContextUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    getContractAt(
      name: "CollateralEscrowV1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.CollateralEscrowV1>;
    getContractAt(
      name: "EscrowVault",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.EscrowVault>;
    getContractAt(
      name: "IFlashLoanSimpleReceiver",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IFlashLoanSimpleReceiver>;
    getContractAt(
      name: "IPool",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IPool>;
    getContractAt(
      name: "IPoolAddressesProvider",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IPoolAddressesProvider>;
    getContractAt(
      name: "ICollateralEscrowV1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ICollateralEscrowV1>;
    getContractAt(
      name: "IASRegistry",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IASRegistry>;
    getContractAt(
      name: "IASResolver",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IASResolver>;
    getContractAt(
      name: "ICollateralManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ICollateralManager>;
    getContractAt(
      name: "IEAS",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IEAS>;
    getContractAt(
      name: "IEASEIP712Verifier",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IEASEIP712Verifier>;
    getContractAt(
      name: "IEscrowVault",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IEscrowVault>;
    getContractAt(
      name: "IExtensionsContext",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IExtensionsContext>;
    getContractAt(
      name: "ILenderCommitmentForwarder",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ILenderCommitmentForwarder>;
    getContractAt(
      name: "ILenderManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ILenderManager>;
    getContractAt(
      name: "IMarketLiquidityRewards",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IMarketLiquidityRewards>;
    getContractAt(
      name: "IMarketRegistry",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IMarketRegistry>;
    getContractAt(
      name: "IProtocolFee",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IProtocolFee>;
    getContractAt(
      name: "IReputationManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IReputationManager>;
    getContractAt(
      name: "ITellerV2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ITellerV2>;
    getContractAt(
      name: "ITellerV2Autopay",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ITellerV2Autopay>;
    getContractAt(
      name: "ITellerV2Context",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ITellerV2Context>;
    getContractAt(
      name: "ITellerV2Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ITellerV2Storage>;
    getContractAt(
      name: "IUniswapV2Router",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IUniswapV2Router>;
    getContractAt(
      name: "IWETH",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.IWETH>;
    getContractAt(
      name: "CommitmentRolloverLoan",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.CommitmentRolloverLoan>;
    getContractAt(
      name: "ExtensionsContextUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ExtensionsContextUpgradeable>;
    getContractAt(
      name: "FlashRolloverLoan_G1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.FlashRolloverLoan_G1>;
    getContractAt(
      name: "FlashRolloverLoan_G2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.FlashRolloverLoan_G2>;
    getContractAt(
      name: "FlashRolloverLoan",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.FlashRolloverLoan>;
    getContractAt(
      name: "LenderCommitmentForwarder_G1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarder_G1>;
    getContractAt(
      name: "LenderCommitmentForwarder_G2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarder_G2>;
    getContractAt(
      name: "LenderCommitmentForwarder_G3",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarder_G3>;
    getContractAt(
      name: "LenderCommitmentForwarder",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarder>;
    getContractAt(
      name: "LenderCommitmentForwarderStaging",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarderStaging>;
    getContractAt(
      name: "LenderManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderManager>;
    getContractAt(
      name: "V2Calculations",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.V2Calculations>;
    getContractAt(
      name: "MarketLiquidityRewards",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.MarketLiquidityRewards>;
    getContractAt(
      name: "MarketRegistry",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.MarketRegistry>;
    getContractAt(
      name: "MetaForwarder",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.MetaForwarder>;
    getContractAt(
      name: "AavePoolAddressProviderMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.AavePoolAddressProviderMock>;
    getContractAt(
      name: "AavePoolMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.AavePoolMock>;
    getContractAt(
      name: "CollateralManagerMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.CollateralManagerMock>;
    getContractAt(
      name: "LenderCommitmentForwarderMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderCommitmentForwarderMock>;
    getContractAt(
      name: "LenderManagerMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.LenderManagerMock>;
    getContractAt(
      name: "MarketRegistryMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.MarketRegistryMock>;
    getContractAt(
      name: "ReputationManagerMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ReputationManagerMock>;
    getContractAt(
      name: "TellerASMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerASMock>;
    getContractAt(
      name: "TellerV2SolMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2SolMock>;
    getContractAt(
      name: "WethMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.WethMock>;
    getContractAt(
      name: "ProtocolFee",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ProtocolFee>;
    getContractAt(
      name: "ProtocolFeeMock",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ProtocolFeeMock>;
    getContractAt(
      name: "ReputationManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.ReputationManager>;
    getContractAt(
      name: "TellerV0Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV0Storage>;
    getContractAt(
      name: "TellerV2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2>;
    getContractAt(
      name: "TellerV2Autopay",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Autopay>;
    getContractAt(
      name: "TellerV2Context",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Context>;
    getContractAt(
      name: "TellerV2MarketForwarder_G1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2MarketForwarder_G1>;
    getContractAt(
      name: "TellerV2MarketForwarder_G2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2MarketForwarder_G2>;
    getContractAt(
      name: "TellerV2Storage_G0",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G0>;
    getContractAt(
      name: "TellerV2Storage_G1",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G1>;
    getContractAt(
      name: "TellerV2Storage_G2",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G2>;
    getContractAt(
      name: "TellerV2Storage_G3",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G3>;
    getContractAt(
      name: "TellerV2Storage_G4",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G4>;
    getContractAt(
      name: "TellerV2Storage_G5",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage_G5>;
    getContractAt(
      name: "TellerV2Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TellerV2Storage>;
    getContractAt(
      name: "TLR",
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<Contracts.TLR>;

    deployContract(
      name: "OwnableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OwnableUpgradeable>;
    deployContract(
      name: "ERC2771ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    deployContract(
      name: "MinimalForwarderUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MinimalForwarderUpgradeable>;
    deployContract(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "PausableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.PausableUpgradeable>;
    deployContract(
      name: "IERC1155Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1155Upgradeable>;
    deployContract(
      name: "IERC20PermitUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20PermitUpgradeable>;
    deployContract(
      name: "IERC20MetadataUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20MetadataUpgradeable>;
    deployContract(
      name: "IERC20Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Upgradeable>;
    deployContract(
      name: "ERC721Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC721Upgradeable>;
    deployContract(
      name: "IERC721MetadataUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721MetadataUpgradeable>;
    deployContract(
      name: "IERC721ReceiverUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721ReceiverUpgradeable>;
    deployContract(
      name: "IERC721Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721Upgradeable>;
    deployContract(
      name: "ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ContextUpgradeable>;
    deployContract(
      name: "EIP712Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EIP712Upgradeable>;
    deployContract(
      name: "ERC165Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165Upgradeable>;
    deployContract(
      name: "IERC165Upgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165Upgradeable>;
    deployContract(
      name: "AccessControl",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControl>;
    deployContract(
      name: "AccessControlEnumerable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControlEnumerable>;
    deployContract(
      name: "IAccessControl",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControl>;
    deployContract(
      name: "IAccessControlEnumerable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControlEnumerable>;
    deployContract(
      name: "Ownable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Ownable>;
    deployContract(
      name: "IVotes",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IVotes>;
    deployContract(
      name: "IERC1822Proxiable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1822Proxiable>;
    deployContract(
      name: "BeaconProxy",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.BeaconProxy>;
    deployContract(
      name: "IBeacon",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBeacon>;
    deployContract(
      name: "UpgradeableBeacon",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.UpgradeableBeacon>;
    deployContract(
      name: "ERC1967Upgrade",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC1967Upgrade>;
    deployContract(
      name: "Proxy",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Proxy>;
    deployContract(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "Pausable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Pausable>;
    deployContract(
      name: "ERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20>;
    deployContract(
      name: "ERC20Permit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Permit>;
    deployContract(
      name: "IERC20Permit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Permit>;
    deployContract(
      name: "ERC20Burnable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Burnable>;
    deployContract(
      name: "ERC20Pausable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Pausable>;
    deployContract(
      name: "ERC20Votes",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Votes>;
    deployContract(
      name: "IERC20Metadata",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Metadata>;
    deployContract(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20>;
    deployContract(
      name: "ERC20PresetMinterPauser",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20PresetMinterPauser>;
    deployContract(
      name: "ERC165",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165>;
    deployContract(
      name: "IERC165",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165>;
    deployContract(
      name: "CollateralManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManager>;
    deployContract(
      name: "TellerAS",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerAS>;
    deployContract(
      name: "TellerASEIP712Verifier",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASEIP712Verifier>;
    deployContract(
      name: "TellerASRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASRegistry>;
    deployContract(
      name: "TellerASResolver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASResolver>;
    deployContract(
      name: "ERC2771ContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    deployContract(
      name: "CollateralEscrowV1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralEscrowV1>;
    deployContract(
      name: "EscrowVault",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EscrowVault>;
    deployContract(
      name: "IFlashLoanSimpleReceiver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFlashLoanSimpleReceiver>;
    deployContract(
      name: "IPool",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPool>;
    deployContract(
      name: "IPoolAddressesProvider",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPoolAddressesProvider>;
    deployContract(
      name: "ICollateralEscrowV1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralEscrowV1>;
    deployContract(
      name: "IASRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASRegistry>;
    deployContract(
      name: "IASResolver",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASResolver>;
    deployContract(
      name: "ICollateralManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralManager>;
    deployContract(
      name: "IEAS",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEAS>;
    deployContract(
      name: "IEASEIP712Verifier",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEASEIP712Verifier>;
    deployContract(
      name: "IEscrowVault",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEscrowVault>;
    deployContract(
      name: "IExtensionsContext",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IExtensionsContext>;
    deployContract(
      name: "ILenderCommitmentForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderCommitmentForwarder>;
    deployContract(
      name: "ILenderManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderManager>;
    deployContract(
      name: "IMarketLiquidityRewards",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketLiquidityRewards>;
    deployContract(
      name: "IMarketRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketRegistry>;
    deployContract(
      name: "IProtocolFee",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IProtocolFee>;
    deployContract(
      name: "IReputationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IReputationManager>;
    deployContract(
      name: "ITellerV2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2>;
    deployContract(
      name: "ITellerV2Autopay",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Autopay>;
    deployContract(
      name: "ITellerV2Context",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Context>;
    deployContract(
      name: "ITellerV2Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Storage>;
    deployContract(
      name: "IUniswapV2Router",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IUniswapV2Router>;
    deployContract(
      name: "IWETH",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IWETH>;
    deployContract(
      name: "CommitmentRolloverLoan",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CommitmentRolloverLoan>;
    deployContract(
      name: "ExtensionsContextUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ExtensionsContextUpgradeable>;
    deployContract(
      name: "FlashRolloverLoan_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G1>;
    deployContract(
      name: "FlashRolloverLoan_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G2>;
    deployContract(
      name: "FlashRolloverLoan",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan>;
    deployContract(
      name: "LenderCommitmentForwarder_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G1>;
    deployContract(
      name: "LenderCommitmentForwarder_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G2>;
    deployContract(
      name: "LenderCommitmentForwarder_G3",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G3>;
    deployContract(
      name: "LenderCommitmentForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder>;
    deployContract(
      name: "LenderCommitmentForwarderStaging",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderStaging>;
    deployContract(
      name: "LenderManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManager>;
    deployContract(
      name: "V2Calculations",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.V2Calculations>;
    deployContract(
      name: "MarketLiquidityRewards",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketLiquidityRewards>;
    deployContract(
      name: "MarketRegistry",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistry>;
    deployContract(
      name: "MetaForwarder",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MetaForwarder>;
    deployContract(
      name: "AavePoolAddressProviderMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolAddressProviderMock>;
    deployContract(
      name: "AavePoolMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolMock>;
    deployContract(
      name: "CollateralManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManagerMock>;
    deployContract(
      name: "LenderCommitmentForwarderMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderMock>;
    deployContract(
      name: "LenderManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManagerMock>;
    deployContract(
      name: "MarketRegistryMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistryMock>;
    deployContract(
      name: "ReputationManagerMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManagerMock>;
    deployContract(
      name: "TellerASMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASMock>;
    deployContract(
      name: "TellerV2SolMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2SolMock>;
    deployContract(
      name: "WethMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.WethMock>;
    deployContract(
      name: "ProtocolFee",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFee>;
    deployContract(
      name: "ProtocolFeeMock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFeeMock>;
    deployContract(
      name: "ReputationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManager>;
    deployContract(
      name: "TellerV0Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV0Storage>;
    deployContract(
      name: "TellerV2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2>;
    deployContract(
      name: "TellerV2Autopay",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Autopay>;
    deployContract(
      name: "TellerV2Context",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Context>;
    deployContract(
      name: "TellerV2MarketForwarder_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G1>;
    deployContract(
      name: "TellerV2MarketForwarder_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G2>;
    deployContract(
      name: "TellerV2Storage_G0",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G0>;
    deployContract(
      name: "TellerV2Storage_G1",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G1>;
    deployContract(
      name: "TellerV2Storage_G2",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G2>;
    deployContract(
      name: "TellerV2Storage_G3",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G3>;
    deployContract(
      name: "TellerV2Storage_G4",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G4>;
    deployContract(
      name: "TellerV2Storage_G5",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G5>;
    deployContract(
      name: "TellerV2Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage>;
    deployContract(
      name: "TLR",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TLR>;

    deployContract(
      name: "OwnableUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OwnableUpgradeable>;
    deployContract(
      name: "ERC2771ContextUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    deployContract(
      name: "MinimalForwarderUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MinimalForwarderUpgradeable>;
    deployContract(
      name: "Initializable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "PausableUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.PausableUpgradeable>;
    deployContract(
      name: "IERC1155Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1155Upgradeable>;
    deployContract(
      name: "IERC20PermitUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20PermitUpgradeable>;
    deployContract(
      name: "IERC20MetadataUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20MetadataUpgradeable>;
    deployContract(
      name: "IERC20Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Upgradeable>;
    deployContract(
      name: "ERC721Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC721Upgradeable>;
    deployContract(
      name: "IERC721MetadataUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721MetadataUpgradeable>;
    deployContract(
      name: "IERC721ReceiverUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721ReceiverUpgradeable>;
    deployContract(
      name: "IERC721Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC721Upgradeable>;
    deployContract(
      name: "ContextUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ContextUpgradeable>;
    deployContract(
      name: "EIP712Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EIP712Upgradeable>;
    deployContract(
      name: "ERC165Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165Upgradeable>;
    deployContract(
      name: "IERC165Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165Upgradeable>;
    deployContract(
      name: "AccessControl",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControl>;
    deployContract(
      name: "AccessControlEnumerable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AccessControlEnumerable>;
    deployContract(
      name: "IAccessControl",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControl>;
    deployContract(
      name: "IAccessControlEnumerable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IAccessControlEnumerable>;
    deployContract(
      name: "Ownable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Ownable>;
    deployContract(
      name: "IVotes",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IVotes>;
    deployContract(
      name: "IERC1822Proxiable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC1822Proxiable>;
    deployContract(
      name: "BeaconProxy",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.BeaconProxy>;
    deployContract(
      name: "IBeacon",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBeacon>;
    deployContract(
      name: "UpgradeableBeacon",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.UpgradeableBeacon>;
    deployContract(
      name: "ERC1967Upgrade",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC1967Upgrade>;
    deployContract(
      name: "Proxy",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Proxy>;
    deployContract(
      name: "Initializable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "Pausable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Pausable>;
    deployContract(
      name: "ERC20",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20>;
    deployContract(
      name: "ERC20Permit",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Permit>;
    deployContract(
      name: "IERC20Permit",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Permit>;
    deployContract(
      name: "ERC20Burnable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Burnable>;
    deployContract(
      name: "ERC20Pausable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Pausable>;
    deployContract(
      name: "ERC20Votes",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20Votes>;
    deployContract(
      name: "IERC20Metadata",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20Metadata>;
    deployContract(
      name: "IERC20",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20>;
    deployContract(
      name: "ERC20PresetMinterPauser",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20PresetMinterPauser>;
    deployContract(
      name: "ERC165",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC165>;
    deployContract(
      name: "IERC165",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC165>;
    deployContract(
      name: "CollateralManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManager>;
    deployContract(
      name: "TellerAS",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerAS>;
    deployContract(
      name: "TellerASEIP712Verifier",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASEIP712Verifier>;
    deployContract(
      name: "TellerASRegistry",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASRegistry>;
    deployContract(
      name: "TellerASResolver",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASResolver>;
    deployContract(
      name: "ERC2771ContextUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC2771ContextUpgradeable>;
    deployContract(
      name: "CollateralEscrowV1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralEscrowV1>;
    deployContract(
      name: "EscrowVault",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.EscrowVault>;
    deployContract(
      name: "IFlashLoanSimpleReceiver",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFlashLoanSimpleReceiver>;
    deployContract(
      name: "IPool",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPool>;
    deployContract(
      name: "IPoolAddressesProvider",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPoolAddressesProvider>;
    deployContract(
      name: "ICollateralEscrowV1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralEscrowV1>;
    deployContract(
      name: "IASRegistry",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASRegistry>;
    deployContract(
      name: "IASResolver",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IASResolver>;
    deployContract(
      name: "ICollateralManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ICollateralManager>;
    deployContract(
      name: "IEAS",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEAS>;
    deployContract(
      name: "IEASEIP712Verifier",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEASEIP712Verifier>;
    deployContract(
      name: "IEscrowVault",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IEscrowVault>;
    deployContract(
      name: "IExtensionsContext",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IExtensionsContext>;
    deployContract(
      name: "ILenderCommitmentForwarder",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderCommitmentForwarder>;
    deployContract(
      name: "ILenderManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ILenderManager>;
    deployContract(
      name: "IMarketLiquidityRewards",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketLiquidityRewards>;
    deployContract(
      name: "IMarketRegistry",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IMarketRegistry>;
    deployContract(
      name: "IProtocolFee",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IProtocolFee>;
    deployContract(
      name: "IReputationManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IReputationManager>;
    deployContract(
      name: "ITellerV2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2>;
    deployContract(
      name: "ITellerV2Autopay",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Autopay>;
    deployContract(
      name: "ITellerV2Context",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Context>;
    deployContract(
      name: "ITellerV2Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITellerV2Storage>;
    deployContract(
      name: "IUniswapV2Router",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IUniswapV2Router>;
    deployContract(
      name: "IWETH",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IWETH>;
    deployContract(
      name: "CommitmentRolloverLoan",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CommitmentRolloverLoan>;
    deployContract(
      name: "ExtensionsContextUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ExtensionsContextUpgradeable>;
    deployContract(
      name: "FlashRolloverLoan_G1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G1>;
    deployContract(
      name: "FlashRolloverLoan_G2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan_G2>;
    deployContract(
      name: "FlashRolloverLoan",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashRolloverLoan>;
    deployContract(
      name: "LenderCommitmentForwarder_G1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G1>;
    deployContract(
      name: "LenderCommitmentForwarder_G2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G2>;
    deployContract(
      name: "LenderCommitmentForwarder_G3",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder_G3>;
    deployContract(
      name: "LenderCommitmentForwarder",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarder>;
    deployContract(
      name: "LenderCommitmentForwarderStaging",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderStaging>;
    deployContract(
      name: "LenderManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManager>;
    deployContract(
      name: "V2Calculations",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.V2Calculations>;
    deployContract(
      name: "MarketLiquidityRewards",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketLiquidityRewards>;
    deployContract(
      name: "MarketRegistry",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistry>;
    deployContract(
      name: "MetaForwarder",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MetaForwarder>;
    deployContract(
      name: "AavePoolAddressProviderMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolAddressProviderMock>;
    deployContract(
      name: "AavePoolMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.AavePoolMock>;
    deployContract(
      name: "CollateralManagerMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.CollateralManagerMock>;
    deployContract(
      name: "LenderCommitmentForwarderMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderCommitmentForwarderMock>;
    deployContract(
      name: "LenderManagerMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LenderManagerMock>;
    deployContract(
      name: "MarketRegistryMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MarketRegistryMock>;
    deployContract(
      name: "ReputationManagerMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManagerMock>;
    deployContract(
      name: "TellerASMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerASMock>;
    deployContract(
      name: "TellerV2SolMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2SolMock>;
    deployContract(
      name: "WethMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.WethMock>;
    deployContract(
      name: "ProtocolFee",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFee>;
    deployContract(
      name: "ProtocolFeeMock",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ProtocolFeeMock>;
    deployContract(
      name: "ReputationManager",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReputationManager>;
    deployContract(
      name: "TellerV0Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV0Storage>;
    deployContract(
      name: "TellerV2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2>;
    deployContract(
      name: "TellerV2Autopay",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Autopay>;
    deployContract(
      name: "TellerV2Context",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Context>;
    deployContract(
      name: "TellerV2MarketForwarder_G1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G1>;
    deployContract(
      name: "TellerV2MarketForwarder_G2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2MarketForwarder_G2>;
    deployContract(
      name: "TellerV2Storage_G0",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G0>;
    deployContract(
      name: "TellerV2Storage_G1",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G1>;
    deployContract(
      name: "TellerV2Storage_G2",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G2>;
    deployContract(
      name: "TellerV2Storage_G3",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G3>;
    deployContract(
      name: "TellerV2Storage_G4",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G4>;
    deployContract(
      name: "TellerV2Storage_G5",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage_G5>;
    deployContract(
      name: "TellerV2Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TellerV2Storage>;
    deployContract(
      name: "TLR",
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TLR>;

    // default types
    getContractFactory(
      name: string,
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<ethers.ContractFactory>;
    getContractFactory(
      abi: any[],
      bytecode: ethers.BytesLike,
      signer?: ethers.Signer
    ): Promise<ethers.ContractFactory>;
    getContractAt(
      nameOrAbi: string | any[],
      address: string | ethers.Addressable,
      signer?: ethers.Signer
    ): Promise<ethers.Contract>;
    deployContract(
      name: string,
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<ethers.Contract>;
    deployContract(
      name: string,
      args: any[],
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<ethers.Contract>;
  }
}
