import { TableToolbarConfig, ColumnConfig, RowConfig } from '../../../../shared/types/table';
import { AdvancedFilterConfig } from '../../types/filter';
interface TableToolbarProps<T = unknown> extends TableToolbarConfig {
    /** Valor actual de búsqueda (controlado). Cuando se pasa, el input y los chips reflejan este valor (p. ej. restaurado desde persistencia). */
    searchValue?: string;
    selectedCount?: number;
    /** IDs de filas seleccionadas; se usa para construir el contexto pasado a los callbacks del toolbar. */
    selectedIds?: (string | number)[];
    columns?: ColumnConfig<T>[];
    rows?: RowConfig<T>[];
    filters?: AdvancedFilterConfig[];
    onColumnConfig?: () => void;
    onColumnVisibilityChange?: (columnId: string, visible: boolean) => void;
    onMultipleColumnVisibilityChange?: (updates: Array<{
        columnId: string;
        visible: boolean;
    }>) => void;
    onColumnReorder?: (reorderedColumns: ColumnConfig[]) => void;
    onFiltersApply?: (filters: AdvancedFilterConfig[]) => void;
    className?: string;
}
export declare const TableToolbar: <T = unknown>({ showSearch, searchPlaceholder, searchValue: controlledSearchValue, showColumnConfig, showCustomAction, customActionLabel, customActionIcon, showSecondCustomAction, secondCustomActionLabel, secondCustomActionIcon, showFilters, onSearch, onFilter, onCustomAction, onSecondCustomAction, primaryCustomAction, secondaryCustomAction, customActions, selectedCount, selectedIds, columns, rows, filters, onColumnConfig, onColumnVisibilityChange, onMultipleColumnVisibilityChange, onColumnReorder, onFiltersApply, className, }: TableToolbarProps<T>) => import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=TableToolbar.d.ts.map