/// <reference types="react" />
import { DashboardBehaviour } from '../../contexts/DashboardBehaviour/types';
import { DataTableViewProps } from './DataTableView';
import { QueryAttributes } from '../../../../shared-logic/src/QueryAttributes/types';
import { TableRepresentation } from '../../../../shared-logic/src/DataTable/types';
import { TableColResizerType } from '../../base/Table/TableColumnResizer';
export declare type TableColumnTypes = {
    onOrderChange: DataTableViewProps['onOrderChange'];
    currentOrder?: QueryAttributes.Order;
    fieldIndex: number;
    columnOffset: number;
    isImpactedColumn: boolean;
    id: string;
    width: number | string;
    exportName: string | undefined;
    onSetExportName: (fieldId: string, exportName: string | undefined) => void;
    onSetNumberFormat: (fieldId: string, formatId: string) => void;
    currentNumberFormat: string | null | undefined;
    numberFormatOptions: DashboardBehaviour['numberFormatOptions'];
    fields: TableRepresentation['fields'];
    supportedAggregates: DashboardBehaviour['queryEngineConfig']['supportedAggregates'];
    supportedTimeTruncFunctions: DashboardBehaviour['queryEngineConfig']['supportedTimeTruncFunctions'];
    last: boolean;
    scope?: 'row' | 'column';
    onResizedColumn: (options: TableColResizerType) => void;
    isLastGroupColumn: boolean;
    isFirstGroupColumn: boolean;
    stickyLeft?: number;
    stickyZIndex?: number;
    stickyBackground?: string;
};
export declare const TableHeader: (props: TableColumnTypes) => JSX.Element;
