import { Scale } from '../../scales'; import { AxisOptions } from '../../types'; import { Series } from '../Series'; export interface AxisManagerContext { xAxisOptions: AxisOptions; xScale: Scale; yAxisOptionsMap: Map; yScales: Map; primaryYAxisId: string; series: Map; requestRender: () => void; } export declare class ChartAxisManager { private ctx; constructor(ctx: AxisManagerContext); /** Swap the X scale (e.g. broken-axis plugin) so tick generation uses it. */ setXScale(scale: Scale): void; /** * Add a new Y axis dynamically */ addYAxis(options: AxisOptions): string; /** * Remove a Y axis by ID */ removeYAxis(id: string): boolean; /** * Update Y axis configuration */ updateYAxis(id: string, options: Partial): void; /** * Update X axis configuration */ updateXAxis(options: Partial): void; /** * Get Y axis configuration by ID */ getYAxis(id: string): AxisOptions | undefined; /** * Get all Y axes configurations */ getAllYAxes(): AxisOptions[]; /** * Get the primary Y axis ID */ getPrimaryYAxisId(): string; /** * Get X axis configuration */ getXAxis(): AxisOptions; /** * Get X scale */ getXScale(): Scale; /** * Get Y scale by axis ID */ getYScale(axisId?: string): Scale | undefined; /** * Get all Y scales */ getAllYScales(): Map; }