import { AfterContentInit, EventEmitter, OnDestroy, OnInit, QueryList, TemplateRef } from '@angular/core'; import { IFooterButtonOptions } from './custom-table.model'; import { IFasTableActionButton, IFasTableDropdownFilter, IFasTableFilters, IFasTableToggleButton } from './custom-table.model'; import * as i0 from "@angular/core"; export declare class FasServiceTableComponent implements AfterContentInit, OnInit, OnDestroy { templates: QueryList>; customTemplates: Map>; showBorder: boolean; value: any[]; columns: any[]; rows: number; scrollHeight: string; rowsPerPageOptions: number[]; paginator: boolean; globalFilterFields: string[]; dataKey: string; showCurrentPageReport: boolean; loading: boolean; styleClass: string; showCheckbox: boolean; selection?: any; selectionMode?: 'single' | 'multiple' | null | undefined; unselectOnClick?: boolean; lazy: boolean; first: number; customFunction: (rowData: any, rowIndex: number) => void; showEmptyColumn: boolean; footerButtonOptions: IFooterButtonOptions | IFooterButtonOptions[] | null; rowClickFunction: (rowData: any, rowIndex: number) => void; isOutlineHeadlight: boolean; isInsideHeadlight: boolean; checkboxSelectHeadlight: boolean; customSelectHeadlight: boolean; showFooterPageReport: boolean; isTransparentHeader: boolean; customResultsName: string; totalRecords: number; alwaysShowPaginator: boolean; paginatorDropdownUp: boolean; /** Show text search input above the table */ showSearch: boolean; /** Placeholder for the search input */ searchPlaceholder: string; /** Show date-range calendar picker above the table */ showDateRange: boolean; /** Label shown before the date-range inputs */ dateRangeLabel: string; /** Maximum selectable date in the calendar, defaults to today */ maxDate: Date; /** Toggle buttons rendered in the filter bar */ toggleButtons: IFasTableToggleButton[]; /** Action buttons rendered in the filter bar */ actionButtons: IFasTableActionButton[]; /** Show manual refresh button in the filter bar */ showRefreshButton: boolean; /** Tooltip and mobile menu label for the manual refresh button */ refreshButtonTooltip: string; /** * Enable auto-refresh: shows a countdown and emits autoRefresh every N seconds. * Set to null/0 to disable. */ autoRefreshSeconds: number | null; private _showClearFilter; /** Show clear filter icon button when there are active filters */ set showClearFilter(value: boolean | string); get showClearFilter(): boolean; /** @deprecated Use showClearFilter instead. */ set showClearFilterButton(value: boolean | string); get showClearFilterButton(): boolean; /** Tooltip and mobile menu label for the clear filter button */ clearFilterTooltip: string; /** Debounce delay in ms for the search input (default 500) */ searchDebounceMs: number; /** Multiselect dropdown filters rendered in the filter bar */ dropdownFilters: IFasTableDropdownFilter[]; /** Emits current filter state whenever any filter value changes */ filtersChange: EventEmitter; /** Emits when the manual refresh button is clicked */ refreshClick: EventEmitter; /** Emits on every auto-refresh tick */ autoRefresh: EventEmitter; /** Emits the id of the action button that was clicked */ actionClick: EventEmitter; filterSearchValue: string; filterDateFrom: Date | null; filterTimeFrom: Date | null; filterDateTo: Date | null; filterTimeTo: Date | null; filterToggleValues: Record; filterDropdownValues: Record; filterHasActive: boolean; filterRefreshCountdown: number; private _searchSubject; private _filterSubscription; private _destroy$; pageChange: EventEmitter<{ first: number; rows: number; }>; selectionChange: EventEmitter; lazyLoad: EventEmitter; selectedRowIndexes: number[]; isMobile: boolean; onResize(): void; get filterLeftActionButtons(): IFasTableActionButton[]; get filterRightActionButtons(): IFasTableActionButton[]; get showFilterBar(): boolean; get hasMobileHiddenActions(): boolean; ngOnInit(): void; ngOnDestroy(): void; onFilterSearchChange(): void; onFilterDateRangeChange(): void; onFilterTimeFromChange(): void; onFilterTimeToChange(): void; onFilterToggleClick(id: string): void; onFilterRefreshClick(): void; onFilterActionClick(id: string): void; getMobileToggleLabel(btn: IFasTableToggleButton): string; getMobileActionLabel(btn: IFasTableActionButton): string; getMobileActionIcon(btn: IFasTableActionButton): string; getMobileClearFilterLabel(): string; getMobileRefreshLabel(): string; clearFilters(): void; onFilterDropdownChange(): void; /** Programmatically set search value (e.g. from a global search effect) */ setFilterSearchValue(value: string): void; /** Programmatically set a toggle value */ setFilterToggleValue(id: string, value: boolean): void; /** Reset the auto-refresh countdown without triggering a reload */ resetAutoRefreshCountdown(): void; private _mergeDateTime; private _emitFilters; private _updateFilterHasActive; private _coerceBoolean; private _formatActionId; private _getDefaultActionIcon; ngAfterContentInit(): void; customActions(callback: any, rowData: any, rowIndex: number, isSelectAction: boolean, event?: MouseEvent): void; onRowClick(rowData: any, rowIndex: number): void; onPageChange(event: any): void; toggleSelectedRow(rowIndex: number): void; selectRow(rowIndex: number): void; deselectRow(rowIndex: number): void; deselectAllRows(): void; onSelectionChange(newSelection: any): void; hasActions(): boolean; selectFirstPage(): void; onLazyLoad(event: any): void; isArray(obj: any): boolean; isSingleButtonOption(obj: any): boolean; getSingleFooterButtonOption(): IFooterButtonOptions; getFooterButtonOptionsArray(): IFooterButtonOptions[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }