import { PropType } from '@vue/composition-api';
import { RowAndColFixedPosition, ThRowspanAndColspan } from './interface';
import { BaseTableCol, TableRowData } from './type';
export interface TheadProps {
    isFixedHeader: boolean;
    rowAndColFixedPosition: RowAndColFixedPosition;
    thWidthList?: {
        [colKey: string]: number;
    };
    bordered: boolean;
    isMultipleHeader: boolean;
    spansAndLeafNodes: {
        rowspanAndColspanMap: ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    };
    thList: BaseTableCol<TableRowData>[][];
    columnResizeParams: {
        resizeLineRef: HTMLDivElement;
        resizeLineStyle: Object;
        onColumnMouseover: Function;
        onColumnMousedown: Function;
    };
    allowResizeColumnWidth: Boolean;
}
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    theadRef: import("@vue/composition-api").Ref<HTMLHeadElement>;
    theadClasses: import("@vue/composition-api").ComputedRef<(string | {
        [x: string]: boolean;
    })[]>;
    classPrefix: import("@vue/composition-api").ComputedRef<string>;
    slots: Readonly<{
        [name: string]: (...args: any[]) => import("vue").VNode[];
    }>;
    onColumnMouseover: Function;
    onColumnMousedown: Function;
    tableBaseClass: {
        table: string;
        overflowVisible: string;
        body: string;
        content: string;
        topContent: string;
        bottomContent: string;
        tdLastRow: string;
        tdFirstCol: string;
        thCellInner: string;
        cellEditable: string;
        cellEditWrap: string;
        bordered: string;
        striped: string;
        hover: string;
        loading: string;
        rowspanAndColspan: string;
        empty: string;
        emptyRow: string;
        headerFixed: string;
        columnFixed: string;
        widthOverflow: string;
        multipleHeader: string;
        affixedHeader: string;
        affixedHeaderElm: string;
        affixedFooterElm: string;
        affixedFooterWrap: string;
        scrollbarDivider: string;
        fullHeight: string;
        resizeLine: string;
    };
    tdAlignClasses: {
        left: string;
        right: string;
        center: string;
    };
    tableHeaderClasses: {
        header: string;
        thBordered: string;
        fixed: string;
        multipleHeader: string;
    };
    tableFooterClasses: {
        footer: string;
        fixed: string;
    };
    tableAlignClasses: {
        top: string;
        middle: string;
        bottom: string;
    };
    tableRowFixedClasses: {
        top: string;
        bottom: string;
        firstBottom: string;
        withoutBorderBottom: string;
    };
    tableColFixedClasses: {
        left: string;
        right: string;
        lastLeft: string;
        firstRight: string;
        leftShadow: string;
        rightShadow: string;
    };
    tableLayoutClasses: {
        auto: string;
        fixed: string;
    };
    tdEllipsisClass: string;
    tableFullRowClasses: {
        base: string;
        innerFullRow: string;
        innerFullElement: string;
        firstFullRow: string;
        lastFullRow: string;
    };
    tableExpandClasses: {
        iconBox: string;
        iconCell: string;
        row: string;
        rowInner: string;
        expanded: string;
        collapsed: string;
    };
    tableSortClasses: {
        sortable: string;
        title: string;
        trigger: string;
        doubleIcon: string;
        sortIcon: string;
        iconDirection: {
            asc: string;
            desc: string;
        };
        iconActive: string;
        iconDefault: string;
    };
    tableSelectedClasses: {
        selected: string;
        disabled: string;
    };
    tableFilterClasses: {
        filterable: string;
        popup: string;
        icon: string;
        popupContent: string;
        result: string;
        inner: string;
        bottomButtons: string;
        contentInner: string;
        iconWrap: string;
    };
    asyncLoadingClass: string;
    isFocusClass: string;
    isLoadingClass: string;
    isLoadMoreClass: string;
    tableTreeClasses: {
        col: string;
        inlineCol: string;
        icon: string;
    };
    tableDraggableClasses: {
        rowDraggable: string;
        rowHandlerDraggable: string;
        colDraggable: string;
        handle: string;
        ghost: string;
        chosen: string;
        dragging: string;
    };
    virtualScrollClasses: {
        cursor: string;
        header: string;
    };
    positiveRotate90: string;
    negativeRotate180: string;
}> & import("@vue/composition-api").Data, {}, {}, {
    isFixedHeader: BooleanConstructor;
    rowAndColFixedPosition: PropType<RowAndColFixedPosition>;
    thWidthList: PropType<{
        [colKey: string]: number;
    }>;
    bordered: BooleanConstructor;
    isMultipleHeader: BooleanConstructor;
    allowResizeColumnWidth: BooleanConstructor;
    spansAndLeafNodes: PropType<{
        rowspanAndColspanMap: ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    }>;
    thList: PropType<BaseTableCol<TableRowData>[][]>;
    columnResizeParams: PropType<{
        resizeLineRef: HTMLDivElement;
        resizeLineStyle: Object;
        onColumnMouseover: Function;
        onColumnMousedown: Function;
    }>;
}, import("@vue/composition-api").ExtractPropTypes<{
    isFixedHeader: BooleanConstructor;
    rowAndColFixedPosition: PropType<RowAndColFixedPosition>;
    thWidthList: PropType<{
        [colKey: string]: number;
    }>;
    bordered: BooleanConstructor;
    isMultipleHeader: BooleanConstructor;
    allowResizeColumnWidth: BooleanConstructor;
    spansAndLeafNodes: PropType<{
        rowspanAndColspanMap: ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    }>;
    thList: PropType<BaseTableCol<TableRowData>[][]>;
    columnResizeParams: PropType<{
        resizeLineRef: HTMLDivElement;
        resizeLineStyle: Object;
        onColumnMouseover: Function;
        onColumnMousedown: Function;
    }>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    bordered: boolean;
    allowResizeColumnWidth: boolean;
    isFixedHeader: boolean;
    isMultipleHeader: boolean;
} & {
    rowAndColFixedPosition?: RowAndColFixedPosition;
    thWidthList?: {
        [colKey: string]: number;
    };
    spansAndLeafNodes?: {
        rowspanAndColspanMap: ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    };
    thList?: BaseTableCol<TableRowData>[][];
    columnResizeParams?: {
        resizeLineRef: HTMLDivElement;
        resizeLineStyle: Object;
        onColumnMouseover: Function;
        onColumnMousedown: Function;
    };
}, import("@vue/composition-api").ShallowUnwrapRef<{
    theadRef: import("@vue/composition-api").Ref<HTMLHeadElement>;
    theadClasses: import("@vue/composition-api").ComputedRef<(string | {
        [x: string]: boolean;
    })[]>;
    classPrefix: import("@vue/composition-api").ComputedRef<string>;
    slots: Readonly<{
        [name: string]: (...args: any[]) => import("vue").VNode[];
    }>;
    onColumnMouseover: Function;
    onColumnMousedown: Function;
    tableBaseClass: {
        table: string;
        overflowVisible: string;
        body: string;
        content: string;
        topContent: string;
        bottomContent: string;
        tdLastRow: string;
        tdFirstCol: string;
        thCellInner: string;
        cellEditable: string;
        cellEditWrap: string;
        bordered: string;
        striped: string;
        hover: string;
        loading: string;
        rowspanAndColspan: string;
        empty: string;
        emptyRow: string;
        headerFixed: string;
        columnFixed: string;
        widthOverflow: string;
        multipleHeader: string;
        affixedHeader: string;
        affixedHeaderElm: string;
        affixedFooterElm: string;
        affixedFooterWrap: string;
        scrollbarDivider: string;
        fullHeight: string;
        resizeLine: string;
    };
    tdAlignClasses: {
        left: string;
        right: string;
        center: string;
    };
    tableHeaderClasses: {
        header: string;
        thBordered: string;
        fixed: string;
        multipleHeader: string;
    };
    tableFooterClasses: {
        footer: string;
        fixed: string;
    };
    tableAlignClasses: {
        top: string;
        middle: string;
        bottom: string;
    };
    tableRowFixedClasses: {
        top: string;
        bottom: string;
        firstBottom: string;
        withoutBorderBottom: string;
    };
    tableColFixedClasses: {
        left: string;
        right: string;
        lastLeft: string;
        firstRight: string;
        leftShadow: string;
        rightShadow: string;
    };
    tableLayoutClasses: {
        auto: string;
        fixed: string;
    };
    tdEllipsisClass: string;
    tableFullRowClasses: {
        base: string;
        innerFullRow: string;
        innerFullElement: string;
        firstFullRow: string;
        lastFullRow: string;
    };
    tableExpandClasses: {
        iconBox: string;
        iconCell: string;
        row: string;
        rowInner: string;
        expanded: string;
        collapsed: string;
    };
    tableSortClasses: {
        sortable: string;
        title: string;
        trigger: string;
        doubleIcon: string;
        sortIcon: string;
        iconDirection: {
            asc: string;
            desc: string;
        };
        iconActive: string;
        iconDefault: string;
    };
    tableSelectedClasses: {
        selected: string;
        disabled: string;
    };
    tableFilterClasses: {
        filterable: string;
        popup: string;
        icon: string;
        popupContent: string;
        result: string;
        inner: string;
        bottomButtons: string;
        contentInner: string;
        iconWrap: string;
    };
    asyncLoadingClass: string;
    isFocusClass: string;
    isLoadingClass: string;
    isLoadMoreClass: string;
    tableTreeClasses: {
        col: string;
        inlineCol: string;
        icon: string;
    };
    tableDraggableClasses: {
        rowDraggable: string;
        rowHandlerDraggable: string;
        colDraggable: string;
        handle: string;
        ghost: string;
        chosen: string;
        dragging: string;
    };
    virtualScrollClasses: {
        cursor: string;
        header: string;
    };
    positiveRotate90: string;
    negativeRotate180: string;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    bordered: boolean;
    allowResizeColumnWidth: boolean;
    isFixedHeader: boolean;
    isMultipleHeader: boolean;
} & {
    rowAndColFixedPosition?: RowAndColFixedPosition;
    thWidthList?: {
        [colKey: string]: number;
    };
    spansAndLeafNodes?: {
        rowspanAndColspanMap: ThRowspanAndColspan;
        leafColumns: BaseTableCol<TableRowData>[];
    };
    thList?: BaseTableCol<TableRowData>[][];
    columnResizeParams?: {
        resizeLineRef: HTMLDivElement;
        resizeLineStyle: Object;
        onColumnMouseover: Function;
        onColumnMousedown: Function;
    };
}, {
    bordered: boolean;
    allowResizeColumnWidth: boolean;
    isFixedHeader: boolean;
    isMultipleHeader: boolean;
}, true>);
export default _default;
