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

import { ArbRelayHubContract } from "./ArbRelayHub";
import { ArbSysContract } from "./ArbSys";
import { BasePaymasterContract } from "./BasePaymaster";
import { ERC165Contract } from "./ERC165";
import { ERC20Contract } from "./ERC20";
import { ERC2771RecipientContract } from "./ERC2771Recipient";
import { ForwarderContract } from "./Forwarder";
import { GsnEip712LibraryContract } from "./GsnEip712Library";
import { IERC165Contract } from "./IERC165";
import { IERC20Contract } from "./IERC20";
import { IERC20MetadataContract } from "./IERC20Metadata";
import { IERC20PermitContract } from "./IERC20Permit";
import { IERC20TokenContract } from "./IERC20Token";
import { IERC2771RecipientContract } from "./IERC2771Recipient";
import { IForwarderContract } from "./IForwarder";
import { IPaymasterContract } from "./IPaymaster";
import { IPenalizerContract } from "./IPenalizer";
import { IRelayHubContract } from "./IRelayHub";
import { IRelayRegistrarContract } from "./IRelayRegistrar";
import { IStakeManagerContract } from "./IStakeManager";
import { MigrationsContract } from "./Migrations";
import { OwnableContract } from "./Ownable";
import { PayableWithEmitContract } from "./PayableWithEmit";
import { PenalizerContract } from "./Penalizer";
import { RelayHubContract } from "./RelayHub";
import { RelayRegistrarContract } from "./RelayRegistrar";
import { StakeManagerContract } from "./StakeManager";
import { TestArbSysContract } from "./TestArbSys";
import { TestDecimalsTokenContract } from "./TestDecimalsToken";
import { TestForwarderContract } from "./TestForwarder";
import { TestForwarderTargetContract } from "./TestForwarderTarget";
import { TestGatewayForwarderContract } from "./TestGatewayForwarder";
import { TestPaymasterConfigurableMisbehaviorContract } from "./TestPaymasterConfigurableMisbehavior";
import { TestPaymasterEverythingAcceptedContract } from "./TestPaymasterEverythingAccepted";
import { TestPaymasterOwnerSignatureContract } from "./TestPaymasterOwnerSignature";
import { TestPaymasterPreconfiguredApprovalContract } from "./TestPaymasterPreconfiguredApproval";
import { TestPaymasterStoreContextContract } from "./TestPaymasterStoreContext";
import { TestPaymasterVariableGasLimitsContract } from "./TestPaymasterVariableGasLimits";
import { TestRecipientContract } from "./TestRecipient";
import { TestRecipientWithoutFallbackContract } from "./TestRecipientWithoutFallback";
import { TestRelayHubContract } from "./TestRelayHub";
import { TestRelayHubForRegistrarContract } from "./TestRelayHubForRegistrar";
import { TestRelayHubValidatorContract } from "./TestRelayHubValidator";
import { TestRelayWorkerContractContract } from "./TestRelayWorkerContract";
import { TestTokenContract } from "./TestToken";
import { TestUtilContract } from "./TestUtil";
import { TestWrappedNativeTokenContract } from "./TestWrappedNativeToken";

declare global {
  namespace Truffle {
    interface Artifacts {
      require(name: "ArbRelayHub"): ArbRelayHubContract;
      require(name: "ArbSys"): ArbSysContract;
      require(name: "BasePaymaster"): BasePaymasterContract;
      require(name: "ERC165"): ERC165Contract;
      require(name: "ERC20"): ERC20Contract;
      require(name: "ERC2771Recipient"): ERC2771RecipientContract;
      require(name: "Forwarder"): ForwarderContract;
      require(name: "GsnEip712Library"): GsnEip712LibraryContract;
      require(name: "IERC165"): IERC165Contract;
      require(name: "IERC20"): IERC20Contract;
      require(name: "IERC20Metadata"): IERC20MetadataContract;
      require(name: "IERC20Permit"): IERC20PermitContract;
      require(name: "IERC20Token"): IERC20TokenContract;
      require(name: "IERC2771Recipient"): IERC2771RecipientContract;
      require(name: "IForwarder"): IForwarderContract;
      require(name: "IPaymaster"): IPaymasterContract;
      require(name: "IPenalizer"): IPenalizerContract;
      require(name: "IRelayHub"): IRelayHubContract;
      require(name: "IRelayRegistrar"): IRelayRegistrarContract;
      require(name: "IStakeManager"): IStakeManagerContract;
      require(name: "Migrations"): MigrationsContract;
      require(name: "Ownable"): OwnableContract;
      require(name: "PayableWithEmit"): PayableWithEmitContract;
      require(name: "Penalizer"): PenalizerContract;
      require(name: "RelayHub"): RelayHubContract;
      require(name: "RelayRegistrar"): RelayRegistrarContract;
      require(name: "StakeManager"): StakeManagerContract;
      require(name: "TestArbSys"): TestArbSysContract;
      require(name: "TestDecimalsToken"): TestDecimalsTokenContract;
      require(name: "TestForwarder"): TestForwarderContract;
      require(name: "TestForwarderTarget"): TestForwarderTargetContract;
      require(name: "TestGatewayForwarder"): TestGatewayForwarderContract;
      require(
        name: "TestPaymasterConfigurableMisbehavior"
      ): TestPaymasterConfigurableMisbehaviorContract;
      require(
        name: "TestPaymasterEverythingAccepted"
      ): TestPaymasterEverythingAcceptedContract;
      require(
        name: "TestPaymasterOwnerSignature"
      ): TestPaymasterOwnerSignatureContract;
      require(
        name: "TestPaymasterPreconfiguredApproval"
      ): TestPaymasterPreconfiguredApprovalContract;
      require(
        name: "TestPaymasterStoreContext"
      ): TestPaymasterStoreContextContract;
      require(
        name: "TestPaymasterVariableGasLimits"
      ): TestPaymasterVariableGasLimitsContract;
      require(name: "TestRecipient"): TestRecipientContract;
      require(
        name: "TestRecipientWithoutFallback"
      ): TestRecipientWithoutFallbackContract;
      require(name: "TestRelayHub"): TestRelayHubContract;
      require(
        name: "TestRelayHubForRegistrar"
      ): TestRelayHubForRegistrarContract;
      require(name: "TestRelayHubValidator"): TestRelayHubValidatorContract;
      require(name: "TestRelayWorkerContract"): TestRelayWorkerContractContract;
      require(name: "TestToken"): TestTokenContract;
      require(name: "TestUtil"): TestUtilContract;
      require(name: "TestWrappedNativeToken"): TestWrappedNativeTokenContract;
    }
  }
}

