import { VegaChart } from "./chart_base"; import { type VegaLiteSpec } from "./specs"; import type { ChartTheme } from "./theme"; import type { ScatterChartConfig, ScatterClickEvent } from "./types"; type ClickListener = (e: ScatterClickEvent) => void; /** * Points scatter with an optional single-point highlight ring and an optional * colour channel (constant / per-point / numeric-with-scale). Colour scales * name the same schemes as the Python side (`viridis`, `RdBu`, …) so a * PCA/embedding plot keeps its colouring across web and paper renders. */ export declare class ScatterChart extends VegaChart { private config; private highlightIndex; private readonly clickListeners; constructor(container: HTMLElement, config: ScatterChartConfig); update(partial: Partial): Promise; setHighlight(index: number | null): Promise; onPointClick(cb: ClickListener): () => void; private pointRows; private highlightRows; protected datasets(): Record; protected buildSpec(theme: ChartTheme, sizeHint: { width: number; height: number; }): VegaLiteSpec; protected onDatum(datum: Record): void; } export {};