import { EventEmitter, OnInit } from '@angular/core'; import { ColumnDefinition } from 'verben-ng-ui/src/lib/components/data-table'; import { SortCondition, SortOperator, SortDirection } from './data-sort.types'; import * as i0 from "@angular/core"; export declare class DataSortComponent implements OnInit { columns: ColumnDefinition[]; data: T[]; enableDragAndDrop: boolean; sortApplied: EventEmitter; resetFilter: EventEmitter; sortableColumns: ColumnDefinition[]; selectedSorts: Map; showAllProperties: boolean; maxVisibleItems: number; draggedIndex: number | null; checkAll: boolean; selectedColumns: Set; ngOnInit(): void; private initializeSortableColumns; get visibleColumns(): ColumnDefinition[]; onDragStart(index: number, event: DragEvent): void; onDragOver(event: DragEvent): void; onDrop(index: number, event: DragEvent): void; private swapColumns; toggleSelectAll(): void; toggleColumnSelection(columnId: string): void; isColumnSelected(columnId: string): boolean; getSortOperators(column: ColumnDefinition): SortOperator[]; private determineColumnType; updateSort(columnId: string, direction: SortDirection): void; isColumnSorted(columnId: string, direction: SortDirection): boolean; getColumnHeader(column: ColumnDefinition): string; resetAll(): void; applySorts(): void; get activeSortCount(): number; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "lib-data-sort", never, { "columns": { "alias": "columns"; "required": false; }; "data": { "alias": "data"; "required": false; }; "enableDragAndDrop": { "alias": "enableDragAndDrop"; "required": false; }; }, { "sortApplied": "sortApplied"; "resetFilter": "resetFilter"; }, never, never, false, never>; }