import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from "ethers";
import type { FunctionFragment, Result } from "@ethersproject/abi";
import type { Listener, Provider } from "@ethersproject/providers";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
export declare type ParsedPerChainQueryResponseStruct = {
    chainId: PromiseOrValue<BigNumberish>;
    queryType: PromiseOrValue<BigNumberish>;
    request: PromiseOrValue<BytesLike>;
    response: PromiseOrValue<BytesLike>;
};
export declare type ParsedPerChainQueryResponseStructOutput = [
    number,
    number,
    string,
    string
] & {
    chainId: number;
    queryType: number;
    request: string;
    response: string;
};
export declare type ParsedQueryResponseStruct = {
    version: PromiseOrValue<BigNumberish>;
    senderChainId: PromiseOrValue<BigNumberish>;
    nonce: PromiseOrValue<BigNumberish>;
    requestId: PromiseOrValue<BytesLike>;
    responses: ParsedPerChainQueryResponseStruct[];
};
export declare type ParsedQueryResponseStructOutput = [
    number,
    number,
    number,
    string,
    ParsedPerChainQueryResponseStructOutput[]
] & {
    version: number;
    senderChainId: number;
    nonce: number;
    requestId: string;
    responses: ParsedPerChainQueryResponseStructOutput[];
};
export declare type EthCallDataStruct = {
    contractAddress: PromiseOrValue<string>;
    callData: PromiseOrValue<BytesLike>;
    result: PromiseOrValue<BytesLike>;
};
export declare type EthCallDataStructOutput = [string, string, string] & {
    contractAddress: string;
    callData: string;
    result: string;
};
export declare type EthCallByTimestampQueryResponseStruct = {
    requestTargetBlockIdHint: PromiseOrValue<BytesLike>;
    requestFollowingBlockIdHint: PromiseOrValue<BytesLike>;
    requestTargetTimestamp: PromiseOrValue<BigNumberish>;
    targetBlockNum: PromiseOrValue<BigNumberish>;
    targetBlockTime: PromiseOrValue<BigNumberish>;
    followingBlockNum: PromiseOrValue<BigNumberish>;
    targetBlockHash: PromiseOrValue<BytesLike>;
    followingBlockHash: PromiseOrValue<BytesLike>;
    followingBlockTime: PromiseOrValue<BigNumberish>;
    result: EthCallDataStruct[];
};
export declare type EthCallByTimestampQueryResponseStructOutput = [
    string,
    string,
    BigNumber,
    BigNumber,
    BigNumber,
    BigNumber,
    string,
    string,
    BigNumber,
    EthCallDataStructOutput[]
] & {
    requestTargetBlockIdHint: string;
    requestFollowingBlockIdHint: string;
    requestTargetTimestamp: BigNumber;
    targetBlockNum: BigNumber;
    targetBlockTime: BigNumber;
    followingBlockNum: BigNumber;
    targetBlockHash: string;
    followingBlockHash: string;
    followingBlockTime: BigNumber;
    result: EthCallDataStructOutput[];
};
export declare type EthCallQueryResponseStruct = {
    requestBlockId: PromiseOrValue<BytesLike>;
    blockNum: PromiseOrValue<BigNumberish>;
    blockTime: PromiseOrValue<BigNumberish>;
    blockHash: PromiseOrValue<BytesLike>;
    result: EthCallDataStruct[];
};
export declare type EthCallQueryResponseStructOutput = [
    string,
    BigNumber,
    BigNumber,
    string,
    EthCallDataStructOutput[]
] & {
    requestBlockId: string;
    blockNum: BigNumber;
    blockTime: BigNumber;
    blockHash: string;
    result: EthCallDataStructOutput[];
};
export declare type EthCallWithFinalityQueryResponseStruct = {
    requestBlockId: PromiseOrValue<BytesLike>;
    requestFinality: PromiseOrValue<BytesLike>;
    blockNum: PromiseOrValue<BigNumberish>;
    blockTime: PromiseOrValue<BigNumberish>;
    blockHash: PromiseOrValue<BytesLike>;
    result: EthCallDataStruct[];
};
export declare type EthCallWithFinalityQueryResponseStructOutput = [
    string,
    string,
    BigNumber,
    BigNumber,
    string,
    EthCallDataStructOutput[]
] & {
    requestBlockId: string;
    requestFinality: string;
    blockNum: BigNumber;
    blockTime: BigNumber;
    blockHash: string;
    result: EthCallDataStructOutput[];
};
export declare namespace IWormhole {
    type SignatureStruct = {
        r: PromiseOrValue<BytesLike>;
        s: PromiseOrValue<BytesLike>;
        v: PromiseOrValue<BigNumberish>;
        guardianIndex: PromiseOrValue<BigNumberish>;
    };
    type SignatureStructOutput = [string, string, number, number] & {
        r: string;
        s: string;
        v: number;
        guardianIndex: number;
    };
}
export interface QueryResponseInterface extends utils.Interface {
    functions: {
        "QT_ETH_CALL()": FunctionFragment;
        "QT_ETH_CALL_BY_TIMESTAMP()": FunctionFragment;
        "QT_ETH_CALL_WITH_FINALITY()": FunctionFragment;
        "QT_MAX()": FunctionFragment;
        "VERSION()": FunctionFragment;
        "getResponseDigest(bytes)": FunctionFragment;
        "getResponseHash(bytes)": FunctionFragment;
        "parseAndVerifyQueryResponse(bytes,(bytes32,bytes32,uint8,uint8)[])": FunctionFragment;
        "parseEthCallByTimestampQueryResponse((uint16,uint8,bytes,bytes))": FunctionFragment;
        "parseEthCallQueryResponse((uint16,uint8,bytes,bytes))": FunctionFragment;
        "parseEthCallWithFinalityQueryResponse((uint16,uint8,bytes,bytes))": FunctionFragment;
        "responsePrefix()": FunctionFragment;
        "validateBlockNum(uint64,uint256)": FunctionFragment;
        "validateBlockTime(uint64,uint256)": FunctionFragment;
        "validateChainId(uint16,uint16[])": FunctionFragment;
        "validateEthCallData((address,bytes,bytes),address[],bytes4[])": FunctionFragment;
        "validateMultipleEthCallData((address,bytes,bytes)[],address[],bytes4[])": FunctionFragment;
        "verifyQueryResponseSignatures(bytes,(bytes32,bytes32,uint8,uint8)[])": FunctionFragment;
        "wormhole()": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "QT_ETH_CALL" | "QT_ETH_CALL_BY_TIMESTAMP" | "QT_ETH_CALL_WITH_FINALITY" | "QT_MAX" | "VERSION" | "getResponseDigest" | "getResponseHash" | "parseAndVerifyQueryResponse" | "parseEthCallByTimestampQueryResponse" | "parseEthCallQueryResponse" | "parseEthCallWithFinalityQueryResponse" | "responsePrefix" | "validateBlockNum" | "validateBlockTime" | "validateChainId" | "validateEthCallData" | "validateMultipleEthCallData" | "verifyQueryResponseSignatures" | "wormhole"): FunctionFragment;
    encodeFunctionData(functionFragment: "QT_ETH_CALL", values?: undefined): string;
    encodeFunctionData(functionFragment: "QT_ETH_CALL_BY_TIMESTAMP", values?: undefined): string;
    encodeFunctionData(functionFragment: "QT_ETH_CALL_WITH_FINALITY", values?: undefined): string;
    encodeFunctionData(functionFragment: "QT_MAX", values?: undefined): string;
    encodeFunctionData(functionFragment: "VERSION", values?: undefined): string;
    encodeFunctionData(functionFragment: "getResponseDigest", values: [PromiseOrValue<BytesLike>]): string;
    encodeFunctionData(functionFragment: "getResponseHash", values: [PromiseOrValue<BytesLike>]): string;
    encodeFunctionData(functionFragment: "parseAndVerifyQueryResponse", values: [PromiseOrValue<BytesLike>, IWormhole.SignatureStruct[]]): string;
    encodeFunctionData(functionFragment: "parseEthCallByTimestampQueryResponse", values: [ParsedPerChainQueryResponseStruct]): string;
    encodeFunctionData(functionFragment: "parseEthCallQueryResponse", values: [ParsedPerChainQueryResponseStruct]): string;
    encodeFunctionData(functionFragment: "parseEthCallWithFinalityQueryResponse", values: [ParsedPerChainQueryResponseStruct]): string;
    encodeFunctionData(functionFragment: "responsePrefix", values?: undefined): string;
    encodeFunctionData(functionFragment: "validateBlockNum", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "validateBlockTime", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "validateChainId", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>[]]): string;
    encodeFunctionData(functionFragment: "validateEthCallData", values: [
        EthCallDataStruct,
        PromiseOrValue<string>[],
        PromiseOrValue<BytesLike>[]
    ]): string;
    encodeFunctionData(functionFragment: "validateMultipleEthCallData", values: [
        EthCallDataStruct[],
        PromiseOrValue<string>[],
        PromiseOrValue<BytesLike>[]
    ]): string;
    encodeFunctionData(functionFragment: "verifyQueryResponseSignatures", values: [PromiseOrValue<BytesLike>, IWormhole.SignatureStruct[]]): string;
    encodeFunctionData(functionFragment: "wormhole", values?: undefined): string;
    decodeFunctionResult(functionFragment: "QT_ETH_CALL", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "QT_ETH_CALL_BY_TIMESTAMP", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "QT_ETH_CALL_WITH_FINALITY", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "QT_MAX", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getResponseDigest", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getResponseHash", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "parseAndVerifyQueryResponse", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "parseEthCallByTimestampQueryResponse", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "parseEthCallQueryResponse", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "parseEthCallWithFinalityQueryResponse", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "responsePrefix", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateBlockNum", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateBlockTime", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateChainId", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateEthCallData", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateMultipleEthCallData", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "verifyQueryResponseSignatures", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "wormhole", data: BytesLike): Result;
    events: {};
}
export interface QueryResponse extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: QueryResponseInterface;
    queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
    listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
    listeners(eventName?: string): Array<Listener>;
    removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
    removeAllListeners(eventName?: string): this;
    off: OnEvent<this>;
    on: OnEvent<this>;
    once: OnEvent<this>;
    removeListener: OnEvent<this>;
    functions: {
        QT_ETH_CALL(overrides?: CallOverrides): Promise<[number]>;
        QT_ETH_CALL_BY_TIMESTAMP(overrides?: CallOverrides): Promise<[number]>;
        QT_ETH_CALL_WITH_FINALITY(overrides?: CallOverrides): Promise<[number]>;
        QT_MAX(overrides?: CallOverrides): Promise<[number]>;
        VERSION(overrides?: CallOverrides): Promise<[number]>;
        getResponseDigest(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        getResponseHash(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        parseAndVerifyQueryResponse(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<[
            ParsedQueryResponseStructOutput
        ] & {
            r: ParsedQueryResponseStructOutput;
        }>;
        parseEthCallByTimestampQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<[
            EthCallByTimestampQueryResponseStructOutput
        ] & {
            r: EthCallByTimestampQueryResponseStructOutput;
        }>;
        parseEthCallQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<[
            EthCallQueryResponseStructOutput
        ] & {
            r: EthCallQueryResponseStructOutput;
        }>;
        parseEthCallWithFinalityQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<[
            EthCallWithFinalityQueryResponseStructOutput
        ] & {
            r: EthCallWithFinalityQueryResponseStructOutput;
        }>;
        responsePrefix(overrides?: CallOverrides): Promise<[string]>;
        validateBlockNum(_blockNum: PromiseOrValue<BigNumberish>, _minBlockNum: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[void]>;
        validateBlockTime(_blockTime: PromiseOrValue<BigNumberish>, _minBlockTime: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[void]>;
        validateChainId(chainId: PromiseOrValue<BigNumberish>, _validChainIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[void]>;
        validateEthCallData(r: EthCallDataStruct, _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<[void]>;
        validateMultipleEthCallData(r: EthCallDataStruct[], _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<[void]>;
        verifyQueryResponseSignatures(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<[void]>;
        wormhole(overrides?: CallOverrides): Promise<[string]>;
    };
    QT_ETH_CALL(overrides?: CallOverrides): Promise<number>;
    QT_ETH_CALL_BY_TIMESTAMP(overrides?: CallOverrides): Promise<number>;
    QT_ETH_CALL_WITH_FINALITY(overrides?: CallOverrides): Promise<number>;
    QT_MAX(overrides?: CallOverrides): Promise<number>;
    VERSION(overrides?: CallOverrides): Promise<number>;
    getResponseDigest(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    getResponseHash(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    parseAndVerifyQueryResponse(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<ParsedQueryResponseStructOutput>;
    parseEthCallByTimestampQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallByTimestampQueryResponseStructOutput>;
    parseEthCallQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallQueryResponseStructOutput>;
    parseEthCallWithFinalityQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallWithFinalityQueryResponseStructOutput>;
    responsePrefix(overrides?: CallOverrides): Promise<string>;
    validateBlockNum(_blockNum: PromiseOrValue<BigNumberish>, _minBlockNum: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
    validateBlockTime(_blockTime: PromiseOrValue<BigNumberish>, _minBlockTime: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
    validateChainId(chainId: PromiseOrValue<BigNumberish>, _validChainIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
    validateEthCallData(r: EthCallDataStruct, _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<void>;
    validateMultipleEthCallData(r: EthCallDataStruct[], _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<void>;
    verifyQueryResponseSignatures(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<void>;
    wormhole(overrides?: CallOverrides): Promise<string>;
    callStatic: {
        QT_ETH_CALL(overrides?: CallOverrides): Promise<number>;
        QT_ETH_CALL_BY_TIMESTAMP(overrides?: CallOverrides): Promise<number>;
        QT_ETH_CALL_WITH_FINALITY(overrides?: CallOverrides): Promise<number>;
        QT_MAX(overrides?: CallOverrides): Promise<number>;
        VERSION(overrides?: CallOverrides): Promise<number>;
        getResponseDigest(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        getResponseHash(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        parseAndVerifyQueryResponse(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<ParsedQueryResponseStructOutput>;
        parseEthCallByTimestampQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallByTimestampQueryResponseStructOutput>;
        parseEthCallQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallQueryResponseStructOutput>;
        parseEthCallWithFinalityQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<EthCallWithFinalityQueryResponseStructOutput>;
        responsePrefix(overrides?: CallOverrides): Promise<string>;
        validateBlockNum(_blockNum: PromiseOrValue<BigNumberish>, _minBlockNum: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        validateBlockTime(_blockTime: PromiseOrValue<BigNumberish>, _minBlockTime: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        validateChainId(chainId: PromiseOrValue<BigNumberish>, _validChainIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
        validateEthCallData(r: EthCallDataStruct, _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<void>;
        validateMultipleEthCallData(r: EthCallDataStruct[], _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<void>;
        verifyQueryResponseSignatures(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<void>;
        wormhole(overrides?: CallOverrides): Promise<string>;
    };
    filters: {};
    estimateGas: {
        QT_ETH_CALL(overrides?: CallOverrides): Promise<BigNumber>;
        QT_ETH_CALL_BY_TIMESTAMP(overrides?: CallOverrides): Promise<BigNumber>;
        QT_ETH_CALL_WITH_FINALITY(overrides?: CallOverrides): Promise<BigNumber>;
        QT_MAX(overrides?: CallOverrides): Promise<BigNumber>;
        VERSION(overrides?: CallOverrides): Promise<BigNumber>;
        getResponseDigest(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        getResponseHash(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        parseAndVerifyQueryResponse(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<BigNumber>;
        parseEthCallByTimestampQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<BigNumber>;
        parseEthCallQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<BigNumber>;
        parseEthCallWithFinalityQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<BigNumber>;
        responsePrefix(overrides?: CallOverrides): Promise<BigNumber>;
        validateBlockNum(_blockNum: PromiseOrValue<BigNumberish>, _minBlockNum: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        validateBlockTime(_blockTime: PromiseOrValue<BigNumberish>, _minBlockTime: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        validateChainId(chainId: PromiseOrValue<BigNumberish>, _validChainIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
        validateEthCallData(r: EthCallDataStruct, _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<BigNumber>;
        validateMultipleEthCallData(r: EthCallDataStruct[], _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<BigNumber>;
        verifyQueryResponseSignatures(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<BigNumber>;
        wormhole(overrides?: CallOverrides): Promise<BigNumber>;
    };
    populateTransaction: {
        QT_ETH_CALL(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        QT_ETH_CALL_BY_TIMESTAMP(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        QT_ETH_CALL_WITH_FINALITY(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        QT_MAX(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        VERSION(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getResponseDigest(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getResponseHash(response: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        parseAndVerifyQueryResponse(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
        parseEthCallByTimestampQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        parseEthCallQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        parseEthCallWithFinalityQueryResponse(pcr: ParsedPerChainQueryResponseStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        responsePrefix(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        validateBlockNum(_blockNum: PromiseOrValue<BigNumberish>, _minBlockNum: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        validateBlockTime(_blockTime: PromiseOrValue<BigNumberish>, _minBlockTime: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        validateChainId(chainId: PromiseOrValue<BigNumberish>, _validChainIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
        validateEthCallData(r: EthCallDataStruct, _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
        validateMultipleEthCallData(r: EthCallDataStruct[], _expectedContractAddresses: PromiseOrValue<string>[], _expectedFunctionSignatures: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
        verifyQueryResponseSignatures(response: PromiseOrValue<BytesLike>, signatures: IWormhole.SignatureStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
        wormhole(overrides?: CallOverrides): Promise<PopulatedTransaction>;
    };
}
