import { SetupContext } from '@vue/composition-api';
import { CreateElement } from 'vue';
import { BaseTableCol, PrimaryTableCol, TableRowData, TdBaseTableProps } from '../type';
import { BaseTableColumns } from '../interface';
import { TNodeReturnValue } from '../../common';
export declare function renderTitle(h: CreateElement, slots: SetupContext['slots'], col: BaseTableColumns[0], index: number): import("vue/types/vnode").ScopedSlotReturnValue;
export default function useTableHeader(props: TdBaseTableProps): {
    thList: import("@vue/composition-api").ComputedRef<BaseTableCol<TableRowData>[][]>;
    isMultipleHeader: import("@vue/composition-api").ComputedRef<boolean>;
    spansAndLeafNodes: import("@vue/composition-api").ComputedRef<{
        rowspanAndColspanMap: import("../interface").ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    }>;
    renderTitleWidthIcon: (h: CreateElement, [title, sortIcon, filterIcon]: TNodeReturnValue[], col: PrimaryTableCol<TableRowData>, colIndex: number, ellipsisTitle: BaseTableCol['ellipsisTitle'], attach: HTMLElement) => JSX.Element;
};
