dgz-ui-shared
Version:
Custom ui library using React.js, Shadcn/ui, TailwindCSS, Typescript, dgz-ui library
21 lines • 788 B
TypeScript
import type { ColumnType } from '../types';
export interface UseColumnsProps<TData> {
key: string;
columns: ColumnType<TData>[];
}
/**
* useColumns manages visibility of table columns using a persisted store.
* Returns formatted columns and helpers to toggle/reset visibility.
*
* @template TData - Row data type.
* @param props.key - Unique key for storing visibility per table.
* @param props.columns - Original column definitions.
*/
export declare const useColumns: <TData>({ key, columns, }: UseColumnsProps<TData>) => {
formattedColumns: (Omit<ColumnType<TData>, "hidden"> & {
hidden: boolean;
})[];
handleColumnsChange: (column: ColumnType<TData>, value: boolean) => void;
resetColumns: () => void;
};
//# sourceMappingURL=useColumns.d.ts.map