@explita/daily-toolset-components
Version:
A lightweight and versatile collection of TypeScript utility functions and form components, inspired by ShadCN UI, designed for seamless everyday development. Enhance your Node.js, React, and Next.js projects with a well-structured suite of helpers for st
29 lines (28 loc) • 1 kB
TypeScript
import React, { ReactNode } from "react";
export declare function DataTable<D extends Record<string, any>>({ sortable, columns, data, onRowClick, hideFilter, hideHeader, hideFooter, additionalFilter, ref, emptyMessage, defaultRowsPerPage, }: TableProps<D>): React.JSX.Element;
type Column<Data extends object> = {
title: string | ReactNode;
key: keyof Data;
width?: number;
sortable?: boolean;
sortDir?: "asc" | "desc";
render?: (data: Data) => ReactNode;
style?: React.CSSProperties;
className?: string;
};
type TableProps<Data extends object = any> = {
sortable?: boolean;
columns?: Column<Data>[];
data?: Data[];
onRowClick?: (data: Data) => void;
hideFilter?: boolean;
hideHeader?: boolean;
hideFooter?: boolean;
rowsPerPage?: number;
additionalFilter?: ReactNode;
additionalFooter?: ReactNode;
ref?: React.RefObject<HTMLTableElement>;
emptyMessage?: string;
defaultRowsPerPage?: 10 | 25 | 50 | 100;
};
export {};