"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SpokePoolVerifier__factory = void 0;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
const ethers_1 = require("ethers");
const _abi = [
    {
        inputs: [],
        name: "InvalidMsgValue",
        type: "error",
    },
    {
        inputs: [],
        name: "InvalidSpokePool",
        type: "error",
    },
    {
        inputs: [
            {
                internalType: "contract V3SpokePoolInterface",
                name: "spokePool",
                type: "address",
            },
            {
                internalType: "bytes32",
                name: "recipient",
                type: "bytes32",
            },
            {
                internalType: "bytes32",
                name: "inputToken",
                type: "bytes32",
            },
            {
                internalType: "uint256",
                name: "inputAmount",
                type: "uint256",
            },
            {
                internalType: "bytes32",
                name: "outputToken",
                type: "bytes32",
            },
            {
                internalType: "uint256",
                name: "outputAmount",
                type: "uint256",
            },
            {
                internalType: "uint256",
                name: "destinationChainId",
                type: "uint256",
            },
            {
                internalType: "bytes32",
                name: "exclusiveRelayer",
                type: "bytes32",
            },
            {
                internalType: "uint32",
                name: "quoteTimestamp",
                type: "uint32",
            },
            {
                internalType: "uint32",
                name: "fillDeadline",
                type: "uint32",
            },
            {
                internalType: "uint32",
                name: "exclusivityDeadline",
                type: "uint32",
            },
            {
                internalType: "bytes",
                name: "message",
                type: "bytes",
            },
        ],
        name: "deposit",
        outputs: [],
        stateMutability: "payable",
        type: "function",
    },
];
const _bytecode = "0x60808060405234601557610338908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c63c92192a614610027575f80fd5b6101807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102405760043573ffffffffffffffffffffffffffffffffffffffff81168091036102405760643590610104359063ffffffff821680920361024057610124359163ffffffff831680930361024057610144359463ffffffff861680960361024057610164359467ffffffffffffffff8611610240573660238701121561024057856004013567ffffffffffffffff81116102945761011560207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601846102c1565b8083526020830196366024838301011161024057815f926024602093018a378401015280340361026c57833b1561024457833b15610240577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f5f976101a4946040519a8b998a9889977fad5425c60000000000000000000000000000000000000000000000000000000089523360048a015260243560248a015260443560448a015260843560648a0152608489015260a43560a489015260c43560c489015260e43560e4890152610104880152610124870152610144860152610180610164860152518091816101848701528686015e888582860101520116810103019134905af1801561023557610227575080f35b61023391505f906102c1565b005b6040513d5f823e3d90fd5b5f80fd5b7fb474246c000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f1841b4e1000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102945760405256fea264697066735822122058ba6983242e4a5f22a8f4257c3ad519340e2f85d58d391b837928bac9ba35f564736f6c634300081e0033";
const isSuperArgs = (xs) => xs.length > 1;
class SpokePoolVerifier__factory extends ethers_1.ContractFactory {
    constructor(...args) {
        if (isSuperArgs(args)) {
            super(...args);
        }
        else {
            super(_abi, _bytecode, args[0]);
        }
    }
    deploy(overrides) {
        return super.deploy(overrides || {});
    }
    getDeployTransaction(overrides) {
        return super.getDeployTransaction(overrides || {});
    }
    attach(address) {
        return super.attach(address);
    }
    connect(signer) {
        return super.connect(signer);
    }
    static createInterface() {
        return new ethers_1.utils.Interface(_abi);
    }
    static connect(address, signerOrProvider) {
        return new ethers_1.Contract(address, _abi, signerOrProvider);
    }
}
exports.SpokePoolVerifier__factory = SpokePoolVerifier__factory;
SpokePoolVerifier__factory.bytecode = _bytecode;
SpokePoolVerifier__factory.abi = _abi;
