import { type HistogramConfigInterface } from './config'; import type { HistogramBarData } from './types'; import { DisplayStateManager } from '../_abstract/display-state-manager'; export declare class Histogram extends DisplayStateManager { private _config; private _containerNode; private _resizeObserver; private _svg; private _axisGroup; private _barsGroup; private _highlightedBarsGroup; private _brushGroup; private _firstRender; private _height; private _width; private _histogramWidth; private _histogramHeight; private _barWidth; private _maxCount; private _extent?; private _barsData; private _highlightedBarsData; private _histogramData?; private _highlightedData?; private _bandIntervals; private _currentSelection?; private _currentSelectionInPixels?; private _yScale; private _xScale; private _axis; private _brushInstance?; constructor(containerNode: HTMLElement, config?: HistogramConfigInterface); private _initializeSVG; setLoadingState(): void; private _initializeGroups; private get _barPadding(); private get _formatter(); getCurrentSelection(): number[] | undefined; getCurrentSelectionInPixels(): number[]; getBarWidth(): number; getConfig(): HistogramConfigInterface; setConfig(config?: HistogramConfigInterface): void; setSelection(selection?: [number, number], renderOnly?: boolean): void; resize(): void; render(): void; destroy(): void; private _parseData; setHistogramData(data: number[] | undefined, customExtent?: [number, number]): void; setHighlightedData(data: number[] | undefined): void; private _updateAxis; private _updateBrush; private _updateBars; private _createBars; private _animateBars; private _updateScales; private _updateHistogramData; private _generateBandIntervals; private _disableBrush; private _mapSelection; private _getClosestRange; private _brushCurrentSelection; } export type { HistogramConfigInterface, HistogramBarData };