import type { ScaleBand, ScaleQuantile } from 'd3-scale';
import type { WaferMap } from '..';
import type { DieRenderInfo, WaferMapDie, PointCoordinates } from '../types';
import type { Dimensions, Margin } from '../workers/types';
/**
 * Data Manager uses Computations and Prerendering modules in order and exposes the results
 */
export declare class DataManager {
    private readonly wafermap;
    get containerDimensions(): Dimensions;
    get dieDimensions(): Dimensions;
    get radius(): number;
    get margin(): Margin;
    get horizontalScale(): ScaleBand<number>;
    get invertedHorizontalScale(): ScaleQuantile<number, number>;
    get verticalScale(): ScaleBand<number>;
    get invertedVerticalScale(): ScaleQuantile<number, number>;
    get labelsFontSize(): number;
    get diesRenderInfo(): DieRenderInfo[];
    get data(): Map<string, WaferMapDie>;
    private readonly computations;
    private readonly prerendering;
    private dataMap;
    constructor(wafermap: WaferMap);
    updateContainerDimensions(): void;
    updateScales(): void;
    updateLabelsFontSize(): void;
    updateDiesRenderInfo(): void;
    getWaferMapDie(point: PointCoordinates): WaferMapDie | undefined;
    private updateDataMap;
}
