import { DataTableColumn } from './useDataTable'; export type DataTableSize = 's' | 'm'; export interface DataTableFilterTag { /** Stable id used when emitting `remove-filter`. */ id: string; /** Visible tag label. */ label: string; } export interface DataTableUi { /** Scroll wrapper around the table. */ root?: string; /** Clip region around the native ``. Owns overflow when `scrollHeight` is set. */ scroller?: string; /** Native `
` element. */ table?: string; /** Native `` when any column has a footer. */ tfoot?: string; /** Footer cell. */ tf?: string; /** Sort toggle inside a sortable header cell. */ sortButton?: string; /** Selection column header and body cells. */ selection?: string; /** Native checkbox or radio in the selection column. */ selectionInput?: string; /** Expander column header and body cells. */ expansion?: string; /** Expand/collapse toggle in the expander column. */ expansionButton?: string; /** Chevron icon inside the expander toggle. */ expansionIcon?: string; /** Expanded-content cell (`#expansion` slot). */ expansionPanel?: string; /** Body row when it is selected. */ trSelected?: string; /** Wrapper around AzPagination when `paginator` is true. */ paginator?: string; /** Built-in toolbar root when `toolbar` is true. */ toolbar?: string; /** Main toolbar row (selection, toggle, search, actions). */ toolbarRow?: string; /** Left cluster of the toolbar row (selection status). */ toolbarStart?: string; /** Right cluster of the toolbar row (toggle, search, actions). */ toolbarEnd?: string; /** Selection count cluster. */ toolbarSelection?: string; /** "{count} selected" label. */ toolbarSelectionCount?: string; /** Default search field when `globalFilter` is bound. */ toolbarSearch?: string; /** Magnifying-glass icon inside the search field. */ toolbarSearchIcon?: string; /** Native search input. */ toolbarSearchInput?: string; /** Actions cluster (filter, settings, primary, negative). */ toolbarActions?: string; /** Bulk-selection banner under the main row. */ toolbarBanner?: string; /** Banner body copy. */ toolbarBannerText?: string; /** Banner action link (select all / clear). */ toolbarBannerAction?: string; /** Active filter tags row. */ toolbarTags?: string; /** Single filter tag pill. */ toolbarTag?: string; /** Dismiss control inside a filter tag. */ toolbarTagRemove?: string; /** Reset link after the filter tags. */ toolbarTagsReset?: string; } export declare const defaultDataTableUi: { readonly root: "relative w-full font-sans"; readonly scroller: "relative w-full overflow-x-auto"; readonly table: "w-full min-w-full border-collapse text-sm text-fg"; readonly caption: "caption-top mb-2 text-start text-sm text-[color:var(--color-text-secondary)] font-sans"; readonly thead: "border-b border-edge bg-surface-muted"; readonly tbody: "bg-surface"; readonly tr: string; readonly th: "text-start align-middle font-semibold text-fg"; readonly td: "text-start align-middle text-fg"; readonly empty: "text-center"; readonly emptyContent: "flex flex-col items-center gap-2 font-sans"; readonly emptyTitle: "m-0 font-semibold text-fg"; readonly emptyDescription: "m-0 text-sm text-[color:var(--color-text-secondary)]"; readonly emptyAction: "mt-2"; readonly emptyActionButton: string; readonly emptyActionIcon: "text-xl leading-none"; readonly loading: "absolute inset-0 grid place-items-center bg-surface/70 font-sans text-sm text-fg"; readonly header: "mb-3 font-sans"; readonly footer: "mt-3 font-sans"; readonly tfoot: "border-t border-edge bg-surface-muted"; readonly tf: "text-start align-middle font-semibold text-fg"; readonly sortButton: string; readonly selection: "w-10 text-center"; readonly selectionInput: string; readonly expansion: "w-10 text-center"; readonly expansionButton: string; readonly expansionIcon: "h-3.5 w-3.5 shrink-0 transition-transform motion-reduce:transition-none"; readonly expansionPanel: "text-start align-middle text-fg bg-surface-muted"; readonly trSelected: "bg-[color-mix(in_srgb,var(--color-text-accent)_10%,transparent)]"; readonly paginator: "mt-3 flex justify-end font-sans"; readonly toolbar: "mb-3 flex flex-col gap-2 font-sans"; readonly toolbarRow: "flex flex-wrap items-center gap-x-4 gap-y-2"; readonly toolbarStart: "flex min-w-0 shrink-0 flex-wrap items-center gap-2"; readonly toolbarEnd: "flex min-w-0 flex-1 flex-wrap items-center justify-end gap-3"; readonly toolbarSelection: "inline-flex items-center gap-2 text-sm text-fg"; readonly toolbarSelectionCount: "whitespace-nowrap font-semibold"; readonly toolbarSearch: "relative inline-flex w-full min-w-[12rem] max-w-sm items-center sm:flex-1"; readonly toolbarSearchIcon: string; readonly toolbarSearchInput: string; readonly toolbarActions: "inline-flex flex-wrap items-center gap-2"; readonly toolbarBanner: string; readonly toolbarBannerText: "m-0"; readonly toolbarBannerAction: string; readonly toolbarTags: "flex flex-wrap items-center gap-2"; readonly toolbarTag: string; readonly toolbarTagRemove: string; readonly toolbarTagsReset: string; }; export declare const dataTableVariants: { readonly size: { readonly s: { readonly th: "px-3 py-2"; readonly td: "px-3 py-2"; readonly empty: "px-3 py-10"; }; readonly m: { readonly th: "px-4 py-3"; readonly td: "px-4 py-3"; readonly empty: "px-4 py-14"; }; }; readonly striped: { readonly true: { readonly tr: "even:bg-surface-muted"; }; }; readonly gridlines: { readonly true: { readonly th: "border border-edge"; readonly td: "border border-edge"; readonly empty: "border border-edge"; readonly tf: "border border-edge"; }; }; readonly scrollable: { readonly true: { readonly scroller: string; }; }; readonly stickyHeader: { readonly true: { readonly thead: "sticky top-0 z-10"; readonly tfoot: "sticky bottom-0 z-10"; }; }; }; export declare const alignClass: { readonly start: "text-start"; readonly center: "text-center"; readonly end: "text-end"; }; export declare const sortIconClass = "h-3.5 w-3.5 shrink-0"; export interface DataTableClassOptions { size: DataTableSize; striped?: boolean; gridlines?: boolean; scrollHeight?: string; stickyHeader?: boolean; hasFrozenColumns?: boolean; ui?: DataTableUi; } export declare const dataTableClasses: (options: DataTableClassOptions) => { root: string; scroller: string; table: string; caption: string; thead: string; tbody: string; tfoot: string; empty: string; emptyContent: string; emptyTitle: string; emptyDescription: string; emptyAction: string; emptyActionButton: string; emptyActionIcon: (icon?: string) => string; loading: string; header: string; footer: string; paginator: string; toolbar: string; toolbarRow: string; toolbarStart: string; toolbarEnd: string; toolbarSelection: string; toolbarSelectionCount: string; toolbarSearch: string; toolbarSearchIcon: string; toolbarSearchInput: string; toolbarActions: string; toolbarBanner: string; toolbarBannerText: string; toolbarBannerAction: string; toolbarTags: string; toolbarTag: string; toolbarTagRemove: string; toolbarTagsReset: string; sortButton: string; selectionInput: string; row: (selected: boolean) => string; selectionTh: string; selectionTd: string; selectionTf: string; expansionTh: string; expansionTd: string; expansionTf: string; expansionButton: string; expansionIcon: (expanded: boolean) => string; expansionPanel: string; th: (column: DataTableColumn) => string; td: (column: DataTableColumn) => string; tf: (column: DataTableColumn) => string; }; //# sourceMappingURL=ui.d.ts.map
` when `caption` is set. */ caption?: string; /** Header row group. */ thead?: string; /** Body row group. */ tbody?: string; /** Body row. */ tr?: string; /** Header cell. */ th?: string; /** Body cell. */ td?: string; /** Empty-state cell when `value` is empty. */ empty?: string; /** Wrapper inside the empty cell (title, description, action). */ emptyContent?: string; /** Empty-state title (`emptyMessage`). */ emptyTitle?: string; /** Empty-state description (`emptyDescription`). */ emptyDescription?: string; /** Wrapper around the empty action. */ emptyAction?: string; /** Built-in empty-state action button (`emptyActionLabel`). */ emptyActionButton?: string; /** Icon inside the built-in empty-state action button. */ emptyActionIcon?: string; /** Loading overlay. */ loading?: string; /** Wrapper above the table for the `header` slot. */ header?: string; /** Wrapper below the table for the `footer` slot. */ footer?: string; /** Native `