import type { AsyncFnReturn } from "react-use/lib/useAsyncFn";
import type Question from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-lib/v1/Question";
import type { DashCardId, DashboardId, Dataset, ParameterValuesMap, VisualizationSettings } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api";
export type UseDownloadDataParams = {
    question: Question;
    result: Dataset;
    dashboardId?: DashboardId;
    dashcardId?: DashCardId;
    uuid: string | undefined;
    token: string | undefined;
    params?: ParameterValuesMap;
    visualizationSettings?: VisualizationSettings;
};
type HandleDataDownloadParams = {
    type: string;
    enableFormatting: boolean;
    enablePivot: boolean;
};
export declare const useDownloadData: ({ question, result, dashboardId, dashcardId, uuid, token, params, visualizationSettings, }: UseDownloadDataParams) => AsyncFnReturn<(options: HandleDataDownloadParams) => Promise<void>>;
export {};
