import type { JsxCustomElementAttributes, JsxElementProps } from '@ecopages/jsx'; import type { RuiTable as RuiTableElement, RuiTableProps } from './table.script'; import './table.script'; export type RuiTableHeaderProps = JsxElementProps; /** Header row group for table columns. */ export declare function RuiTableHeader({ children, class: className, ...props }: RuiTableHeaderProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableBodyProps = JsxElementProps; /** Data row group for table rows. */ export declare function RuiTableBody({ children, class: className, ...props }: RuiTableBodyProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableFooterProps = JsxElementProps; /** Footer row group for summaries or aggregate values. */ export declare function RuiTableFooter({ children, class: className, ...props }: RuiTableFooterProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableColumnProps = JsxElementProps & { id: string; allowsSorting?: boolean; isRowHeader?: boolean; }; /** Column header with optional sort control. */ export declare function RuiTableColumn({ id, allowsSorting, isRowHeader, children, class: className, ...props }: RuiTableColumnProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableRowProps = JsxElementProps & { id: string; disabled?: boolean; actionable?: boolean; }; /** A selectable or actionable data row. */ export declare function RuiTableRow({ id, disabled, actionable, children, class: className, ...props }: RuiTableRowProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableCellProps = JsxElementProps & { isRowHeader?: boolean; }; /** A data cell, or the primary row header when `isRowHeader` is set. */ export declare function RuiTableCell({ isRowHeader, children, class: className, ...props }: RuiTableCellProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableSelectionCellProps = JsxElementProps & { scope: 'all' | 'row'; label?: string; }; /** Selection checkbox cell for the header (`all`) or a data row (`row`). */ export declare function RuiTableSelectionCell({ scope, label, class: className, ...props }: RuiTableSelectionCellProps): import("@ecopages/jsx").JsxRenderable; export type RuiTableEmptyStateProps = JsxElementProps & { colSpan: number; }; /** A full-width table row used when a filtered collection has no results. */ export declare function RuiTableEmptyState({ colSpan, children, class: className, ...props }: RuiTableEmptyStateProps): import("@ecopages/jsx").JsxRenderable; /** * React Aria–inspired composable data table. * * @remarks The table owns keyboard navigation, row selection, and sorting state. * Callers retain ownership of their collection and reorder it after `rui-sort-change`. * Prefer `RuiGrid` for simple read-only grids and `RuiTreegrid` for expandable hierarchies. * * @cssclass rui-table - Table surface (`role="grid"`). */ export declare function RuiTable({ children, label, ariaBusy, selectionMode, ...props }: JsxCustomElementAttributes): import("@ecopages/jsx").JsxRenderable;