import React from 'react';
import { Identifiable } from '@custis/common';
import { TTableColumn } from '../../models';
import { IdType } from 'react-table';
interface Props<T extends Identifiable, TFilter, TSorting> {
    columns: TTableColumn<T, TFilter, TSorting>[];
    hiddenColumns: IdType<T>[];
    isColumnVisible(id?: IdType<T>): boolean | undefined;
    toggleHidden(id?: IdType<T>, visible?: boolean, touched?: boolean): void;
    toggleAll(value: boolean): void;
}
export declare const VisibleColumns: <T extends Identifiable, TFilter, TSorting>({ columns, isColumnVisible, toggleHidden, toggleAll, hiddenColumns, }: Props<T, TFilter, TSorting>) => React.JSX.Element;
export {};
