import { RouteResponse } from "@0xsquid/sdk/dist/types";
import { ChainType, Token } from "@0xsquid/squid-types";
import { QueryObserverOptions } from "@tanstack/react-query";
import type { AppConfig } from "../../core/types/config";
import { RouteRequest } from "../../core/types/route";
export declare const useGetRoute: () => import("@tanstack/react-query").UseMutationResult<{
    estimate: import("@0xsquid/squid-types").Estimate;
    transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
    params: import("@0xsquid/squid-types").RouteRequest;
    quoteId: string;
} | undefined, unknown, {
    fromChain: RouteRequest["fromChain"] | undefined;
    toChain: RouteRequest["toChain"] | undefined;
    fromToken: Token | undefined;
    toToken: Token | undefined;
    sourceUserAddress: string | undefined;
    destinationAddress: string | undefined;
    fromPrice: string | undefined;
    bypassGuardrails: RouteRequest["bypassGuardrails"] | undefined;
    quoteOnly: boolean | undefined;
    fromChainType: ChainType | undefined;
    preHook: AppConfig["preHook"];
    postHook: AppConfig["postHook"];
    overrideGasRefundAddress: AppConfig["overrideGasRefundAddress"];
}, unknown>;
export declare const useGetRouteWrapper: ({ enabled, cacheTime, staleTime, refetchOnWindowFocus, refetchIntervalInBackground, refetchInterval, quoteOnly, }: Pick<QueryObserverOptions<{
    estimate: import("@0xsquid/squid-types").Estimate;
    transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
    params: import("@0xsquid/squid-types").RouteRequest;
    quoteId: string;
} | undefined, unknown, {
    estimate: import("@0xsquid/squid-types").Estimate;
    transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
    params: import("@0xsquid/squid-types").RouteRequest;
    quoteId: string;
} | undefined, {
    estimate: import("@0xsquid/squid-types").Estimate;
    transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
    params: import("@0xsquid/squid-types").RouteRequest;
    quoteId: string;
} | undefined, import("@tanstack/react-query").QueryKey>, "cacheTime" | "enabled" | "staleTime" | "refetchInterval" | "refetchIntervalInBackground" | "refetchOnWindowFocus"> & {
    quoteOnly?: boolean | undefined;
}) => {
    squidRoute: import("@tanstack/react-query").UseQueryResult<{
        estimate: import("@0xsquid/squid-types").Estimate;
        transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
        params: import("@0xsquid/squid-types").RouteRequest;
        quoteId: string;
    } | undefined, unknown>;
    showLoading: boolean;
    squidRouteError: unknown;
    routeData: {
        estimate: import("@0xsquid/squid-types").Estimate;
        transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
        params: import("@0xsquid/squid-types").RouteRequest;
        quoteId: string;
    } | undefined;
};
