/** * -------------------------------------------------------------------------- * CoreUI PRO react-data-grid columns.ts * License (https://coreui.io/pro/license/) * -------------------------------------------------------------------------- */ import type { ReactNode } from 'react'; import type { CDataGridColumn, CDataGridColumnMenuBuilder, CDataGridMenuAction, CDataGridTable, DataGridLabels } from './types'; export interface MenuIcons { hideColumn: ReactNode; moveStart: ReactNode; moveEnd: ReactNode; pinStart: ReactNode; pinEnd: ReactNode; sortAscending: ReactNode; sortDescending: ReactNode; sortNeutral: ReactNode; unpin: ReactNode; } export interface BuildMenuActionsContext { builder: CDataGridColumnMenuBuilder | null; column: CDataGridColumn; icons: MenuIcons; labels: DataGridLabels; ordering: boolean; pinning: boolean; sortable: boolean; table: CDataGridTable; visibility: boolean; } export declare const buildMenuActions: ({ builder, column, icons, labels, ordering, pinning, sortable, table, visibility }: BuildMenuActionsContext) => CDataGridMenuAction[]; export declare const visibleLeafColumns: (table: CDataGridTable) => import("@tanstack/table-core").Column<{ cellSelectionFeature: import("@tanstack/table-core").TableFeature; columnFilteringFeature: import("@tanstack/table-core").TableFeature; globalFilteringFeature: import("@tanstack/table-core").TableFeature; columnFacetingFeature: import("@tanstack/table-core").TableFeature; columnOrderingFeature: import("@tanstack/table-core").TableFeature; columnPinningFeature: import("@tanstack/table-core").TableFeature; columnSizingFeature: import("@tanstack/table-core").TableFeature; columnResizingFeature: import("@tanstack/table-core").TableFeature; columnVisibilityFeature: import("@tanstack/table-core").TableFeature; rowPaginationFeature: import("@tanstack/table-core").TableFeature; rowSelectionFeature: import("@tanstack/table-core").TableFeature; rowSortingFeature: import("@tanstack/table-core").TableFeature; facetedRowModel: (table: import("@tanstack/table-core").Table, columnId: string) => () => import("@tanstack/table-core").RowModel; facetedUniqueValues: (table: import("@tanstack/table-core").Table, columnId: string) => () => Map; filteredRowModel: (table: import("@tanstack/table-core").Table) => () => import("@tanstack/table-core").RowModel; paginatedRowModel: (table: import("@tanstack/table-core").Table) => () => import("@tanstack/table-core").RowModel; sortedRowModel: (table: import("@tanstack/table-core").Table) => () => import("@tanstack/table-core").RowModel; filterFns: { includesString: import("@tanstack/table-core").CreatedFilterFn; }; sortFns: { alphanumeric: import("@tanstack/table-core").CreatedSortFn; datetime: import("@tanstack/table-core").CreatedSortFn; text: import("@tanstack/table-core").CreatedSortFn; }; }, import("@coreui/data-grid").DataGridItem, unknown>[]; export declare const visibleColumns: (table: CDataGridTable, columns: CDataGridColumn[]) => CDataGridColumn[]; export declare const orderedLeafIds: (table: CDataGridTable) => string[]; export declare const canReorderColumn: (table: CDataGridTable, sourceKey: string, targetKey: string) => boolean; export declare const reorderColumn: (table: CDataGridTable, sourceKey: string, targetKey: string, after: boolean) => void; export declare const moveColumn: (table: CDataGridTable, columnKey: string, direction: -1 | 1) => void;