UNPKG

@ackplus/react-tanstack-data-table

Version:

A powerful React data table component built with MUI and TanStack Table

47 lines 1.87 kB
import { Table } from '@tanstack/react-table'; import { ReactNode, RefObject, ReactElement } from 'react'; import { ColumnFilterState, TableSize } from '../types'; import { DataTableApi } from '../types/data-table-api'; /** * Context value for the DataTable */ interface DataTableContextValue<T = any> { table?: Table<T>; apiRef?: RefObject<DataTableApi<T> | null>; dataMode?: 'client' | 'server'; tableSize?: TableSize; onTableSizeChange?: (size: TableSize) => void; columnFilter?: ColumnFilterState; onChangeColumnFilter?: (filter: ColumnFilterState) => void; slots?: Record<string, any>; slotProps?: Record<string, any>; isExporting?: boolean; exportController?: AbortController | null; onCancelExport?: () => void; exportFilename?: string; onExportProgress?: (progress: { processedRows?: number; totalRows?: number; percentage?: number; }) => void; onExportComplete?: (result: { success: boolean; filename: string; totalRows: number; }) => void; onExportError?: (error: { message: string; code: string; }) => void; onServerExport?: (filters?: Partial<any>) => Promise<{ data: any[]; total: number; }>; } interface DataTableProviderProps<T = any> extends DataTableContextValue<T> { children: ReactNode; } export declare function DataTableProvider<T = any>({ children, table, apiRef, dataMode, tableSize, onTableSizeChange, columnFilter, onChangeColumnFilter, slots, slotProps, isExporting, exportController, onCancelExport, exportFilename, onExportProgress, onExportComplete, onExportError, onServerExport, }: DataTableProviderProps<T>): ReactElement; export declare function useDataTableContext<T = any>(): DataTableContextValue<T>; export {}; //# sourceMappingURL=data-table-context.d.ts.map