import { AiResultType } from './types';
export declare const parseVizConfig: (vizConfigUnknown: object | null, maxLimit?: number | undefined) => {
    readonly type: AiResultType.VERTICAL_BAR_RESULT;
    readonly vizTool: {
        customMetrics: Omit<import("../..").AdditionalMetric, "sql">[] | 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("../..").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: {
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            exploreName: string;
            xDimension: string;
            yMetrics: string[];
            breakdownByDimension: string | null;
            stackBars: boolean | null;
            xAxisType: "category" | "time";
            xAxisLabel: string | null;
            yAxisLabel: string | null;
        };
    };
    readonly metricQuery: import("./types").AiMetricQueryWithFilters;
} | {
    readonly type: AiResultType.TIME_SERIES_RESULT;
    readonly vizTool: {
        customMetrics: Omit<import("../..").AdditionalMetric, "sql">[] | 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("../..").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: {
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            exploreName: string;
            xDimension: string;
            yMetrics: string[];
            breakdownByDimension: string | null;
            xAxisLabel: string;
            yAxisLabel: string;
            lineType: "line" | "area";
        };
    };
    readonly metricQuery: import("./types").AiMetricQueryWithFilters;
} | {
    readonly type: AiResultType.TABLE_RESULT;
    readonly vizTool: {
        customMetrics: Omit<import("../..").AdditionalMetric, "sql">[] | 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("../..").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[];
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            exploreName: string;
        };
    };
    readonly metricQuery: import("./types").AiMetricQueryWithFilters;
} | {
    readonly type: AiResultType.QUERY_RESULT;
    readonly vizTool: {
        filters: import("../..").Filters;
        customMetrics: Omit<import("../..").AdditionalMetric, "sql">[] | null;
        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("../..").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;
        title: string;
        queryConfig: {
            dimensions: string[];
            metrics: string[];
            sorts: {
                fieldId: string;
                descending: boolean;
                nullsFirst: boolean | null;
            }[];
            limit: number | null;
            exploreName: string;
            filters?: {
                dimensions: ({
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.BOOLEAN | import("../..").MetricType.BOOLEAN;
                    fieldFilterType: import("../..").FilterType.BOOLEAN;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: boolean[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.BOOLEAN | import("../..").MetricType.BOOLEAN;
                    fieldFilterType: import("../..").FilterType.BOOLEAN;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.STRING | import("../..").MetricType.STRING;
                    fieldFilterType: import("../..").FilterType.STRING;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS | import("../..").FilterOperator.STARTS_WITH | import("../..").FilterOperator.ENDS_WITH | import("../..").FilterOperator.INCLUDE | import("../..").FilterOperator.NOT_INCLUDE;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.STRING | import("../..").MetricType.STRING;
                    fieldFilterType: import("../..").FilterType.STRING;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.LESS_THAN | import("../..").FilterOperator.LESS_THAN_OR_EQUAL | import("../..").FilterOperator.GREATER_THAN | import("../..").FilterOperator.GREATER_THAN_OR_EQUAL;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.IN_BETWEEN | import("../..").FilterOperator.NOT_IN_BETWEEN;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    settings: {
                        unitOfTime: import("../..").UnitOfTime.days | import("../..").UnitOfTime.weeks | import("../..").UnitOfTime.months | import("../..").UnitOfTime.quarters | import("../..").UnitOfTime.years;
                        completed: boolean;
                    };
                    operator: import("../..").FilterOperator.IN_THE_PAST | import("../..").FilterOperator.NOT_IN_THE_PAST | import("../..").FilterOperator.IN_THE_NEXT;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    settings: {
                        unitOfTime: import("../..").UnitOfTime.days | import("../..").UnitOfTime.weeks | import("../..").UnitOfTime.months | import("../..").UnitOfTime.quarters | import("../..").UnitOfTime.years;
                        completed: false;
                    };
                    operator: import("../..").FilterOperator.IN_THE_CURRENT | import("../..").FilterOperator.NOT_IN_THE_CURRENT;
                    values: 1[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.LESS_THAN | import("../..").FilterOperator.LESS_THAN_OR_EQUAL | import("../..").FilterOperator.GREATER_THAN | import("../..").FilterOperator.GREATER_THAN_OR_EQUAL;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.IN_BETWEEN;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                })[] | null;
                metrics: ({
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.BOOLEAN | import("../..").MetricType.BOOLEAN;
                    fieldFilterType: import("../..").FilterType.BOOLEAN;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: boolean[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.BOOLEAN | import("../..").MetricType.BOOLEAN;
                    fieldFilterType: import("../..").FilterType.BOOLEAN;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.STRING | import("../..").MetricType.STRING;
                    fieldFilterType: import("../..").FilterType.STRING;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS | import("../..").FilterOperator.STARTS_WITH | import("../..").FilterOperator.ENDS_WITH | import("../..").FilterOperator.INCLUDE | import("../..").FilterOperator.NOT_INCLUDE;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.STRING | import("../..").MetricType.STRING;
                    fieldFilterType: import("../..").FilterType.STRING;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.LESS_THAN | import("../..").FilterOperator.LESS_THAN_OR_EQUAL | import("../..").FilterOperator.GREATER_THAN | import("../..").FilterOperator.GREATER_THAN_OR_EQUAL;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.IN_BETWEEN | import("../..").FilterOperator.NOT_IN_BETWEEN;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    settings: {
                        unitOfTime: import("../..").UnitOfTime.days | import("../..").UnitOfTime.weeks | import("../..").UnitOfTime.months | import("../..").UnitOfTime.quarters | import("../..").UnitOfTime.years;
                        completed: boolean;
                    };
                    operator: import("../..").FilterOperator.IN_THE_PAST | import("../..").FilterOperator.NOT_IN_THE_PAST | import("../..").FilterOperator.IN_THE_NEXT;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    settings: {
                        unitOfTime: import("../..").UnitOfTime.days | import("../..").UnitOfTime.weeks | import("../..").UnitOfTime.months | import("../..").UnitOfTime.quarters | import("../..").UnitOfTime.years;
                        completed: false;
                    };
                    operator: import("../..").FilterOperator.IN_THE_CURRENT | import("../..").FilterOperator.NOT_IN_THE_CURRENT;
                    values: 1[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.LESS_THAN | import("../..").FilterOperator.LESS_THAN_OR_EQUAL | import("../..").FilterOperator.GREATER_THAN | import("../..").FilterOperator.GREATER_THAN_OR_EQUAL;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                } | {
                    operator: import("../..").FilterOperator.IN_BETWEEN;
                    values: string[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.TIMESTAMP | import("../..").DimensionType.DATE | import("../..").MetricType.DATE | import("../..").MetricType.TIMESTAMP;
                    fieldFilterType: import("../..").FilterType.DATE;
                })[] | null;
                tableCalculations: ({
                    operator: import("../..").FilterOperator.NULL | import("../..").FilterOperator.NOT_NULL;
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.EQUALS | import("../..").FilterOperator.NOT_EQUALS;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.LESS_THAN | import("../..").FilterOperator.LESS_THAN_OR_EQUAL | import("../..").FilterOperator.GREATER_THAN | import("../..").FilterOperator.GREATER_THAN_OR_EQUAL;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                } | {
                    operator: import("../..").FilterOperator.IN_BETWEEN | import("../..").FilterOperator.NOT_IN_BETWEEN;
                    values: number[];
                    fieldId: string;
                    fieldType: import("../..").DimensionType.NUMBER | import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.SUM_DISTINCT | import("../..").MetricType.AVERAGE_DISTINCT | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.NUMBER | import("../..").MetricType.MEDIAN;
                    fieldFilterType: import("../..").FilterType.NUMBER;
                })[] | null;
                type: "and" | "or";
            } | undefined;
        };
        chartConfig: {
            stackBars: boolean | null;
            xAxisType: "category" | "time" | 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;
    };
    readonly metricQuery: {
        exploreName: string;
        dimensions: string[];
        metrics: string[];
        sorts: {
            nullsFirst: boolean | undefined;
            fieldId: string;
            descending: boolean;
        }[];
        limit: number;
        filters: import("../..").Filters;
        additionalMetrics: Omit<import("../..").AdditionalMetric, "sql">[];
        tableCalculations: import("../..").TableCalculation[];
    };
} | null;
//# sourceMappingURL=utils.d.ts.map