import { type ReactNode } from "react";
import type Question from "../../../../metabase-lib/v1/Question";
import type { Dashboard, Parameter, ParameterId, ParameterValuesMap } from "../../../../metabase-types/api";
import type { DashboardUrlHashOptions } from "../../../dashboard/types";
import type { FooterVariant } from "./EmbedFrame.styled";
export type EmbedFrameBaseProps = Partial<{
    className: string;
    name: string | null;
    description: string | null;
    question: Question;
    dashboard: Dashboard | null;
    actionButtons: ReactNode;
    footerVariant: FooterVariant;
    parameters: Parameter[];
    parameterValues: ParameterValuesMap;
    draftParameterValues: ParameterValuesMap;
    hiddenParameterSlugs: string;
    enableParameterRequiredBehavior: boolean;
    setParameterValue: (parameterId: ParameterId, value: any) => void;
    setParameterValueToDefault: (id: ParameterId) => void;
    children: ReactNode;
    dashboardTabs: ReactNode;
    downloadsEnabled: boolean;
    withFooter: boolean;
}>;
type WithRequired<T, K extends keyof T> = T & Required<Pick<T, K>>;
export type EmbedFrameProps = EmbedFrameBaseProps & WithRequired<DashboardUrlHashOptions, "background">;
export declare const EmbedFrame: ({ className, children, name, description, question, dashboard, actionButtons, dashboardTabs, footerVariant, parameters, parameterValues, draftParameterValues, hiddenParameterSlugs, setParameterValue, setParameterValueToDefault, enableParameterRequiredBehavior, background, bordered, titled, theme, hide_parameters, downloadsEnabled, withFooter, }: EmbedFrameProps) => import("react/jsx-runtime").JSX.Element;
export {};
