import type { VirtualItem, Virtualizer } from '@tanstack/react-virtual';
import type { AriaAttributes, CSSProperties, DragEventHandler, KeyboardEventHandler, MouseEventHandler, ReactNode } from 'react';
import type { ClassNames, ColumnType, DivWithCustomScrollProp } from '../types/index.js';
export interface ColumnHeaderProps {
    visibleColumnIndex: number;
    onDragStart: DragEventHandler<HTMLDivElement>;
    onDragOver: DragEventHandler<HTMLDivElement>;
    onDrop: DragEventHandler<HTMLDivElement>;
    onDragEnter: DragEventHandler<HTMLDivElement>;
    onDragEnd: DragEventHandler<HTMLDivElement>;
    dragOver: boolean;
    isDraggable: boolean;
    headerTooltip: string;
    virtualColumn: VirtualItem;
    columnVirtualizer: Virtualizer<DivWithCustomScrollProp, Element>;
    isRtl: boolean;
    children: ReactNode | ReactNode[];
    columnId?: string;
    showVerticalEndBorder: boolean;
    classNames: ClassNames;
    id: string;
    onClick: MouseEventHandler<HTMLDivElement> | undefined;
    onKeyDown?: KeyboardEventHandler<HTMLDivElement> | undefined;
    onKeyUp?: KeyboardEventHandler<HTMLDivElement> | undefined;
    className: string;
    style: CSSProperties;
    column: ColumnType;
    role: string;
    isFiltered?: boolean;
    title?: string;
    ['aria-sort']?: AriaAttributes['aria-sort'];
    ['aria-label']?: AriaAttributes['aria-label'];
    ['aria-describedby']?: AriaAttributes['aria-describedby'];
}
export declare const ColumnHeader: {
    (props: ColumnHeaderProps): import("react").JSX.Element;
    displayName: string;
};
