class DataTableComponent<T> implements AfterContentInit, OnChanges, OnInit, OnDestroy { @Input() items: T[]; @Input() itemsPerPage: number; @Input() currentPage: number; @Input() totalItems: number; @Input() emptyStateLabel: string; @Input() selectionManager?: SelectionManager<T>; @Output() pageChange = new EventEmitter<number>(); @Output() itemsPerPageChange = new EventEmitter<number>(); @Input() allSelected: boolean; @Input() isRowSelectedFn: ((item: T) => boolean) | undefined; @Output() allSelectChange = new EventEmitter<void>(); @Output() rowSelectChange = new EventEmitter<{ event: MouseEvent; item: T }>(); @ContentChildren(DataTableColumnComponent) columns: QueryList<DataTableColumnComponent>; @ContentChildren(TemplateRef) templateRefs: QueryList<TemplateRef<any>>; rowTemplate: TemplateRef<any>; currentStart: number; currentEnd: number; disableSelect = false; constructor(changeDetectorRef: ChangeDetectorRef) ngOnInit() => ; ngOnChanges(changes: SimpleChanges) => ; ngOnDestroy() => ; ngAfterContentInit() => void; trackByFn(index: number, item: any) => ; onToggleAllClick() => ; onRowClick(item: T, event: MouseEvent) => ;}