import { type ItemsMap } from '../../../../types/field';
import { type MetricQuery } from '../../../../types/metricQuery';
import { type ToolRunQueryArgs, type ToolTableVizArgs, type ToolTimeSeriesArgs, type ToolVerticalBarArgs } from '../../schemas';
import { AiResultType } from '../../types';
export declare const getWebAiChartConfig: ({ vizConfig, metricQuery, maxQueryLimit, fieldsMap, overrideChartType, }: {
    vizConfig: ToolTableVizArgs | ToolTimeSeriesArgs | ToolVerticalBarArgs | ToolRunQueryArgs;
    metricQuery: MetricQuery;
    maxQueryLimit?: number;
    fieldsMap: ItemsMap;
    overrideChartType?: "table" | "bar" | "horizontal" | "line" | "scatter" | "pie" | "funnel";
}) => {
    echartsConfig: import("../../../..").CartesianChartConfig;
    type: AiResultType.VERTICAL_BAR_RESULT;
    vizTool: {
        customMetrics: import("../../schemas").TransformedCustomMetric[] | null;
        followUpTools: AiResultType[];
        tableCalculations: ({
            name: string;
            fieldId: string;
            type: "percent_change_from_previous";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_previous_value";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_column_total";
            displayName: string;
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "rank_in_column";
            displayName: string;
        } | {
            name: string;
            fieldId: string;
            type: "running_total";
            displayName: string;
        } | {
            name: string;
            fieldId: string | null;
            type: "window_function";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[] | null;
            partitionBy: string[] | null;
            windowFunction: import("../../../../types/field").WindowFunctionType;
            frame: {
                frameType: "rows" | "range";
                start: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                } | null;
                end: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                };
            } | null;
        })[] | null;
        description: string;
        filters: import("../../../..").Filters;
        title: string;
        vizConfig: {
            exploreName: string;
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            xDimension: string;
            yMetrics: string[];
            breakdownByDimension: string | null;
            stackBars: boolean | null;
            xAxisType: "time" | "category";
            xAxisLabel: string | null;
            yAxisLabel: string | null;
        };
    };
    metricQuery: import("../../types").AiMetricQueryWithFilters;
} | {
    echartsConfig: import("../../../..").CartesianChartConfig;
    type: AiResultType.TIME_SERIES_RESULT;
    vizTool: {
        customMetrics: import("../../schemas").TransformedCustomMetric[] | null;
        followUpTools: AiResultType[];
        tableCalculations: ({
            name: string;
            fieldId: string;
            type: "percent_change_from_previous";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_previous_value";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_column_total";
            displayName: string;
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "rank_in_column";
            displayName: string;
        } | {
            name: string;
            fieldId: string;
            type: "running_total";
            displayName: string;
        } | {
            name: string;
            fieldId: string | null;
            type: "window_function";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[] | null;
            partitionBy: string[] | null;
            windowFunction: import("../../../../types/field").WindowFunctionType;
            frame: {
                frameType: "rows" | "range";
                start: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                } | null;
                end: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                };
            } | null;
        })[] | null;
        description: string;
        filters: import("../../../..").Filters;
        title: string;
        vizConfig: {
            exploreName: string;
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            xDimension: string;
            yMetrics: string[];
            breakdownByDimension: string | null;
            xAxisLabel: string;
            yAxisLabel: string;
            lineType: "line" | "area";
        };
    };
    metricQuery: import("../../types").AiMetricQueryWithFilters;
} | {
    echartsConfig: import("../../../..").TableChartConfig;
    type: AiResultType.TABLE_RESULT;
    vizTool: {
        customMetrics: import("../../schemas").TransformedCustomMetric[] | null;
        followUpTools: AiResultType[];
        tableCalculations: ({
            name: string;
            fieldId: string;
            type: "percent_change_from_previous";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_previous_value";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[];
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "percent_of_column_total";
            displayName: string;
            partitionBy: string[] | null;
        } | {
            name: string;
            fieldId: string;
            type: "rank_in_column";
            displayName: string;
        } | {
            name: string;
            fieldId: string;
            type: "running_total";
            displayName: string;
        } | {
            name: string;
            fieldId: string | null;
            type: "window_function";
            displayName: string;
            orderBy: {
                fieldId: string;
                order: "asc" | "desc" | null;
            }[] | null;
            partitionBy: string[] | null;
            windowFunction: import("../../../../types/field").WindowFunctionType;
            frame: {
                frameType: "rows" | "range";
                start: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                } | null;
                end: {
                    type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                    offset: number | null;
                };
            } | null;
        })[] | null;
        description: string;
        filters: import("../../../..").Filters;
        title: string;
        vizConfig: {
            dimensions: string[];
            metrics: string[];
            exploreName: string;
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
        };
    };
    metricQuery: import("../../types").AiMetricQueryWithFilters;
} | {
    type: AiResultType.QUERY_RESULT;
    vizTool: {
        description: string;
        chartConfig: {
            stackBars: boolean | null;
            xAxisType: "time" | "category" | null;
            xAxisLabel: string;
            yAxisLabel: string;
            lineType: "line" | "area" | null;
            defaultVizType: "table" | "line" | "bar" | "horizontal" | "scatter" | "pie" | "funnel";
            xAxisDimension: string | null;
            yAxisMetrics: string[] | null;
            groupBy: string[] | null;
            funnelDataInput: "row" | "column" | null;
            secondaryYAxisMetric: string | null;
            secondaryYAxisLabel: string | null;
        } | null;
        title: string;
        queryConfig: {
            dimensions: string[];
            metrics: string[];
            tableCalculations: ({
                name: string;
                fieldId: string;
                type: "percent_change_from_previous";
                displayName: string;
                orderBy: {
                    fieldId: string;
                    order: "asc" | "desc" | null;
                }[];
                partitionBy: string[] | null;
            } | {
                name: string;
                fieldId: string;
                type: "percent_of_previous_value";
                displayName: string;
                orderBy: {
                    fieldId: string;
                    order: "asc" | "desc" | null;
                }[];
                partitionBy: string[] | null;
            } | {
                name: string;
                fieldId: string;
                type: "percent_of_column_total";
                displayName: string;
                partitionBy: string[] | null;
            } | {
                name: string;
                fieldId: string;
                type: "rank_in_column";
                displayName: string;
            } | {
                name: string;
                fieldId: string;
                type: "running_total";
                displayName: string;
            } | {
                name: string;
                fieldId: string | null;
                type: "window_function";
                displayName: string;
                orderBy: {
                    fieldId: string;
                    order: "asc" | "desc" | null;
                }[] | null;
                partitionBy: string[] | null;
                windowFunction: import("../../../../types/field").WindowFunctionType;
                frame: {
                    frameType: "rows" | "range";
                    start: {
                        type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                        offset: number | null;
                    } | null;
                    end: {
                        type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
                        offset: number | null;
                    };
                } | null;
            })[] | null;
            filters: import("../../../..").Filters;
            exploreName: string;
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            customMetrics: import("../../schemas").TransformedCustomMetric[] | null;
        };
    };
    metricQuery: {
        exploreName: string;
        dimensions: string[];
        metrics: string[];
        sorts: {
            nullsFirst: boolean | undefined;
            fieldId: string;
            descending: boolean;
        }[];
        limit: number;
        filters: import("../../../..").Filters;
        additionalMetrics: Omit<import("../../../../types/metricQuery").AdditionalMetric, "sql">[];
        customMetrics: import("../../schemas").TransformedCustomMetric[] | null;
        tableCalculations: import("../../../../types/field").TableCalculation[];
    };
    echartsConfig: import("../../../..").ChartConfig;
};
//# sourceMappingURL=getWebAiChartConfig.d.ts.map