import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../../common"; export declare namespace IForwarder { type ForwardRequestStruct = { relayHub: PromiseOrValue; from: PromiseOrValue; to: PromiseOrValue; tokenContract: PromiseOrValue; value: PromiseOrValue; gas: PromiseOrValue; nonce: PromiseOrValue; tokenAmount: PromiseOrValue; tokenGas: PromiseOrValue; validUntilTime: PromiseOrValue; data: PromiseOrValue; }; type ForwardRequestStructOutput = [ string, string, string, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string ] & { relayHub: string; from: string; to: string; tokenContract: string; value: BigNumber; gas: BigNumber; nonce: BigNumber; tokenAmount: BigNumber; tokenGas: BigNumber; validUntilTime: BigNumber; data: string; }; } export declare namespace EnvelopingTypes { type RelayDataStruct = { gasPrice: PromiseOrValue; feesReceiver: PromiseOrValue; callForwarder: PromiseOrValue; callVerifier: PromiseOrValue; }; type RelayDataStructOutput = [BigNumber, string, string, string] & { gasPrice: BigNumber; feesReceiver: string; callForwarder: string; callVerifier: string; }; type RelayRequestStruct = { request: IForwarder.ForwardRequestStruct; relayData: EnvelopingTypes.RelayDataStruct; }; type RelayRequestStructOutput = [ IForwarder.ForwardRequestStructOutput, EnvelopingTypes.RelayDataStructOutput ] & { request: IForwarder.ForwardRequestStructOutput; relayData: EnvelopingTypes.RelayDataStructOutput; }; } export interface RelayVerifierInterface extends utils.Interface { functions: { "acceptToken(address)": FunctionFragment; "acceptedTokens(uint256)": FunctionFragment; "acceptsToken(address)": FunctionFragment; "getAcceptedTokens()": FunctionFragment; "owner()": FunctionFragment; "removeToken(address,uint256)": FunctionFragment; "tokens(address)": FunctionFragment; "transferOwnership(address)": FunctionFragment; "verifyRelayedCall(((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes),(uint256,address,address,address)),bytes)": FunctionFragment; "versionVerifier()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "acceptToken" | "acceptedTokens" | "acceptsToken" | "getAcceptedTokens" | "owner" | "removeToken" | "tokens" | "transferOwnership" | "verifyRelayedCall" | "versionVerifier"): FunctionFragment; encodeFunctionData(functionFragment: "acceptToken", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "acceptedTokens", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "acceptsToken", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "getAcceptedTokens", values?: undefined): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "removeToken", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "tokens", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "verifyRelayedCall", values: [EnvelopingTypes.RelayRequestStruct, PromiseOrValue]): string; encodeFunctionData(functionFragment: "versionVerifier", values?: undefined): string; decodeFunctionResult(functionFragment: "acceptToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "acceptedTokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "acceptsToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAcceptedTokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "verifyRelayedCall", data: BytesLike): Result; decodeFunctionResult(functionFragment: "versionVerifier", data: BytesLike): Result; events: { "OwnershipTransferred(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export interface OwnershipTransferredEventObject { previousOwner: string; newOwner: string; } export declare type OwnershipTransferredEvent = TypedEvent<[ string, string ], OwnershipTransferredEventObject>; export declare type OwnershipTransferredEventFilter = TypedEventFilter; export interface RelayVerifier extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: RelayVerifierInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { acceptToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; acceptedTokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]>; acceptsToken(token: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; getAcceptedTokens(overrides?: CallOverrides): Promise<[string[]]>; owner(overrides?: CallOverrides): Promise<[string]>; removeToken(token: PromiseOrValue, index: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; tokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; transferOwnership(newOwner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; verifyRelayedCall(relayRequest: EnvelopingTypes.RelayRequestStruct, signature: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; versionVerifier(overrides?: CallOverrides): Promise<[string]>; }; acceptToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; acceptedTokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; acceptsToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; getAcceptedTokens(overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; removeToken(token: PromiseOrValue, index: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; tokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; transferOwnership(newOwner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; verifyRelayedCall(relayRequest: EnvelopingTypes.RelayRequestStruct, signature: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; versionVerifier(overrides?: CallOverrides): Promise; callStatic: { acceptToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; acceptedTokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; acceptsToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; getAcceptedTokens(overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; removeToken(token: PromiseOrValue, index: PromiseOrValue, overrides?: CallOverrides): Promise; tokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; transferOwnership(newOwner: PromiseOrValue, overrides?: CallOverrides): Promise; verifyRelayedCall(relayRequest: EnvelopingTypes.RelayRequestStruct, signature: PromiseOrValue, overrides?: CallOverrides): Promise; versionVerifier(overrides?: CallOverrides): Promise; }; filters: { "OwnershipTransferred(address,address)"(previousOwner?: PromiseOrValue | null, newOwner?: PromiseOrValue | null): OwnershipTransferredEventFilter; OwnershipTransferred(previousOwner?: PromiseOrValue | null, newOwner?: PromiseOrValue | null): OwnershipTransferredEventFilter; }; estimateGas: { acceptToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; acceptedTokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; acceptsToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; getAcceptedTokens(overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; removeToken(token: PromiseOrValue, index: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; tokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; transferOwnership(newOwner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; verifyRelayedCall(relayRequest: EnvelopingTypes.RelayRequestStruct, signature: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; versionVerifier(overrides?: CallOverrides): Promise; }; populateTransaction: { acceptToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; acceptedTokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; acceptsToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; getAcceptedTokens(overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; removeToken(token: PromiseOrValue, index: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; tokens(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; transferOwnership(newOwner: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; verifyRelayedCall(relayRequest: EnvelopingTypes.RelayRequestStruct, signature: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; versionVerifier(overrides?: CallOverrides): Promise; }; }