import { type ListTable, type PivotTable } from '@visactor/vtable'; import type { FilterStateManager } from './filter-state-manager'; import { ValueFilter } from './value-filter'; import { ConditionFilter } from './condition-filter'; import type { FilterMode, FilterOptions, FilterStyles } from './types'; export declare class FilterToolbar { table: ListTable | PivotTable; filterStateManager: FilterStateManager; pluginOptions: FilterOptions; valueFilter: ValueFilter | null; conditionFilter: ConditionFilter | null; activeTab: 'byValue' | 'byCondition'; isVisible: boolean; selectedField: string | number | null; filterModes: FilterMode[]; private filterMenu; private filterTabsContainer; private filterMenuWidth; private currentCol?; private currentRow?; private filterTabByValue; private filterTabByCondition; private footerContainer; private clearFilterOptionLink; private cancelFilterButton; private applyFilterButton; private pluginId; constructor(table: ListTable | PivotTable, filterStateManager: FilterStateManager, pluginOptions: FilterOptions); private onTabSwitch; private updateSelectedField; private applyFilter; private clearFilter; private recordHistory; private updateClearFilterButtonState; render(container: HTMLElement): void; updateStyles(styles: FilterStyles): void; attachEventListeners(): void; adjustMenuPosition(col?: number | null, row?: number | null, providedLeft?: number | null, providedTop?: number | null): void; show(col: number, row: number, filterModes: FilterMode[]): void; hide: (currentCol?: number, currentRow?: number) => void; destroy(): void; }