import { ColumnDef } from '@tanstack/react-table'; export type ViewMode = 'compact' | 'wrapped'; export type TableSettingsState = { viewMode: ViewMode; visibleColumnIds: string[]; }; export type TableSettingsStorage = { get: (key: string) => TableSettingsState | undefined; set: (key: string, next: TableSettingsState) => void; }; export declare const localStorageTableSettingsStorage: TableSettingsStorage; interface UseTableSettingsOptions { storageKey: string; tableColumns?: ColumnDef[]; defaultViewMode?: ViewMode; defaultVisibleColumnIds?: string[]; storage?: TableSettingsStorage; } export declare function useTableSettings({ storageKey, tableColumns, defaultViewMode, defaultVisibleColumnIds, storage, }: UseTableSettingsOptions): { viewMode: ViewMode; toggleViewMode: () => void; setViewMode: (mode: ViewMode) => void; visibleColumnIds: string[]; setVisibleColumnIds: (ids: string[]) => void; }; export {};