import { Signer } from "ethers";
import type { Provider } from "@ethersproject/providers";
import type { SpokePool, SpokePoolInterface } from "../../contracts/SpokePool";
export declare class SpokePool__factory {
    static readonly abi: readonly [{
        readonly inputs: readonly [];
        readonly name: "ClaimedMerkleLeaf";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "DepositsArePaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "DisabledRoute";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ExpiredFillDeadline";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "FillsArePaused";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InsufficientSpokePoolBalanceToExecuteLeaf";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidBytes32";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidChainId";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidCrossDomainAdmin";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidDepositorSignature";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidExclusiveRelayer";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidFillDeadline";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidMerkleLeaf";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidMerkleProof";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidPayoutAdjustmentPct";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidQuoteTimestamp";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidRelayerFeePct";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidSlowFillRequest";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidWithdrawalRecipient";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }];
        readonly name: "LowLevelCallFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MaxTransferSizeExceeded";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MsgValueDoesNotMatchInputAmount";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NoRelayerRefundToClaim";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NoSlowFillsInExclusivityWindow";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotEOA";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotExclusiveRelayer";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "RelayFilled";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "WrongERC7683OrderId";
        readonly type: "error";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "previousAdmin";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "newAdmin";
            readonly type: "address";
        }];
        readonly name: "AdminChanged";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "beacon";
            readonly type: "address";
        }];
        readonly name: "BeaconUpgraded";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "l2TokenAddress";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "refundAddress";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "caller";
            readonly type: "address";
        }];
        readonly name: "ClaimedRelayerRefund";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "rootBundleId";
            readonly type: "uint256";
        }];
        readonly name: "EmergencyDeletedRootBundle";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "originToken";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "enabled";
            readonly type: "bool";
        }];
        readonly name: "EnabledDepositRoute";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amountToReturn";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "chainId";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256[]";
            readonly name: "refundAmounts";
            readonly type: "uint256[]";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "rootBundleId";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "leafId";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "l2TokenAddress";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address[]";
            readonly name: "refundAddresses";
            readonly type: "address[]";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "deferredRefunds";
            readonly type: "bool";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "caller";
            readonly type: "address";
        }];
        readonly name: "ExecutedRelayerRefundRoot";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "repaymentChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "originChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "relayer";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "messageHash";
            readonly type: "bytes32";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "updatedRecipient";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "updatedMessageHash";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "updatedOutputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "enum V3SpokePoolInterface.FillType";
                readonly name: "fillType";
                readonly type: "uint8";
            }];
            readonly indexed: false;
            readonly internalType: "struct V3SpokePoolInterface.V3RelayExecutionEventInfo";
            readonly name: "relayExecutionInfo";
            readonly type: "tuple";
        }];
        readonly name: "FilledRelay";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "inputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "outputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "repaymentChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "originChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "depositId";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "exclusiveRelayer";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "relayer";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }, {
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "updatedRecipient";
                readonly type: "address";
            }, {
                readonly internalType: "bytes";
                readonly name: "updatedMessage";
                readonly type: "bytes";
            }, {
                readonly internalType: "uint256";
                readonly name: "updatedOutputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "enum V3SpokePoolInterface.FillType";
                readonly name: "fillType";
                readonly type: "uint8";
            }];
            readonly indexed: false;
            readonly internalType: "struct V3SpokePoolInterface.LegacyV3RelayExecutionEventInfo";
            readonly name: "relayExecutionInfo";
            readonly type: "tuple";
        }];
        readonly name: "FilledV3Relay";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "FundsDeposited";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint8";
            readonly name: "version";
            readonly type: "uint8";
        }];
        readonly name: "Initialized";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "isPaused";
            readonly type: "bool";
        }];
        readonly name: "PausedDeposits";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "isPaused";
            readonly type: "bool";
        }];
        readonly name: "PausedFills";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "rootBundleId";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "relayerRefundRoot";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "slowRelayRoot";
            readonly type: "bytes32";
        }];
        readonly name: "RelayedRootBundle";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "originChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "messageHash";
            readonly type: "bytes32";
        }];
        readonly name: "RequestedSlowFill";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "updatedOutputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "updatedRecipient";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "updatedMessage";
            readonly type: "bytes";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "depositorSignature";
            readonly type: "bytes";
        }];
        readonly name: "RequestedSpeedUpDeposit";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "updatedOutputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "depositId";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "updatedRecipient";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "updatedMessage";
            readonly type: "bytes";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "depositorSignature";
            readonly type: "bytes";
        }];
        readonly name: "RequestedSpeedUpV3Deposit";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "inputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "outputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "originChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "depositId";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "exclusiveRelayer";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "RequestedV3SlowFill";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "newWithdrawalRecipient";
            readonly type: "address";
        }];
        readonly name: "SetWithdrawalRecipient";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "newAdmin";
            readonly type: "address";
        }];
        readonly name: "SetXDomainAdmin";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amountToReturn";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "chainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "leafId";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "l2TokenAddress";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "caller";
            readonly type: "address";
        }];
        readonly name: "TokensBridged";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "implementation";
            readonly type: "address";
        }];
        readonly name: "Upgraded";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "inputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "outputToken";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "uint32";
            readonly name: "depositId";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32";
            readonly name: "exclusivityDeadline";
            readonly type: "uint32";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "exclusiveRelayer";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "V3FundsDeposited";
        readonly type: "event";
    }, {
        readonly inputs: readonly [];
        readonly name: "EMPTY_RELAYER";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "EMPTY_REPAYMENT_CHAIN_ID";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "INFINITE_FILL_DEADLINE";
        readonly outputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "MAX_EXCLUSIVITY_PERIOD_SECONDS";
        readonly outputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "MAX_TRANSFER_SIZE";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "UPDATE_ADDRESS_DEPOSIT_DETAILS_HASH";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "UPDATE_BYTES32_DEPOSIT_DETAILS_HASH";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "_initialDepositId";
            readonly type: "uint32";
        }, {
            readonly internalType: "address";
            readonly name: "_crossDomainAdmin";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_withdrawalRecipient";
            readonly type: "address";
        }];
        readonly name: "__SpokePool_init";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "chainId";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "l2TokenAddress";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "refundAddress";
            readonly type: "bytes32";
        }];
        readonly name: "claimRelayerRefund";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "crossDomainAdmin";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "exclusivityParameter";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "deposit";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "originToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "int64";
            readonly name: "relayerFeePct";
            readonly type: "int64";
        }, {
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "depositDeprecated_5947912356";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "originToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "int64";
            readonly name: "relayerFeePct";
            readonly type: "int64";
        }, {
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "depositFor";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint32";
            readonly name: "fillDeadlineOffset";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "exclusivityParameter";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "depositNow";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "depositQuoteTimeBuffer";
        readonly outputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "inputToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "outputToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "exclusiveRelayer";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "exclusivityParameter";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "depositV3";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "inputToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "outputToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "exclusiveRelayer";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "fillDeadlineOffset";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "exclusivityParameter";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "depositV3Now";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "rootBundleId";
            readonly type: "uint256";
        }];
        readonly name: "emergencyDeleteRootBundle";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "enabledDepositRoutes";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "rootBundleId";
            readonly type: "uint32";
        }, {
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToReturn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "chainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256[]";
                readonly name: "refundAmounts";
                readonly type: "uint256[]";
            }, {
                readonly internalType: "uint32";
                readonly name: "leafId";
                readonly type: "uint32";
            }, {
                readonly internalType: "address";
                readonly name: "l2TokenAddress";
                readonly type: "address";
            }, {
                readonly internalType: "address[]";
                readonly name: "refundAddresses";
                readonly type: "address[]";
            }];
            readonly internalType: "struct SpokePoolInterface.RelayerRefundLeaf";
            readonly name: "relayerRefundLeaf";
            readonly type: "tuple";
        }, {
            readonly internalType: "bytes32[]";
            readonly name: "proof";
            readonly type: "bytes32[]";
        }];
        readonly name: "executeRelayerRefundLeaf";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly components: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "depositor";
                    readonly type: "bytes32";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "recipient";
                    readonly type: "bytes32";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "exclusiveRelayer";
                    readonly type: "bytes32";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "inputToken";
                    readonly type: "bytes32";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "outputToken";
                    readonly type: "bytes32";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "inputAmount";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "outputAmount";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "originChainId";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "depositId";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint32";
                    readonly name: "fillDeadline";
                    readonly type: "uint32";
                }, {
                    readonly internalType: "uint32";
                    readonly name: "exclusivityDeadline";
                    readonly type: "uint32";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "message";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct V3SpokePoolInterface.V3RelayData";
                readonly name: "relayData";
                readonly type: "tuple";
            }, {
                readonly internalType: "uint256";
                readonly name: "chainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "updatedOutputAmount";
                readonly type: "uint256";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3SlowFill";
            readonly name: "slowFillLeaf";
            readonly type: "tuple";
        }, {
            readonly internalType: "uint32";
            readonly name: "rootBundleId";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes32[]";
            readonly name: "proof";
            readonly type: "bytes32[]";
        }];
        readonly name: "executeSlowRelayLeaf";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "orderId";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes";
            readonly name: "originData";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "fillerData";
            readonly type: "bytes";
        }];
        readonly name: "fill";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "fillDeadlineBuffer";
        readonly outputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "depositor";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "recipient";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "exclusiveRelayer";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "inputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "outputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "inputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "outputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "originChainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint32";
                readonly name: "fillDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "exclusivityDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "bytes";
                readonly name: "message";
                readonly type: "bytes";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3RelayData";
            readonly name: "relayData";
            readonly type: "tuple";
        }, {
            readonly internalType: "uint256";
            readonly name: "repaymentChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "repaymentAddress";
            readonly type: "bytes32";
        }];
        readonly name: "fillRelay";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "depositor";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "recipient";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "exclusiveRelayer";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "inputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "outputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "inputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "outputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "originChainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint32";
                readonly name: "fillDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "exclusivityDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "bytes";
                readonly name: "message";
                readonly type: "bytes";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3RelayData";
            readonly name: "relayData";
            readonly type: "tuple";
        }, {
            readonly internalType: "uint256";
            readonly name: "repaymentChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "repaymentAddress";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "updatedOutputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "updatedRecipient";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes";
            readonly name: "updatedMessage";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "depositorSignature";
            readonly type: "bytes";
        }];
        readonly name: "fillRelayWithUpdatedDeposit";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly name: "fillStatuses";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "depositor";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "recipient";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "exclusiveRelayer";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "inputToken";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "outputToken";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "inputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "outputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "originChainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint32";
                readonly name: "depositId";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "fillDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "exclusivityDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "bytes";
                readonly name: "message";
                readonly type: "bytes";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3RelayDataLegacy";
            readonly name: "relayData";
            readonly type: "tuple";
        }, {
            readonly internalType: "uint256";
            readonly name: "repaymentChainId";
            readonly type: "uint256";
        }];
        readonly name: "fillV3Relay";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getCurrentTime";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "l2TokenAddress";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "refundAddress";
            readonly type: "address";
        }];
        readonly name: "getRelayerRefund";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "msgSender";
            readonly type: "address";
        }, {
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "depositNonce";
            readonly type: "uint256";
        }];
        readonly name: "getUnsafeDepositId";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "depositor";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "recipient";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "exclusiveRelayer";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "inputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "outputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "inputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "outputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "originChainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint32";
                readonly name: "fillDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "exclusivityDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "bytes";
                readonly name: "message";
                readonly type: "bytes";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3RelayData";
            readonly name: "relayData";
            readonly type: "tuple";
        }];
        readonly name: "getV3RelayHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes[]";
            readonly name: "data";
            readonly type: "bytes[]";
        }];
        readonly name: "multicall";
        readonly outputs: readonly [{
            readonly internalType: "bytes[]";
            readonly name: "results";
            readonly type: "bytes[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "numberOfDeposits";
        readonly outputs: readonly [{
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bool";
            readonly name: "pause";
            readonly type: "bool";
        }];
        readonly name: "pauseDeposits";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bool";
            readonly name: "pause";
            readonly type: "bool";
        }];
        readonly name: "pauseFills";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pausedDeposits";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pausedFills";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "proxiableUUID";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "relayerRefundRoot";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "slowRelayRoot";
            readonly type: "bytes32";
        }];
        readonly name: "relayRootBundle";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "relayerRefund";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "depositor";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "recipient";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "exclusiveRelayer";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "inputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "outputToken";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "inputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "outputAmount";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "originChainId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "depositId";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint32";
                readonly name: "fillDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "exclusivityDeadline";
                readonly type: "uint32";
            }, {
                readonly internalType: "bytes";
                readonly name: "message";
                readonly type: "bytes";
            }];
            readonly internalType: "struct V3SpokePoolInterface.V3RelayData";
            readonly name: "relayData";
            readonly type: "tuple";
        }];
        readonly name: "requestSlowFill";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "rootBundles";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "slowRelayRoot";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "relayerRefundRoot";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newCrossDomainAdmin";
            readonly type: "address";
        }];
        readonly name: "setCrossDomainAdmin";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "originToken";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "enabled";
            readonly type: "bool";
        }];
        readonly name: "setEnableRoute";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newWithdrawalRecipient";
            readonly type: "address";
        }];
        readonly name: "setWithdrawalRecipient";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "updatedOutputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "updatedRecipient";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes";
            readonly name: "updatedMessage";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "depositorSignature";
            readonly type: "bytes";
        }];
        readonly name: "speedUpDeposit";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "depositor";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "depositId";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "updatedOutputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "updatedRecipient";
            readonly type: "address";
        }, {
            readonly internalType: "bytes";
            readonly name: "updatedMessage";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "depositorSignature";
            readonly type: "bytes";
        }];
        readonly name: "speedUpV3Deposit";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes[]";
            readonly name: "data";
            readonly type: "bytes[]";
        }];
        readonly name: "tryMulticall";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bool";
                readonly name: "success";
                readonly type: "bool";
            }, {
                readonly internalType: "bytes";
                readonly name: "returnData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct MultiCallerUpgradeable.Result[]";
            readonly name: "results";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "depositor";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "recipient";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "inputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "outputToken";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "outputAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationChainId";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "exclusiveRelayer";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "depositNonce";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint32";
            readonly name: "quoteTimestamp";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "fillDeadline";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint32";
            readonly name: "exclusivityParameter";
            readonly type: "uint32";
        }, {
            readonly internalType: "bytes";
            readonly name: "message";
            readonly type: "bytes";
        }];
        readonly name: "unsafeDeposit";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newImplementation";
            readonly type: "address";
        }];
        readonly name: "upgradeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newImplementation";
            readonly type: "address";
        }, {
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }];
        readonly name: "upgradeToAndCall";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "withdrawalRecipient";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "wrappedNativeToken";
        readonly outputs: readonly [{
            readonly internalType: "contract WETH9Interface";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    static createInterface(): SpokePoolInterface;
    static connect(address: string, signerOrProvider: Signer | Provider): SpokePool;
}
