@siemens/ngx-datatable
Version:
ngx-datatable is an Angular table grid component for presenting large and complex data.
83 lines (82 loc) • 4.85 kB
TypeScript
import { NgStyle } from '@angular/common';
import { EventEmitter, OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
import { ColumnResizeEventInternal, InnerSortEvent, PinnedColumns, ReorderEventInternal, SortableTableColumnInternal, TableColumnInternal, TargetChangedEvent } from '../../types/internal.types';
import { Row, SelectionType, SortDirection, SortEvent, SortPropDir, SortType } from '../../types/public.types';
import * as i0 from "@angular/core";
export declare class DataTableHeaderComponent implements OnDestroy, OnChanges {
private cd;
private scrollbarHelper;
readonly lastColumnId: import("@angular/core").WritableSignal<string | null>;
sortAscendingIcon?: string;
sortDescendingIcon?: string;
sortUnsetIcon?: string;
scrollbarH?: boolean;
dealsWithGroup?: boolean;
targetMarkerTemplate?: TemplateRef<unknown>;
enableClearingSortState: boolean;
set innerWidth(val: number);
get innerWidth(): number;
sorts: SortPropDir[];
sortType: SortType;
allRowsSelected?: boolean;
selectionType?: SelectionType;
reorderable?: boolean;
verticalScrollVisible: boolean;
ariaHeaderCheckboxMessage: string;
dragEventTarget?: MouseEvent | TouchEvent;
set headerHeight(val: any);
get headerHeight(): any;
set columns(val: TableColumnInternal[]);
get columns(): any[];
set offsetX(val: number);
get offsetX(): number;
readonly sort: EventEmitter<SortEvent>;
readonly reorder: EventEmitter<ReorderEventInternal>;
readonly resize: EventEmitter<ColumnResizeEventInternal>;
readonly resizing: EventEmitter<ColumnResizeEventInternal>;
readonly select: EventEmitter<void>;
readonly columnContextmenu: EventEmitter<{
event: MouseEvent;
column: TableColumnInternal;
}>;
_columnsByPin: PinnedColumns[];
_columnGroupWidths: any;
_innerWidth: number;
_offsetX: number;
_columns: TableColumnInternal[];
_headerHeight: string;
_styleByGroup: {
left: NgStyle['ngStyle'];
center: NgStyle['ngStyle'];
right: NgStyle['ngStyle'];
};
private destroyed;
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
onLongPressStart({ event, model }: {
event: MouseEvent | TouchEvent;
model: TableColumnInternal<Row>;
}): void;
onLongPressEnd({ model }: {
model: TableColumnInternal<Row>;
}): void;
get headerWidth(): string;
onColumnResized({ width, column }: {
width: number;
column: TableColumnInternal;
}): void;
onColumnResizing({ width, column }: {
width: number;
column: TableColumnInternal;
}): void;
private makeResizeEvent;
onColumnReordered(event: ReorderEventInternal): void;
onTargetChanged({ prevIndex, newIndex, initialIndex }: TargetChangedEvent): void;
getColumn(index: number): any;
onSort({ column, prevValue, newValue }: InnerSortEvent): void;
calcNewSorts(column: SortableTableColumnInternal, prevValue: SortDirection | undefined, newValue: SortDirection | undefined): SortPropDir[];
setStylesByGroup(): void;
calcStylesByGroup(group: 'center' | 'right' | 'left'): NgStyle['ngStyle'];
static ɵfac: i0.ɵɵFactoryDeclaration<DataTableHeaderComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DataTableHeaderComponent, "datatable-header", never, { "sortAscendingIcon": { "alias": "sortAscendingIcon"; "required": false; }; "sortDescendingIcon": { "alias": "sortDescendingIcon"; "required": false; }; "sortUnsetIcon": { "alias": "sortUnsetIcon"; "required": false; }; "scrollbarH": { "alias": "scrollbarH"; "required": false; }; "dealsWithGroup": { "alias": "dealsWithGroup"; "required": false; }; "targetMarkerTemplate": { "alias": "targetMarkerTemplate"; "required": false; }; "enableClearingSortState": { "alias": "enableClearingSortState"; "required": false; }; "innerWidth": { "alias": "innerWidth"; "required": false; }; "sorts": { "alias": "sorts"; "required": false; }; "sortType": { "alias": "sortType"; "required": false; }; "allRowsSelected": { "alias": "allRowsSelected"; "required": false; }; "selectionType": { "alias": "selectionType"; "required": false; }; "reorderable": { "alias": "reorderable"; "required": false; }; "verticalScrollVisible": { "alias": "verticalScrollVisible"; "required": false; }; "ariaHeaderCheckboxMessage": { "alias": "ariaHeaderCheckboxMessage"; "required": false; }; "headerHeight": { "alias": "headerHeight"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "offsetX": { "alias": "offsetX"; "required": false; }; }, { "sort": "sort"; "reorder": "reorder"; "resize": "resize"; "resizing": "resizing"; "select": "select"; "columnContextmenu": "columnContextmenu"; }, never, never, true, never>;
}