/// <reference types="react" />
import { Data, Filter, FilterRelations } from '@sisense/sdk-data';
import { ChartWidgetProps } from '../../../domains/widgets/components/chart-widget/types';
import type { NlqResponseData } from '../../../modules/ai';
import { NlqChartWidgetStyleOptions } from '../../../types';
/**
 * Props for {@link NlqChartWidget} component.
 *
 * @group Generative AI
 * @internal
 */
export interface NlqChartWidgetProps {
    /**
     * Chatbot NLQ Response
     */
    nlqResponse: NlqResponseData;
    /**
     * The dashboard filters to be applied to the chart
     */
    filters?: Filter[] | FilterRelations;
    /**
     * A callback that allows to modify data immediately after it has been retrieved.
     * It can be used to inject modification of queried data.
     */
    onDataReady?: (data: Data) => Data;
    /**
     * Boolean flag to show or hide the widget header
     *
     * Note: set to 'false' to hide the widget header
     *
     * @default true
     */
    styleOptions?: NlqChartWidgetStyleOptions;
    /**
     * Widget props if we have them in full, to ensure NlqChartWidget will be rendered
     * the same way as ChartWidget
     */
    widgetProps?: ChartWidgetProps;
}
/**
 * React component that renders a chart widget based on NLQ response data.
 *
 * @deprecated Prefer composing `ChartWidget` with `WidgetNarrative` when using `WidgetProps` for new embeds.
 *
 * @example
 * ```tsx
 * import { NlqChartWidget, NlqResponseData } from '@sisense/sdk-ui/ai';
 * import { Filter } from '@sisense/sdk-data';
 *
 * function ExampleComponent(nlqResponse: NlqResponseData, filters?: Filter[]) {
 *
 *    return (
 *      <ChartWidgetWithInsights
 *        nlqResponse={nlqResponse}
 *        filters={filters}
 *      />
 *    );
 * }
 * ```
 * @param props - {@link NlqChartWidgetProps}
 * @group Generative AI
 * @internal
 */
export declare const NlqChartWidget: import("react").NamedExoticComponent<NlqChartWidgetProps>;
