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

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

import * as Contracts from ".";

declare module "hardhat/types/runtime" {
  interface HardhatEthersHelpers extends HardhatEthersHelpersBase {
    getContractFactory(
      name: "Ownable",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Ownable__factory>;
    getContractFactory(
      name: "IERC3156FlashBorrower",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC3156FlashBorrower__factory>;
    getContractFactory(
      name: "IERC3156FlashLender",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC3156FlashLender__factory>;
    getContractFactory(
      name: "ERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ERC20__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: "IPyth",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPyth__factory>;
    getContractFactory(
      name: "IPythEvents",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPythEvents__factory>;
    getContractFactory(
      name: "FlashLoan",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FlashLoan__factory>;
    getContractFactory(
      name: "VariableBorrow",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.VariableBorrow__factory>;
    getContractFactory(
      name: "IVariableBorrow",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IVariableBorrow__factory>;
    getContractFactory(
      name: "VariableBorrowRouter",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.VariableBorrowRouter__factory>;
    getContractFactory(
      name: "IBorrowRouter",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBorrowRouter__factory>;
    getContractFactory(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20__factory>;
    getContractFactory(
      name: "IOracle",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IOracle__factory>;
    getContractFactory(
      name: "VariableBorrowRouterReader",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.VariableBorrowRouterReader__factory>;
    getContractFactory(
      name: "DecimalERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.DecimalERC20__factory>;
    getContractFactory(
      name: "Future",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Future__factory>;
    getContractFactory(
      name: "FutureLimit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FutureLimit__factory>;
    getContractFactory(
      name: "FuturePriceFeed",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FuturePriceFeed__factory>;
    getContractFactory(
      name: "FutureReader",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FutureReader__factory>;
    getContractFactory(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20__factory>;
    getContractFactory(
      name: "FutureRouter",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FutureRouter__factory>;
    getContractFactory(
      name: "FutureUtil",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FutureUtil__factory>;
    getContractFactory(
      name: "IBorrowForSwap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBorrowForSwap__factory>;
    getContractFactory(
      name: "IFastPriceEvent",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFastPriceEvent__factory>;
    getContractFactory(
      name: "IFastPriceFeed",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFastPriceFeed__factory>;
    getContractFactory(
      name: "IFuture",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFuture__factory>;
    getContractFactory(
      name: "IFutureLimit",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFutureLimit__factory>;
    getContractFactory(
      name: "IFuturePriceFeed",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFuturePriceFeed__factory>;
    getContractFactory(
      name: "IFutureUtil",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IFutureUtil__factory>;
    getContractFactory(
      name: "IOracle",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IOracle__factory>;
    getContractFactory(
      name: "IPriceFeed",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IPriceFeed__factory>;
    getContractFactory(
      name: "ISwap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ISwap__factory>;
    getContractFactory(
      name: "ISwapForBorrow",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ISwapForBorrow__factory>;
    getContractFactory(
      name: "ISwapForFuture",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ISwapForFuture__factory>;
    getContractFactory(
      name: "ITradeStakeUpdater",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITradeStakeUpdater__factory>;
    getContractFactory(
      name: "IWETH",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IWETH__factory>;
    getContractFactory(
      name: "FutureTradeFeeCapture",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FutureTradeFeeCapture__factory>;
    getContractFactory(
      name: "OTAuction",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OTAuction__factory>;
    getContractFactory(
      name: "OTAuctionPreset",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OTAuctionPreset__factory>;
    getContractFactory(
      name: "IBorrow",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBorrow__factory>;
    getContractFactory(
      name: "IBorrowPrice",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IBorrowPrice__factory>;
    getContractFactory(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IERC20__factory>;
    getContractFactory(
      name: "IStake",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IStake__factory>;
    getContractFactory(
      name: "ISwap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ISwap__factory>;
    getContractFactory(
      name: "Reader",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Reader__factory>;
    getContractFactory(
      name: "SaleToken",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.SaleToken__factory>;
    getContractFactory(
      name: "Timelock",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Timelock__factory>;
    getContractFactory(
      name: "FastPriceEvent",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FastPriceEvent__factory>;
    getContractFactory(
      name: "FastPriceFeed",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FastPriceFeed__factory>;
    getContractFactory(
      name: "FastPriceFeedPyth",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.FastPriceFeedPyth__factory>;
    getContractFactory(
      name: "DecimalERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.DecimalERC20__factory>;
    getContractFactory(
      name: "SwapPriceProxy",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.SwapPriceProxy__factory>;
    getContractFactory(
      name: "IReferralStorage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.IReferralStorage__factory>;
    getContractFactory(
      name: "ReferralReader",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReferralReader__factory>;
    getContractFactory(
      name: "ReferralStorage",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ReferralStorage__factory>;
    getContractFactory(
      name: "Stake",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Stake__factory>;
    getContractFactory(
      name: "StakeOSD",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.StakeOSD__factory>;
    getContractFactory(
      name: "StakeRevenue",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.StakeRevenue__factory>;
    getContractFactory(
      name: "StakeVOT",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.StakeVOT__factory>;
    getContractFactory(
      name: "TradeStake",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TradeStake__factory>;
    getContractFactory(
      name: "ISwap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ISwap__factory>;
    getContractFactory(
      name: "ITradeStake",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ITradeStake__factory>;
    getContractFactory(
      name: "TradeStakeUpdater",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TradeStakeUpdater__factory>;
    getContractFactory(
      name: "Liquidity",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Liquidity__factory>;
    getContractFactory(
      name: "PropertyERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.PropertyERC20__factory>;
    getContractFactory(
      name: "Osd",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Osd__factory>;
    getContractFactory(
      name: "DecimalERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.DecimalERC20__factory>;
    getContractFactory(
      name: "Swap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Swap__factory>;
    getContractFactory(
      name: "SwapRouter",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.SwapRouter__factory>;
    getContractFactory(
      name: "Faucet",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Faucet__factory>;
    getContractFactory(
      name: "Greeter",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.Greeter__factory>;
    getContractFactory(
      name: "MockBorrow",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MockBorrow__factory>;
    getContractFactory(
      name: "MockFlashBorrower",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MockFlashBorrower__factory>;
    getContractFactory(
      name: "MockOracle",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MockOracle__factory>;
    getContractFactory(
      name: "MockSwap",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MockSwap__factory>;
    getContractFactory(
      name: "MyERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.MyERC20__factory>;
    getContractFactory(
      name: "TokenIcon",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.TokenIcon__factory>;
    getContractFactory(
      name: "BTC",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.BTC__factory>;
    getContractFactory(
      name: "LpOT",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.LpOT__factory>;
    getContractFactory(
      name: "ORDI",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.ORDI__factory>;
    getContractFactory(
      name: "OT",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.OT__factory>;
    getContractFactory(
      name: "VirtualToken",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.VirtualToken__factory>;
    getContractFactory(
      name: "VOT",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.VOT__factory>;
    getContractFactory(
      name: "WETH9",
      signerOrOptions?: ethers.Signer | FactoryOptions
    ): Promise<Contracts.WETH9__factory>;

    getContractAt(
      name: "Ownable",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Ownable>;
    getContractAt(
      name: "IERC3156FlashBorrower",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC3156FlashBorrower>;
    getContractAt(
      name: "IERC3156FlashLender",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC3156FlashLender>;
    getContractAt(
      name: "ERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ERC20>;
    getContractAt(
      name: "IERC20Metadata",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20Metadata>;
    getContractAt(
      name: "IERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "IPyth",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IPyth>;
    getContractAt(
      name: "IPythEvents",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IPythEvents>;
    getContractAt(
      name: "FlashLoan",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FlashLoan>;
    getContractAt(
      name: "VariableBorrow",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.VariableBorrow>;
    getContractAt(
      name: "IVariableBorrow",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IVariableBorrow>;
    getContractAt(
      name: "VariableBorrowRouter",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.VariableBorrowRouter>;
    getContractAt(
      name: "IBorrowRouter",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IBorrowRouter>;
    getContractAt(
      name: "IERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "IOracle",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IOracle>;
    getContractAt(
      name: "VariableBorrowRouterReader",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.VariableBorrowRouterReader>;
    getContractAt(
      name: "DecimalERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.DecimalERC20>;
    getContractAt(
      name: "Future",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Future>;
    getContractAt(
      name: "FutureLimit",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FutureLimit>;
    getContractAt(
      name: "FuturePriceFeed",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FuturePriceFeed>;
    getContractAt(
      name: "FutureReader",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FutureReader>;
    getContractAt(
      name: "IERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "FutureRouter",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FutureRouter>;
    getContractAt(
      name: "FutureUtil",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FutureUtil>;
    getContractAt(
      name: "IBorrowForSwap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IBorrowForSwap>;
    getContractAt(
      name: "IFastPriceEvent",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFastPriceEvent>;
    getContractAt(
      name: "IFastPriceFeed",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFastPriceFeed>;
    getContractAt(
      name: "IFuture",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFuture>;
    getContractAt(
      name: "IFutureLimit",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFutureLimit>;
    getContractAt(
      name: "IFuturePriceFeed",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFuturePriceFeed>;
    getContractAt(
      name: "IFutureUtil",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IFutureUtil>;
    getContractAt(
      name: "IOracle",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IOracle>;
    getContractAt(
      name: "IPriceFeed",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IPriceFeed>;
    getContractAt(
      name: "ISwap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ISwap>;
    getContractAt(
      name: "ISwapForBorrow",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ISwapForBorrow>;
    getContractAt(
      name: "ISwapForFuture",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ISwapForFuture>;
    getContractAt(
      name: "ITradeStakeUpdater",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ITradeStakeUpdater>;
    getContractAt(
      name: "IWETH",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IWETH>;
    getContractAt(
      name: "FutureTradeFeeCapture",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FutureTradeFeeCapture>;
    getContractAt(
      name: "OTAuction",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.OTAuction>;
    getContractAt(
      name: "OTAuctionPreset",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.OTAuctionPreset>;
    getContractAt(
      name: "IBorrow",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IBorrow>;
    getContractAt(
      name: "IBorrowPrice",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IBorrowPrice>;
    getContractAt(
      name: "IERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "IStake",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IStake>;
    getContractAt(
      name: "ISwap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ISwap>;
    getContractAt(
      name: "Reader",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Reader>;
    getContractAt(
      name: "SaleToken",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.SaleToken>;
    getContractAt(
      name: "Timelock",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Timelock>;
    getContractAt(
      name: "FastPriceEvent",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FastPriceEvent>;
    getContractAt(
      name: "FastPriceFeed",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FastPriceFeed>;
    getContractAt(
      name: "FastPriceFeedPyth",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.FastPriceFeedPyth>;
    getContractAt(
      name: "DecimalERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.DecimalERC20>;
    getContractAt(
      name: "SwapPriceProxy",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.SwapPriceProxy>;
    getContractAt(
      name: "IReferralStorage",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.IReferralStorage>;
    getContractAt(
      name: "ReferralReader",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ReferralReader>;
    getContractAt(
      name: "ReferralStorage",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ReferralStorage>;
    getContractAt(
      name: "Stake",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Stake>;
    getContractAt(
      name: "StakeOSD",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.StakeOSD>;
    getContractAt(
      name: "StakeRevenue",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.StakeRevenue>;
    getContractAt(
      name: "StakeVOT",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.StakeVOT>;
    getContractAt(
      name: "TradeStake",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.TradeStake>;
    getContractAt(
      name: "ISwap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ISwap>;
    getContractAt(
      name: "ITradeStake",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ITradeStake>;
    getContractAt(
      name: "TradeStakeUpdater",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.TradeStakeUpdater>;
    getContractAt(
      name: "Liquidity",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Liquidity>;
    getContractAt(
      name: "PropertyERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.PropertyERC20>;
    getContractAt(
      name: "Osd",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Osd>;
    getContractAt(
      name: "DecimalERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.DecimalERC20>;
    getContractAt(
      name: "Swap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Swap>;
    getContractAt(
      name: "SwapRouter",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.SwapRouter>;
    getContractAt(
      name: "Faucet",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Faucet>;
    getContractAt(
      name: "Greeter",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.Greeter>;
    getContractAt(
      name: "MockBorrow",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.MockBorrow>;
    getContractAt(
      name: "MockFlashBorrower",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.MockFlashBorrower>;
    getContractAt(
      name: "MockOracle",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.MockOracle>;
    getContractAt(
      name: "MockSwap",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.MockSwap>;
    getContractAt(
      name: "MyERC20",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.MyERC20>;
    getContractAt(
      name: "TokenIcon",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.TokenIcon>;
    getContractAt(
      name: "BTC",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.BTC>;
    getContractAt(
      name: "LpOT",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.LpOT>;
    getContractAt(
      name: "ORDI",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.ORDI>;
    getContractAt(
      name: "OT",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.OT>;
    getContractAt(
      name: "VirtualToken",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.VirtualToken>;
    getContractAt(
      name: "VOT",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.VOT>;
    getContractAt(
      name: "WETH9",
      address: string,
      signer?: ethers.Signer
    ): Promise<Contracts.WETH9>;

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