import type { Aggregate } from "./Aggregate";
import type { ColumnConfigValues } from "./ColumnConfigValues";
import type { Expressions } from "./Expressions";
import type { Filter } from "./Filter";
import type { FilterReducer } from "./FilterReducer";
import type { OptionalUpdate } from "./OptionalUpdate";
import type { PluginConfig } from "./PluginConfig";
import type { Sort } from "./Sort";
export type ViewerConfigUpdate = {
    version?: OptionalUpdate<string>;
    plugin?: OptionalUpdate<string>;
    title?: OptionalUpdate<string>;
    theme?: OptionalUpdate<string>;
    settings?: OptionalUpdate<boolean>;
    plugin_config?: PluginConfig | null;
    columns_config?: OptionalUpdate<{
        [key in string]?: ColumnConfigValues;
    }>;
    group_by?: Array<string>;
    split_by?: Array<string>;
    columns?: Array<string | null>;
    filter?: Array<Filter>;
    filter_op?: FilterReducer;
    sort?: Array<Sort>;
    expressions?: Expressions;
    aggregates?: {
        [key in string]?: Aggregate;
    };
    group_by_depth?: number;
};