export { ArbRelayHubContract, ArbRelayHubInstance } from "./ArbRelayHub";
export { ArbSysContract, ArbSysInstance } from "./ArbSys";
export { BasePaymasterContract, BasePaymasterInstance } from "./BasePaymaster";
export { ERC165Contract, ERC165Instance } from "./ERC165";
export { ERC20Contract, ERC20Instance } from "./ERC20";
export {
  ERC2771RecipientContract,
  ERC2771RecipientInstance,
} from "./ERC2771Recipient";
export { ForwarderContract, ForwarderInstance } from "./Forwarder";
export {
  GsnEip712LibraryContract,
  GsnEip712LibraryInstance,
} from "./GsnEip712Library";
export { IERC165Contract, IERC165Instance } from "./IERC165";
export { IERC20Contract, IERC20Instance } from "./IERC20";
export {
  IERC20MetadataContract,
  IERC20MetadataInstance,
} from "./IERC20Metadata";
export { IERC20PermitContract, IERC20PermitInstance } from "./IERC20Permit";
export { IERC20TokenContract, IERC20TokenInstance } from "./IERC20Token";
export {
  IERC2771RecipientContract,
  IERC2771RecipientInstance,
} from "./IERC2771Recipient";
export { IForwarderContract, IForwarderInstance } from "./IForwarder";
export { IPaymasterContract, IPaymasterInstance } from "./IPaymaster";
export { IPenalizerContract, IPenalizerInstance } from "./IPenalizer";
export { IRelayHubContract, IRelayHubInstance } from "./IRelayHub";
export {
  IRelayRegistrarContract,
  IRelayRegistrarInstance,
} from "./IRelayRegistrar";
export { IStakeManagerContract, IStakeManagerInstance } from "./IStakeManager";
export { MigrationsContract, MigrationsInstance } from "./Migrations";
export { OwnableContract, OwnableInstance } from "./Ownable";
export {
  PayableWithEmitContract,
  PayableWithEmitInstance,
} from "./PayableWithEmit";
export { PenalizerContract, PenalizerInstance } from "./Penalizer";
export { RelayHubContract, RelayHubInstance } from "./RelayHub";
export {
  RelayRegistrarContract,
  RelayRegistrarInstance,
} from "./RelayRegistrar";
export { StakeManagerContract, StakeManagerInstance } from "./StakeManager";
export { TestArbSysContract, TestArbSysInstance } from "./TestArbSys";
export {
  TestDecimalsTokenContract,
  TestDecimalsTokenInstance,
} from "./TestDecimalsToken";
export { TestForwarderContract, TestForwarderInstance } from "./TestForwarder";
export {
  TestForwarderTargetContract,
  TestForwarderTargetInstance,
} from "./TestForwarderTarget";
export {
  TestGatewayForwarderContract,
  TestGatewayForwarderInstance,
} from "./TestGatewayForwarder";
export {
  TestPaymasterConfigurableMisbehaviorContract,
  TestPaymasterConfigurableMisbehaviorInstance,
} from "./TestPaymasterConfigurableMisbehavior";
export {
  TestPaymasterEverythingAcceptedContract,
  TestPaymasterEverythingAcceptedInstance,
} from "./TestPaymasterEverythingAccepted";
export {
  TestPaymasterOwnerSignatureContract,
  TestPaymasterOwnerSignatureInstance,
} from "./TestPaymasterOwnerSignature";
export {
  TestPaymasterPreconfiguredApprovalContract,
  TestPaymasterPreconfiguredApprovalInstance,
} from "./TestPaymasterPreconfiguredApproval";
export {
  TestPaymasterStoreContextContract,
  TestPaymasterStoreContextInstance,
} from "./TestPaymasterStoreContext";
export {
  TestPaymasterVariableGasLimitsContract,
  TestPaymasterVariableGasLimitsInstance,
} from "./TestPaymasterVariableGasLimits";
export { TestRecipientContract, TestRecipientInstance } from "./TestRecipient";
export {
  TestRecipientWithoutFallbackContract,
  TestRecipientWithoutFallbackInstance,
} from "./TestRecipientWithoutFallback";
export { TestRelayHubContract, TestRelayHubInstance } from "./TestRelayHub";
export {
  TestRelayHubForRegistrarContract,
  TestRelayHubForRegistrarInstance,
} from "./TestRelayHubForRegistrar";
export {
  TestRelayHubValidatorContract,
  TestRelayHubValidatorInstance,
} from "./TestRelayHubValidator";
export {
  TestRelayWorkerContractContract,
  TestRelayWorkerContractInstance,
} from "./TestRelayWorkerContract";
export { TestTokenContract, TestTokenInstance } from "./TestToken";
export { TestUtilContract, TestUtilInstance } from "./TestUtil";
export {
  TestWrappedNativeTokenContract,
  TestWrappedNativeTokenInstance,
} from "./TestWrappedNativeToken";