import type { BoxBounds, DynamicContext } from 'ag-charts-core'; import type { EventsHub } from '../../core/eventsHub'; import type { LocaleManager } from '../../locale/localeManager'; import type { ChartRegistry } from '../../module/moduleContext'; import { BBox } from '../../scene/bbox'; import { Listeners } from '../../util/listeners'; import type { ExpansionControllerWidget } from '../../widget/expandableWidget'; import type { RovingDirection } from '../../widget/rovingDirection'; import { ToolbarWidget } from '../../widget/toolbarWidget'; import type { MouseWidgetEvent } from '../../widget/widgetEvents'; import { ToolbarButtonWidget, type ToolbarButtonWidgetOptions } from './toolbarButtonWidget'; type ButtonInteractionOptions = Parameters[1]; export interface ToolbarButtonOptions extends ToolbarButtonWidgetOptions { section?: string; } export interface ToolbarEventMap { 'button-pressed': { event: MouseWidgetEvent<'click'>; button: ButtonOptions & { index: number; }; buttonBounds: BoxBounds; buttonWidget: ExpansionControllerWidget; }; 'button-focused': { button: { index: number; }; }; } export declare abstract class BaseToolbar = ToolbarEventMap> extends ToolbarWidget { private ariaLabelId; horizontalSpacing: number; verticalSpacing: number; protected readonly events: Listeners; protected hasPrefix: boolean; private readonly buttonWidgets; private expanded?; protected readonly eventsHub: EventsHub; protected readonly localeManager: LocaleManager; private readonly domManager; private readonly updateAriaLabel; constructor({ eventsHub, localeManager, domManager }: DynamicContext, ariaLabelId: string, orientation: RovingDirection); setAriaLabelId(ariaLabelId: string): void; addToolbarListener(eventType: K, handler: (event: EventMap[K]) => void): () => void; clearButtons(): void; protected getInteractionOptions(): ButtonInteractionOptions; updateButtons(buttons: Array): void; updateButtonByIndex(index: number, button: ButtonOptions): void; clearActiveButton(): void; toggleActiveButtonByIndex(index: number): void; toggleButtonEnabledByIndex(index: number, enabled: boolean): void; toggleSwitchCheckedByIndex(index: number, checked: boolean): void; getButtonBounds(): BBox[]; getButtonWidget(index: number): ButtonWidget | undefined; setButtonHiddenByIndex(index: number, hidden: boolean): void; protected getButtonWidgetBounds(buttonWidget: ButtonWidget): BBox; private refreshButtonClasses; private createButton; protected abstract createButtonWidget(): ButtonWidget; } export declare class Toolbar extends BaseToolbar { protected createButtonWidget(): ToolbarButtonWidget; } export {};