export declare const resolve_legend_visibility: (show_legend: boolean | undefined, legend: unknown, entry_count: number, auto_default?: boolean) => boolean; export declare const LEGEND_VISIBILITY_MODES: readonly ["auto", "always", "never"]; export type LegendVisibilityMode = (typeof LEGEND_VISIBILITY_MODES)[number]; export declare const legend_mode_to_prop: (mode: LegendVisibilityMode) => boolean | undefined; type VisSeries = { id?: string | number; label?: string | null; unit?: string; y_axis?: string; visible?: boolean; x?: unknown; y?: unknown; values?: unknown; }; type SeriesAxisAccessor = (series: Series, series_idx: number) => string | undefined; type SeriesSource = [string, string, string, ...unknown[]]; type SeriesVisibilitySnapshot = { visibility: boolean[]; source: SeriesSource[]; }; export declare function have_compatible_units(series1: VisSeries, series2: VisSeries): boolean; export declare function toggle_series_visibility(series: Series[], series_idx: number, get_axis?: SeriesAxisAccessor): Series[]; export declare function toggle_group_visibility(series: Series[], series_indices: number[]): Series[]; export declare function handle_legend_double_click(series: Series[], idx: number, prev_snapshot: SeriesVisibilitySnapshot | null): { series: Series[]; prev_visibility: SeriesVisibilitySnapshot | null; }; export declare function create_legend_visibility(get_series: () => Series[], set_series: (series: Series[]) => void, get_axis?: SeriesAxisAccessor): { resolve: (incoming: Series[]) => Series[]; on_toggle: (series_idx: number) => void; on_group_toggle: (group_name: string, series_indices: number[]) => void; on_double_click: (series_idx: number) => void; }; export {};