import type { ChartDataset, ComboChartDataDensity, DataKey, Datum, DimensionModel, LabelFormatter, RawValueFormatter, SeriesFormatters, SeriesModel, StackModel, StackTotalDataKey, StackedSeriesFormatters, VizSettingsKey, WaterFallChartDataDensity } from "../../../../visualizations/echarts/cartesian/model/types";
import type { CartesianChartColumns } from "../../../../visualizations/lib/graph/columns";
import type { ComputedVisualizationSettings, RenderingContext } from "../../../../visualizations/types";
import type { DatasetColumn, DatasetData, RawSeries, RowValue, SeriesSettings, SingleSeries } from "../../../../../metabase-types/api";
export declare const getSeriesVizSettingsKey: (column: DatasetColumn, hasMultipleCards: boolean, isFirstCard: boolean, metricsCount: number, breakoutName: string | null, cardName?: string) => VizSettingsKey;
export declare const getBreakoutDistinctValues: (data: DatasetData, breakoutIndex: number) => RowValue[];
export declare const getCardsSeriesModels: (rawSeries: RawSeries, cardsColumns: CartesianChartColumns[], hiddenSeries: string[], settings: ComputedVisualizationSettings) => SeriesModel[];
/**
 * Generates series models for a given card with a dataset.
 *
 * @param {SingleSeries} singleSeries - The single card and dataset.
 * @param {CartesianChartColumns} columns - The columns model for the card.
 * @param {string[]} hiddenSeries - The list of hidden series data keys.
 * @param {boolean} hasMultipleCards — Indicates whether the chart has multiple card combined.
 * @param {ComputedVisualizationSettings} settings — Computed visualization settings.
 * @returns {SeriesModel[]} The generated series models for the card.
 */
export declare const getCardSeriesModels: ({ card, data }: SingleSeries, columns: CartesianChartColumns, hiddenSeries: string[], hasMultipleCards: boolean, isFirstCard: boolean, settings: ComputedVisualizationSettings) => SeriesModel[];
export declare const getDimensionModel: (rawSeries: RawSeries, cardsColumns: CartesianChartColumns[]) => DimensionModel;
export declare function getStackTotalValue(data: Datum, stackDataKeys: DataKey[], signKey: StackTotalDataKey): number | null;
export declare function getWaterfallChartDataDensity(dataset: ChartDataset, waterfallLabelFormatter: RawValueFormatter | undefined, settings: ComputedVisualizationSettings, renderingContext: RenderingContext): WaterFallChartDataDensity;
export declare function getComboChartDataDensity(seriesModels: SeriesModel[], stackModels: StackModel[], dataset: ChartDataset, seriesLabelsFormatters: SeriesFormatters, stackedLabelsFormatters: StackedSeriesFormatters, settings: ComputedVisualizationSettings, renderingContext: RenderingContext): ComboChartDataDensity;
export declare function getDisplaySeriesSettingsByDataKey(seriesModels: SeriesModel[], stackModels: StackModel[] | null, settings: ComputedVisualizationSettings): Record<string, SeriesSettings>;
export declare const getFormatters: (seriesModels: SeriesModel[], stackModels: StackModel[], dataset: ChartDataset, settings: ComputedVisualizationSettings) => {
    stackedLabelsFormatters: StackedSeriesFormatters;
    seriesLabelsFormatters: SeriesFormatters;
    isCompactFormatting: boolean;
};
export declare const getWaterfallLabelFormatter: (seriesModel: SeriesModel, dataset: ChartDataset, settings: ComputedVisualizationSettings) => {
    formatter?: LabelFormatter;
    isCompact?: boolean;
};
