import React, { ReactNode } from 'react';
import { BaseTableCol, PrimaryTableCol, TableRowData, TdBaseTableProps } from '../type';
import { TableColumns } from './useMultiHeader';
export declare function renderTitle(col: TableColumns[0], index: number): React.ReactNode;
export interface UseTableHeaderParams {
    columns: TdBaseTableProps['columns'];
}
export default function useTableHeader({ columns }: UseTableHeaderParams): {
    thList: BaseTableCol<TableRowData>[][];
    isMultipleHeader: boolean;
    spansAndLeafNodes: {
        rowspanAndColspanMap: import("./useMultiHeader").ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    };
    renderTitleWidthIcon: ([title, sortIcon, filterIcon]: ReactNode[], col: PrimaryTableCol<TableRowData>, colIndex: number, ellipsisTitle: BaseTableCol["ellipsisTitle"], attach: HTMLElement, extra?: {
        classPrefix: string;
        ellipsisOverlayClassName: string;
    }) => React.JSX.Element;
};
