/** * @license * Copyright 2023 Nuraly, Laabidi Aymen * SPDX-License-Identifier: MIT */ import { LitElement, PropertyValueMap } from 'lit'; import { IHeader, SelectionMode, Sizes, SortAttribute } from './table.types.js'; import { TableHost } from './interfaces/index.js'; declare const HyTable_base: (new (...args: any[]) => import("@nuralyui/common/mixins").DependencyAware) & (new (...args: any[]) => import("@nuralyui/common/mixins").ThemeAware) & (new (...args: any[]) => import("@nuralyui/common/mixins").EventHandlerCapable) & (new (...args: any[]) => import("packages/common/src/shared/base-mixin.js").LightDomContent) & typeof LitElement; /** * Advanced table component with sorting, filtering, pagination, selection, and fixed columns. * * @example * ```html * * * * * * * * ``` * * @fires onPaginate - Fired when pagination changes * @fires nr-select - Fired when row selection changes * @fires onSearch - Fired when search/filter is applied * @fires onSort - Fired when sorting is applied */ export declare class HyTable extends HyTable_base implements TableHost { static useShadowDom: boolean; static styles: import("lit").CSSResult; headers: IHeader[]; rows: any[]; size: Sizes; withFilter: boolean; expandable: string | undefined; expansionRenderer: ((row: any, index: number) => any) | undefined; selectionMode: SelectionMode | undefined; fixedHeader: boolean; scrollConfig: { x?: number | string; y?: number | string; } | undefined; loading: boolean; emptyText: string; emptyIcon: string | undefined; serverSide: boolean; totalCount: number; clickable: boolean; pageSize: number; itemPerPage: number[]; selectedItemPerPage: number; displayedRows: any[]; selectedItems: boolean[]; currentPage: number; rowsCopy: any[]; activeSearch: boolean; sortAttribute: SortAttribute; expand: boolean[]; showFilterInput: boolean; filterValue: string; columnFilters: Map; activeFilterColumn: string | null; globalCheck?: HTMLElement; requiredComponents: string[]; private selectionController; private paginationController; private sortController; private filterController; connectedCallback(): void; updated(_changedProperties: PropertyValueMap | Map): void; willUpdate(_changedProperties: PropertyValueMap): void; /** * Initialize or reset pagination state */ private _initPagination; /** * Handle items per page change event */ _handleItemPerPage(itemPerPageEvent: CustomEvent): void; /** * Handle page navigation event */ _handleUpdatePage(updatePageEvent: CustomEvent): void; /** * Handle check all rows event */ _handleCheckAll(checkAllEvent: CustomEvent): void; /** * Handle check single row event */ _handleCheckOne(checkOneEvent: CustomEvent): void; /** * Handle select single row event (radio button mode) */ _handleSelectOne(selectOneEvent: CustomEvent): void; /** * Handle cancel selection action */ _handleCancelSelection(): void; /** * Handle search/filter input */ _handleSearch(searchEvent: CustomEvent): void; /** * Handle column sort order change */ _handleSortOrder(sortOrderEvent: CustomEvent): void; /** * Toggle expanded content for a row */ private _showExpandedContent; /** * Toggle filter input visibility */ private _toggleFilterInput; /** * Handle filter input change */ private _handleFilterInputChange; /** * Render the table component with all templates */ render(): import("lit-html").TemplateResult<1>; } export {}; //# sourceMappingURL=table.component.d.ts.map