import React from 'react';
import { DraggableChildrenFn } from 'react-beautiful-dnd';
import { SortOrder } from '@parlor/constants/types';
export type Header<T = string> = {
    className?: string;
    isActive?: true | {
        sortOrder: SortOrder;
    };
    isDragDisabled?: boolean;
    isSortable?: boolean;
    name: T;
    title: string;
    width?: number;
};
export type SelectAllProps = {
    onToggleAll?: (values: string[]) => void;
};
export type TableHeaderProps = {
    headers: Header[];
    isDraggingColumnEnabled?: boolean;
    isStickyLeftColumn?: boolean;
    renderClone: DraggableChildrenFn;
    togglePreventScroll(value: boolean): void;
    variant?: 'sticky';
};
interface ExtendedTableHeaderProps<T> extends TableHeaderProps {
    data?: T[];
    selectAllProps?: SelectAllProps;
}
export declare const TableHeader: React.MemoExoticComponent<({ headers, variant, isStickyLeftColumn, isDraggingColumnEnabled, renderClone, togglePreventScroll, data, selectAllProps, }: ExtendedTableHeaderProps<any>) => JSX.Element>;
export {};
