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

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

import * as Contracts from ".";

declare module "hardhat/types/runtime" {
  interface HardhatEthersHelpers extends HardhatEthersHelpersBase {
    getContractFactory(
      name: "IGraphToken",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGraphToken__factory>;
    getContractFactory(
      name: "DataService",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DataService__factory>;
    getContractFactory(
      name: "DataServiceFees",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DataServiceFees__factory>;
    getContractFactory(
      name: "DataServiceFeesV1Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DataServiceFeesV1Storage__factory>;
    getContractFactory(
      name: "DataServicePausableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DataServicePausableUpgradeable__factory>;
    getContractFactory(
      name: "ProvisionTracker",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ProvisionTracker__factory>;
    getContractFactory(
      name: "ProvisionManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ProvisionManager__factory>;
    getContractFactory(
      name: "PPMMath",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.PPMMath__factory>;
    getContractFactory(
      name: "GraphDirectory",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.GraphDirectory__factory>;
    getContractFactory(
      name: "ITokenGateway",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ITokenGateway__factory>;
    getContractFactory(
      name: "ICuration",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ICuration__factory>;
    getContractFactory(
      name: "IEpochManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IEpochManager__factory>;
    getContractFactory(
      name: "IController",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IController__factory>;
    getContractFactory(
      name: "IGoverned",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGoverned__factory>;
    getContractFactory(
      name: "IRewardsIssuer",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IRewardsIssuer__factory>;
    getContractFactory(
      name: "IRewardsManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IRewardsManager__factory>;
    getContractFactory(
      name: "IGraphProxy",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGraphProxy__factory>;
    getContractFactory(
      name: "IGraphProxyAdmin",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGraphProxyAdmin__factory>;
    getContractFactory(
      name: "IDataService",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IDataService__factory>;
    getContractFactory(
      name: "IDataServiceFees",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IDataServiceFees__factory>;
    getContractFactory(
      name: "IDataServicePausable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IDataServicePausable__factory>;
    getContractFactory(
      name: "IAuthorizable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IAuthorizable__factory>;
    getContractFactory(
      name: "IGraphPayments",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGraphPayments__factory>;
    getContractFactory(
      name: "IGraphTallyCollector",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IGraphTallyCollector__factory>;
    getContractFactory(
      name: "IHorizonStaking",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IHorizonStaking__factory>;
    getContractFactory(
      name: "IHorizonStakingBase",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IHorizonStakingBase__factory>;
    getContractFactory(
      name: "IHorizonStakingExtension",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IHorizonStakingExtension__factory>;
    getContractFactory(
      name: "IHorizonStakingMain",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IHorizonStakingMain__factory>;
    getContractFactory(
      name: "ILinkedList",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ILinkedList__factory>;
    getContractFactory(
      name: "IPaymentsCollector",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IPaymentsCollector__factory>;
    getContractFactory(
      name: "IPaymentsEscrow",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IPaymentsEscrow__factory>;
    getContractFactory(
      name: "IDisputeManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IDisputeManager__factory>;
    getContractFactory(
      name: "IAllocation",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IAllocation__factory>;
    getContractFactory(
      name: "IAttestation",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IAttestation__factory>;
    getContractFactory(
      name: "ILegacyAllocation",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ILegacyAllocation__factory>;
    getContractFactory(
      name: "ISubgraphService",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ISubgraphService__factory>;
    getContractFactory(
      name: "OwnableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.OwnableUpgradeable__factory>;
    getContractFactory(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.Initializable__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: "MulticallUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.MulticallUpgradeable__factory>;
    getContractFactory(
      name: "PausableUpgradeable",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.PausableUpgradeable__factory>;
    getContractFactory(
      name: "IERC5267",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IERC5267__factory>;
    getContractFactory(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.IERC20__factory>;
    getContractFactory(
      name: "Address",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.Address__factory>;
    getContractFactory(
      name: "ECDSA",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.ECDSA__factory>;
    getContractFactory(
      name: "Errors",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.Errors__factory>;
    getContractFactory(
      name: "SafeCast",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.SafeCast__factory>;
    getContractFactory(
      name: "Strings",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.Strings__factory>;
    getContractFactory(
      name: "DisputeManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DisputeManager__factory>;
    getContractFactory(
      name: "DisputeManagerV1Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.DisputeManagerV1Storage__factory>;
    getContractFactory(
      name: "SubgraphService",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.SubgraphService__factory>;
    getContractFactory(
      name: "SubgraphServiceV1Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.SubgraphServiceV1Storage__factory>;
    getContractFactory(
      name: "AllocationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.AllocationManager__factory>;
    getContractFactory(
      name: "AllocationManagerV1Storage",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.AllocationManagerV1Storage__factory>;
    getContractFactory(
      name: "AttestationManager",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.AttestationManager__factory>;
    getContractFactory(
      name: "Directory",
      signerOrOptions?: ethers.Signer | FactoryOptions,
    ): Promise<Contracts.Directory__factory>;

    getContractAt(
      name: "IGraphToken",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGraphToken>;
    getContractAt(
      name: "DataService",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DataService>;
    getContractAt(
      name: "DataServiceFees",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DataServiceFees>;
    getContractAt(
      name: "DataServiceFeesV1Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DataServiceFeesV1Storage>;
    getContractAt(
      name: "DataServicePausableUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DataServicePausableUpgradeable>;
    getContractAt(
      name: "ProvisionTracker",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ProvisionTracker>;
    getContractAt(
      name: "ProvisionManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ProvisionManager>;
    getContractAt(
      name: "PPMMath",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.PPMMath>;
    getContractAt(
      name: "GraphDirectory",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.GraphDirectory>;
    getContractAt(
      name: "ITokenGateway",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ITokenGateway>;
    getContractAt(
      name: "ICuration",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ICuration>;
    getContractAt(
      name: "IEpochManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IEpochManager>;
    getContractAt(
      name: "IController",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IController>;
    getContractAt(
      name: "IGoverned",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGoverned>;
    getContractAt(
      name: "IRewardsIssuer",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IRewardsIssuer>;
    getContractAt(
      name: "IRewardsManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IRewardsManager>;
    getContractAt(
      name: "IGraphProxy",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGraphProxy>;
    getContractAt(
      name: "IGraphProxyAdmin",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGraphProxyAdmin>;
    getContractAt(
      name: "IDataService",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IDataService>;
    getContractAt(
      name: "IDataServiceFees",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IDataServiceFees>;
    getContractAt(
      name: "IDataServicePausable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IDataServicePausable>;
    getContractAt(
      name: "IAuthorizable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IAuthorizable>;
    getContractAt(
      name: "IGraphPayments",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGraphPayments>;
    getContractAt(
      name: "IGraphTallyCollector",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IGraphTallyCollector>;
    getContractAt(
      name: "IHorizonStaking",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IHorizonStaking>;
    getContractAt(
      name: "IHorizonStakingBase",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IHorizonStakingBase>;
    getContractAt(
      name: "IHorizonStakingExtension",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IHorizonStakingExtension>;
    getContractAt(
      name: "IHorizonStakingMain",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IHorizonStakingMain>;
    getContractAt(
      name: "ILinkedList",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ILinkedList>;
    getContractAt(
      name: "IPaymentsCollector",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IPaymentsCollector>;
    getContractAt(
      name: "IPaymentsEscrow",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IPaymentsEscrow>;
    getContractAt(
      name: "IDisputeManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IDisputeManager>;
    getContractAt(
      name: "IAllocation",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IAllocation>;
    getContractAt(
      name: "IAttestation",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IAttestation>;
    getContractAt(
      name: "ILegacyAllocation",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ILegacyAllocation>;
    getContractAt(
      name: "ISubgraphService",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ISubgraphService>;
    getContractAt(
      name: "OwnableUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.OwnableUpgradeable>;
    getContractAt(
      name: "Initializable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.Initializable>;
    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: "MulticallUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.MulticallUpgradeable>;
    getContractAt(
      name: "PausableUpgradeable",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.PausableUpgradeable>;
    getContractAt(
      name: "IERC5267",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IERC5267>;
    getContractAt(
      name: "IERC20",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.IERC20>;
    getContractAt(
      name: "Address",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.Address>;
    getContractAt(
      name: "ECDSA",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.ECDSA>;
    getContractAt(
      name: "Errors",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.Errors>;
    getContractAt(
      name: "SafeCast",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.SafeCast>;
    getContractAt(
      name: "Strings",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.Strings>;
    getContractAt(
      name: "DisputeManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DisputeManager>;
    getContractAt(
      name: "DisputeManagerV1Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.DisputeManagerV1Storage>;
    getContractAt(
      name: "SubgraphService",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.SubgraphService>;
    getContractAt(
      name: "SubgraphServiceV1Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.SubgraphServiceV1Storage>;
    getContractAt(
      name: "AllocationManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.AllocationManager>;
    getContractAt(
      name: "AllocationManagerV1Storage",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.AllocationManagerV1Storage>;
    getContractAt(
      name: "AttestationManager",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.AttestationManager>;
    getContractAt(
      name: "Directory",
      address: string | ethers.Addressable,
      signer?: ethers.Signer,
    ): Promise<Contracts.Directory>;

    deployContract(
      name: "IGraphToken",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphToken>;
    deployContract(
      name: "DataService",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataService>;
    deployContract(
      name: "DataServiceFees",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServiceFees>;
    deployContract(
      name: "DataServiceFeesV1Storage",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServiceFeesV1Storage>;
    deployContract(
      name: "DataServicePausableUpgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServicePausableUpgradeable>;
    deployContract(
      name: "ProvisionTracker",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ProvisionTracker>;
    deployContract(
      name: "ProvisionManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ProvisionManager>;
    deployContract(
      name: "PPMMath",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.PPMMath>;
    deployContract(
      name: "GraphDirectory",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.GraphDirectory>;
    deployContract(
      name: "ITokenGateway",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ITokenGateway>;
    deployContract(
      name: "ICuration",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ICuration>;
    deployContract(
      name: "IEpochManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IEpochManager>;
    deployContract(
      name: "IController",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IController>;
    deployContract(
      name: "IGoverned",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGoverned>;
    deployContract(
      name: "IRewardsIssuer",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IRewardsIssuer>;
    deployContract(
      name: "IRewardsManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IRewardsManager>;
    deployContract(
      name: "IGraphProxy",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphProxy>;
    deployContract(
      name: "IGraphProxyAdmin",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphProxyAdmin>;
    deployContract(
      name: "IDataService",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataService>;
    deployContract(
      name: "IDataServiceFees",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataServiceFees>;
    deployContract(
      name: "IDataServicePausable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataServicePausable>;
    deployContract(
      name: "IAuthorizable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAuthorizable>;
    deployContract(
      name: "IGraphPayments",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphPayments>;
    deployContract(
      name: "IGraphTallyCollector",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphTallyCollector>;
    deployContract(
      name: "IHorizonStaking",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStaking>;
    deployContract(
      name: "IHorizonStakingBase",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingBase>;
    deployContract(
      name: "IHorizonStakingExtension",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingExtension>;
    deployContract(
      name: "IHorizonStakingMain",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingMain>;
    deployContract(
      name: "ILinkedList",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ILinkedList>;
    deployContract(
      name: "IPaymentsCollector",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IPaymentsCollector>;
    deployContract(
      name: "IPaymentsEscrow",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IPaymentsEscrow>;
    deployContract(
      name: "IDisputeManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDisputeManager>;
    deployContract(
      name: "IAllocation",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAllocation>;
    deployContract(
      name: "IAttestation",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAttestation>;
    deployContract(
      name: "ILegacyAllocation",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ILegacyAllocation>;
    deployContract(
      name: "ISubgraphService",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ISubgraphService>;
    deployContract(
      name: "OwnableUpgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.OwnableUpgradeable>;
    deployContract(
      name: "Initializable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "ContextUpgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ContextUpgradeable>;
    deployContract(
      name: "EIP712Upgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.EIP712Upgradeable>;
    deployContract(
      name: "MulticallUpgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.MulticallUpgradeable>;
    deployContract(
      name: "PausableUpgradeable",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.PausableUpgradeable>;
    deployContract(
      name: "IERC5267",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IERC5267>;
    deployContract(
      name: "IERC20",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IERC20>;
    deployContract(
      name: "Address",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Address>;
    deployContract(
      name: "ECDSA",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ECDSA>;
    deployContract(
      name: "Errors",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Errors>;
    deployContract(
      name: "SafeCast",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SafeCast>;
    deployContract(
      name: "Strings",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Strings>;
    deployContract(
      name: "DisputeManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DisputeManager>;
    deployContract(
      name: "DisputeManagerV1Storage",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DisputeManagerV1Storage>;
    deployContract(
      name: "SubgraphService",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SubgraphService>;
    deployContract(
      name: "SubgraphServiceV1Storage",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SubgraphServiceV1Storage>;
    deployContract(
      name: "AllocationManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AllocationManager>;
    deployContract(
      name: "AllocationManagerV1Storage",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AllocationManagerV1Storage>;
    deployContract(
      name: "AttestationManager",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AttestationManager>;
    deployContract(
      name: "Directory",
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Directory>;

    deployContract(
      name: "IGraphToken",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphToken>;
    deployContract(
      name: "DataService",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataService>;
    deployContract(
      name: "DataServiceFees",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServiceFees>;
    deployContract(
      name: "DataServiceFeesV1Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServiceFeesV1Storage>;
    deployContract(
      name: "DataServicePausableUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DataServicePausableUpgradeable>;
    deployContract(
      name: "ProvisionTracker",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ProvisionTracker>;
    deployContract(
      name: "ProvisionManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ProvisionManager>;
    deployContract(
      name: "PPMMath",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.PPMMath>;
    deployContract(
      name: "GraphDirectory",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.GraphDirectory>;
    deployContract(
      name: "ITokenGateway",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ITokenGateway>;
    deployContract(
      name: "ICuration",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ICuration>;
    deployContract(
      name: "IEpochManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IEpochManager>;
    deployContract(
      name: "IController",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IController>;
    deployContract(
      name: "IGoverned",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGoverned>;
    deployContract(
      name: "IRewardsIssuer",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IRewardsIssuer>;
    deployContract(
      name: "IRewardsManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IRewardsManager>;
    deployContract(
      name: "IGraphProxy",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphProxy>;
    deployContract(
      name: "IGraphProxyAdmin",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphProxyAdmin>;
    deployContract(
      name: "IDataService",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataService>;
    deployContract(
      name: "IDataServiceFees",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataServiceFees>;
    deployContract(
      name: "IDataServicePausable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDataServicePausable>;
    deployContract(
      name: "IAuthorizable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAuthorizable>;
    deployContract(
      name: "IGraphPayments",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphPayments>;
    deployContract(
      name: "IGraphTallyCollector",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IGraphTallyCollector>;
    deployContract(
      name: "IHorizonStaking",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStaking>;
    deployContract(
      name: "IHorizonStakingBase",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingBase>;
    deployContract(
      name: "IHorizonStakingExtension",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingExtension>;
    deployContract(
      name: "IHorizonStakingMain",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IHorizonStakingMain>;
    deployContract(
      name: "ILinkedList",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ILinkedList>;
    deployContract(
      name: "IPaymentsCollector",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IPaymentsCollector>;
    deployContract(
      name: "IPaymentsEscrow",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IPaymentsEscrow>;
    deployContract(
      name: "IDisputeManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IDisputeManager>;
    deployContract(
      name: "IAllocation",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAllocation>;
    deployContract(
      name: "IAttestation",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IAttestation>;
    deployContract(
      name: "ILegacyAllocation",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ILegacyAllocation>;
    deployContract(
      name: "ISubgraphService",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ISubgraphService>;
    deployContract(
      name: "OwnableUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.OwnableUpgradeable>;
    deployContract(
      name: "Initializable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Initializable>;
    deployContract(
      name: "ContextUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ContextUpgradeable>;
    deployContract(
      name: "EIP712Upgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.EIP712Upgradeable>;
    deployContract(
      name: "MulticallUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.MulticallUpgradeable>;
    deployContract(
      name: "PausableUpgradeable",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.PausableUpgradeable>;
    deployContract(
      name: "IERC5267",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IERC5267>;
    deployContract(
      name: "IERC20",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.IERC20>;
    deployContract(
      name: "Address",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Address>;
    deployContract(
      name: "ECDSA",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.ECDSA>;
    deployContract(
      name: "Errors",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Errors>;
    deployContract(
      name: "SafeCast",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SafeCast>;
    deployContract(
      name: "Strings",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Strings>;
    deployContract(
      name: "DisputeManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DisputeManager>;
    deployContract(
      name: "DisputeManagerV1Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.DisputeManagerV1Storage>;
    deployContract(
      name: "SubgraphService",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SubgraphService>;
    deployContract(
      name: "SubgraphServiceV1Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.SubgraphServiceV1Storage>;
    deployContract(
      name: "AllocationManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AllocationManager>;
    deployContract(
      name: "AllocationManagerV1Storage",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AllocationManagerV1Storage>;
    deployContract(
      name: "AttestationManager",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.AttestationManager>;
    deployContract(
      name: "Directory",
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<Contracts.Directory>;

    // 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 | DeployContractOptions,
    ): Promise<ethers.Contract>;
    deployContract(
      name: string,
      args: any[],
      signerOrOptions?: ethers.Signer | DeployContractOptions,
    ): Promise<ethers.Contract>;
  }
}
