import { ChartTheme } from '../theme'; import { InteractionMode } from './InteractionManager'; import { ToolbarOptions } from '../types'; export interface ChartControlsCallbacks { onResetZoom: () => void; onSetType: (type: "line" | "scatter" | "line+scatter") => void; onToggleSmoothing: () => void; onTogglePan: (active: boolean) => void; onSetMode: (mode: InteractionMode) => void; onExport: () => void; onAutoScale: () => void; onToggleLegend: (visible: boolean) => void; onHoverStart: () => void; onHoverEnd: () => void; } export declare class ChartControls { private container; private toolbar; private buttonsWrapper; private callbacks; private theme; private options; private isSmoothing; private currentMode; private isLegendVisible; private currentType; private isPinned; private isExpanded; constructor(parent: HTMLElement, theme: ChartTheme, callbacks: ChartControlsCallbacks, options?: ToolbarOptions); private isDarkTheme; private updateToolbarStyle; private updateVisibility; private createButtons; private createPinButton; private enforceSVGVisibility; private createButton; private updateButtonStates; updateTheme(theme: ChartTheme): void; destroy(): void; }