import React from 'react'; import { TableColumnConfig, TableDataItem, TableProps } from '../../Table'; import './withTableSettings.css'; interface SortableItem { id: string; title: React.ReactNode; isSelected?: boolean; isProtected?: boolean; } export interface TableColumnSetupItem { id: string; title: React.ReactNode; selected?: boolean; required?: boolean; } export declare type TableSettingsData = Array<{ id: string; isSelected?: boolean; }>; export declare function filterColumns(columns: TableColumnConfig[], settings: TableSettingsData): TableColumnConfig[]; export declare function getColumnStringTitle(column: TableColumnConfig): string; export declare function getActualItems(columns: TableColumnConfig[], settings: TableSettingsData): SortableItem[]; export interface WithTableSettingsProps { settingsPopupWidth?: string; settings: TableSettingsData; updateSettings: (data: TableSettingsData) => void; } export declare function withTableSettings(TableComponent: React.ComponentType & E>): React.ComponentType & WithTableSettingsProps & E>; export {};