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

import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
import { Provider, TransactionRequest } from "@ethersproject/providers";
import type { DutchAuction, DutchAuctionInterface } from "../DutchAuction";

const _abi = [
  {
    inputs: [
      {
        internalType: "address",
        name: "",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
      {
        internalType: "bytes",
        name: "",
        type: "bytes",
      },
      {
        internalType: "address",
        name: "",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
      {
        internalType: "address",
        name: "",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
    ],
    name: "canBid",
    outputs: [
      {
        internalType: "bool",
        name: "",
        type: "bool",
      },
    ],
    stateMutability: "pure",
    type: "function",
  },
  {
    inputs: [
      {
        internalType: "address",
        name: "proxy",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "deadline",
        type: "uint256",
      },
      {
        internalType: "bytes",
        name: "params",
        type: "bytes",
      },
      {
        internalType: "address",
        name: "",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "bidPrice",
        type: "uint256",
      },
      {
        internalType: "address",
        name: "",
        type: "address",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
      {
        internalType: "uint256",
        name: "",
        type: "uint256",
      },
    ],
    name: "canClaim",
    outputs: [
      {
        internalType: "bool",
        name: "",
        type: "bool",
      },
    ],
    stateMutability: "view",
    type: "function",
  },
];

const _bytecode =
  "0x608060405234801561001057600080fd5b506103cf806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063610e2d3b1461003b578063e9b3838f14610062575b600080fd5b61004e6100493660046101e6565b61007e565b604051901515815260200160405180910390f35b61004e6100703660046101e6565b600098975050505050505050565b6000806000808980602001905181019061009891906102ea565b9250925092508183116100f25760405162461bcd60e51b815260206004820152601a60248201527f53484f59553a20494e56414c49445f50524943455f52414e474500000000000060448201526064015b60405180910390fd5b8a81106101415760405162461bcd60e51b815260206004820152601960248201527f53484f59553a20494e56414c49445f535441525445445f41540000000000000060448201526064016100e9565b600061014d828d610356565b6101578486610356565b6101619190610317565b905060008c42101561019157816101788442610356565b6101829190610337565b61018c9086610356565b610193565b835b90506001600160a01b038e161515806101ac57508c4211155b80156101b85750808a10155b9e9d5050505050505050505050505050565b80356001600160a01b03811681146101e157600080fd5b919050565b600080600080600080600080610100898b031215610202578384fd5b61020b896101ca565b975060208901359650604089013567ffffffffffffffff8082111561022e578586fd5b818b0191508b601f830112610241578586fd5b81358181111561025357610253610383565b604051601f8201601f19908116603f0116810190838211818310171561027b5761027b610383565b816040528281528e6020848701011115610293578889fd5b826020860160208301379182016020018890525097506102b891505060608a016101ca565b9450608089013593506102cd60a08a016101ca565b925060c0890135915060e089013590509295985092959890939650565b6000806000606084860312156102fe578283fd5b8351925060208401519150604084015190509250925092565b60008261033257634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156103515761035161036d565b500290565b6000828210156103685761036861036d565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220de7ea097550ffbecf008a559649d04012f53a4a8636d9b63bee73bf1dfe18ee764736f6c63430008030033";

export class DutchAuction__factory extends ContractFactory {
  constructor(signer?: Signer) {
    super(_abi, _bytecode, signer);
  }

  deploy(
    overrides?: Overrides & { from?: string | Promise<string> }
  ): Promise<DutchAuction> {
    return super.deploy(overrides || {}) as Promise<DutchAuction>;
  }
  getDeployTransaction(
    overrides?: Overrides & { from?: string | Promise<string> }
  ): TransactionRequest {
    return super.getDeployTransaction(overrides || {});
  }
  attach(address: string): DutchAuction {
    return super.attach(address) as DutchAuction;
  }
  connect(signer: Signer): DutchAuction__factory {
    return super.connect(signer) as DutchAuction__factory;
  }
  static readonly bytecode = _bytecode;
  static readonly abi = _abi;
  static createInterface(): DutchAuctionInterface {
    return new utils.Interface(_abi) as DutchAuctionInterface;
  }
  static connect(
    address: string,
    signerOrProvider: Signer | Provider
  ): DutchAuction {
    return new Contract(address, _abi, signerOrProvider) as DutchAuction;
  }
}