/// <reference types="lodash" />
import { PropType } from '@vue/composition-api';
import { Styles } from '../common';
export declare const BASE_TABLE_EVENTS: string[];
export declare const BASE_TABLE_ALL_EVENTS: string[];
export interface TableListeners {
    [key: string]: Function;
}
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    thList: import("@vue/composition-api").ComputedRef<import("./type").BaseTableCol<import("./type").TableRowData>[][]>;
    isVirtual: import("@vue/composition-api").ComputedRef<boolean>;
    global: import("@vue/composition-api").Ref<{
        cancelText?: string;
        clearFilterResultButtonText?: string;
        columnConfigButtonText?: string;
        columnConfigDescriptionText?: string;
        columnConfigTitleText?: string;
        confirmText?: string;
        empty?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        expandIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        filterIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        hideSortTips?: boolean;
        loadingMoreText?: string;
        loadingText?: string;
        resetText?: string;
        searchResultText?: string;
        selectAllText?: string;
        sortAscendingOperationText?: string;
        sortCancelOperationText?: string;
        sortDescendingOperationText?: string;
        sortIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        treeExpandAndFoldIcon?: (h: import("vue").CreateElement, props: {
            type: "expand" | "fold";
        }) => import("vue/types/vnode").ScopedSlotReturnValue;
    }>;
    tableFootHeight: import("@vue/composition-api").Ref<number>;
    tableWidth: import("@vue/composition-api").Ref<number>;
    tableElmWidth: import("@vue/composition-api").Ref<number>;
    tableRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableElmRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    tableBaseClass: {
        table: string;
        columnResizableTable: string;
        overflowVisible: string;
        body: string;
        content: string;
        topContent: string;
        bottomContent: string;
        paginationWrap: string;
        tdLastRow: string;
        tdFirstCol: string;
        thCellInner: string;
        tableRowEdit: 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;
        footerAffixed: string;
        horizontalBarAffixed: string;
        affixedHeader: string;
        affixedHeaderElm: string;
        affixedFooterElm: string;
        affixedFooterWrap: string;
        scrollbarDivider: string;
        fullHeight: string;
        resizeLine: string;
        obviousScrollbar: string;
        affixedHeaderWrap: string;
    };
    spansAndLeafNodes: import("@vue/composition-api").ComputedRef<{
        rowspanAndColspanMap: import("./interface").ThRowspanAndColspan;
        leafColumns: import("./type").BaseTableCol<import("./type").TableRowData>[];
    }>;
    dynamicBaseTableClasses: import("@vue/composition-api").ComputedRef<import("../common").ClassName[]>;
    tableContentStyles: import("@vue/composition-api").ComputedRef<Styles>;
    tableElementStyles: import("@vue/composition-api").ComputedRef<Styles>;
    virtualScrollClasses: {
        cursor: string;
        header: string;
    };
    tableLayoutClasses: {
        auto: string;
        fixed: string;
    };
    tableElmClasses: import("@vue/composition-api").ComputedRef<(string[] | {
        [x: string]: string | number;
    })[]>;
    tableContentRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    isFixedHeader: import("@vue/composition-api").Ref<boolean>;
    isWidthOverflow: import("@vue/composition-api").Ref<boolean>;
    isFixedColumn: import("@vue/composition-api").Ref<boolean>;
    rowAndColFixedPosition: import("@vue/composition-api").Ref<import("./interface").RowAndColFixedPosition>;
    showColumnShadow: {
        left: boolean;
        right: boolean;
    };
    thWidthList: import("@vue/composition-api").Ref<{
        [x: string]: number;
    }>;
    isPaginateData: import("@vue/composition-api").Ref<boolean>;
    dataSource: import("@vue/composition-api").Ref<{
        [x: string]: any;
        children?: any[];
    }[]>;
    scrollType: "lazy" | "virtual";
    rowHeight: number;
    trs: Map<any, any>;
    bufferSize: number;
    scrollHeight: import("@vue/composition-api").ComputedRef<any>;
    visibleData: import("@vue/composition-api").Ref<any[]>;
    translateY: import("@vue/composition-api").ComputedRef<any>;
    affixHeaderRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    affixFooterRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    paginationRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    showAffixHeader: import("@vue/composition-api").Ref<boolean>;
    showAffixFooter: import("@vue/composition-api").Ref<boolean>;
    scrollbarWidth: import("@vue/composition-api").Ref<number>;
    isMultipleHeader: import("@vue/composition-api").ComputedRef<boolean>;
    showRightDivider: import("@vue/composition-api").ComputedRef<boolean>;
    resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    resizeLineStyle: {
        display: string;
        height: string;
        left: string;
        bottom: string;
    };
    columnResizeParams: {
        resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
        resizeLineStyle: {
            display: string;
            height: string;
            left: string;
            bottom: string;
        };
        onColumnMouseover: (e: MouseEvent) => void;
        onColumnMousedown: (e: MouseEvent, col: import("./type").BaseTableCol<import("./type").TableRowData>) => void;
        recalculateColWidth: import("./interface").RecalculateColumnWidthFunc;
        setEffectColMap: (nodes: import("./type").BaseTableCol<import("./type").TableRowData>[], parent: import("./type").BaseTableCol<import("./type").TableRowData>) => void;
    };
    horizontalScrollbarRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableBodyRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    showAffixPagination: import("@vue/composition-api").Ref<boolean>;
    getListener: () => TableListeners;
    renderPagination: (h: import("vue").CreateElement) => JSX.Element;
    renderTNode: (name: string, options?: import("../hooks/render-tnode").OptionsType) => any;
    handleRowMounted: () => void;
    onFixedChange: () => void;
    onHorizontalScroll: (scrollElement?: HTMLElement) => void;
    updateAffixHeaderOrFooter: () => void;
    refreshTable: import("lodash").DebouncedFunc<() => void>;
    onInnerVirtualScroll: (e: WheelEvent) => void;
}> & import("@vue/composition-api").Data, {}, {}, {
    renderExpandedRow: PropType<(h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<import("./type").TableRowData>) => JSX.Element>;
    onLeafColumnsChange: PropType<(columns: import("./type").BaseTableCol<import("./type").TableRowData>[]) => void>;
    allowResizeColumnWidth: {
        type: BooleanConstructor;
        default: any;
    };
    bordered: BooleanConstructor;
    bottomContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    cellEmptyContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<import("./type").TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    columns: {
        type: import("vue").PropType<import("./type").BaseTableCol<import("./type").TableRowData>[]>;
        default: () => import("./type").BaseTableCol<import("./type").TableRowData>[];
    };
    data: {
        type: import("vue").PropType<import("./type").TableRowData[]>;
        default: () => import("./type").TableRowData[];
    };
    disableDataPage: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: string;
    };
    firstFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    fixedRows: {
        type: import("vue").PropType<number[]>;
    };
    footData: {
        type: import("vue").PropType<import("./type").TableRowData[]>;
        default: () => import("./type").TableRowData[];
    };
    footerAffixProps: {
        type: import("vue").PropType<import("../affix").TdAffixProps>;
    };
    footerAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
        default: boolean;
    };
    footerSummary: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    headerAffixProps: {
        type: import("vue").PropType<import("../affix").TdAffixProps>;
    };
    headerAffixedTop: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
        default: boolean;
    };
    height: {
        type: import("vue").PropType<string | number>;
    };
    horizontalScrollAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
    };
    hover: BooleanConstructor;
    lastFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    loading: {
        type: import("vue").PropType<boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: any;
    };
    loadingProps: {
        type: import("vue").PropType<import("../loading").TdLoadingProps>;
    };
    maxHeight: {
        type: import("vue").PropType<string | number>;
    };
    pagination: {
        type: import("vue").PropType<import("..").TdPaginationProps>;
    };
    paginationAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
    };
    resizable: BooleanConstructor;
    rowAttributes: {
        type: import("vue").PropType<import("./type").TableRowAttributes<import("./type").TableRowData>>;
    };
    rowClassName: {
        type: import("vue").PropType<import("../common").ClassName | ((params: import("./type").RowClassNameParams<import("./type").TableRowData>) => import("../common").ClassName)>;
    };
    rowKey: {
        type: StringConstructor;
        default: string;
        required: boolean;
    };
    rowspanAndColspan: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>>;
    };
    rowspanAndColspanInFooter: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>>;
    };
    scroll: {
        type: import("vue").PropType<import("./type").TableScroll>;
    };
    size: {
        type: import("vue").PropType<import("../common").SizeEnum>;
        default: import("../common").SizeEnum;
        validator(val: import("../common").SizeEnum): boolean;
    };
    stripe: BooleanConstructor;
    tableContentWidth: {
        type: StringConstructor;
        default: string;
    };
    tableLayout: {
        type: import("vue").PropType<"fixed" | "auto">;
        default: "fixed" | "auto";
        validator(val: "fixed" | "auto"): boolean;
    };
    topContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    verticalAlign: {
        type: import("vue").PropType<"top" | "bottom" | "middle">;
        default: "top" | "bottom" | "middle";
        validator(val: "top" | "bottom" | "middle"): boolean;
    };
    onCellClick: import("vue").PropType<(context: import("./type").BaseTableCellEventContext<import("./type").TableRowData>) => void>;
    onPageChange: import("vue").PropType<(pageInfo: import("..").PageInfo, newDataSource: import("./type").TableRowData[]) => void>;
    onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onScroll: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
    onScrollX: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
    onScrollY: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
    renderExpandedRow: PropType<(h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<import("./type").TableRowData>) => JSX.Element>;
    onLeafColumnsChange: PropType<(columns: import("./type").BaseTableCol<import("./type").TableRowData>[]) => void>;
    allowResizeColumnWidth: {
        type: BooleanConstructor;
        default: any;
    };
    bordered: BooleanConstructor;
    bottomContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    cellEmptyContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<import("./type").TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    columns: {
        type: import("vue").PropType<import("./type").BaseTableCol<import("./type").TableRowData>[]>;
        default: () => import("./type").BaseTableCol<import("./type").TableRowData>[];
    };
    data: {
        type: import("vue").PropType<import("./type").TableRowData[]>;
        default: () => import("./type").TableRowData[];
    };
    disableDataPage: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: string;
    };
    firstFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    fixedRows: {
        type: import("vue").PropType<number[]>;
    };
    footData: {
        type: import("vue").PropType<import("./type").TableRowData[]>;
        default: () => import("./type").TableRowData[];
    };
    footerAffixProps: {
        type: import("vue").PropType<import("../affix").TdAffixProps>;
    };
    footerAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
        default: boolean;
    };
    footerSummary: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    headerAffixProps: {
        type: import("vue").PropType<import("../affix").TdAffixProps>;
    };
    headerAffixedTop: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
        default: boolean;
    };
    height: {
        type: import("vue").PropType<string | number>;
    };
    horizontalScrollAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
    };
    hover: BooleanConstructor;
    lastFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    loading: {
        type: import("vue").PropType<boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: any;
    };
    loadingProps: {
        type: import("vue").PropType<import("../loading").TdLoadingProps>;
    };
    maxHeight: {
        type: import("vue").PropType<string | number>;
    };
    pagination: {
        type: import("vue").PropType<import("..").TdPaginationProps>;
    };
    paginationAffixedBottom: {
        type: import("vue").PropType<boolean | import("../affix").TdAffixProps>;
    };
    resizable: BooleanConstructor;
    rowAttributes: {
        type: import("vue").PropType<import("./type").TableRowAttributes<import("./type").TableRowData>>;
    };
    rowClassName: {
        type: import("vue").PropType<import("../common").ClassName | ((params: import("./type").RowClassNameParams<import("./type").TableRowData>) => import("../common").ClassName)>;
    };
    rowKey: {
        type: StringConstructor;
        default: string;
        required: boolean;
    };
    rowspanAndColspan: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>>;
    };
    rowspanAndColspanInFooter: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>>;
    };
    scroll: {
        type: import("vue").PropType<import("./type").TableScroll>;
    };
    size: {
        type: import("vue").PropType<import("../common").SizeEnum>;
        default: import("../common").SizeEnum;
        validator(val: import("../common").SizeEnum): boolean;
    };
    stripe: BooleanConstructor;
    tableContentWidth: {
        type: StringConstructor;
        default: string;
    };
    tableLayout: {
        type: import("vue").PropType<"fixed" | "auto">;
        default: "fixed" | "auto";
        validator(val: "fixed" | "auto"): boolean;
    };
    topContent: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    verticalAlign: {
        type: import("vue").PropType<"top" | "bottom" | "middle">;
        default: "top" | "bottom" | "middle";
        validator(val: "top" | "bottom" | "middle"): boolean;
    };
    onCellClick: import("vue").PropType<(context: import("./type").BaseTableCellEventContext<import("./type").TableRowData>) => void>;
    onPageChange: import("vue").PropType<(pageInfo: import("..").PageInfo, newDataSource: import("./type").TableRowData[]) => void>;
    onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<import("./type").TableRowData>) => void>;
    onScroll: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
    onScrollX: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
    onScrollY: import("vue").PropType<(params: {
        e: WheelEvent;
    }) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    data: import("./type").TableRowData[];
    columns: import("./type").BaseTableCol<import("./type").TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    size: import("../common").SizeEnum;
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    bordered: boolean;
    stripe: boolean;
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    footData: import("./type").TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
} & {
    height?: string | number;
    maxHeight?: string | number;
    scroll?: import("./type").TableScroll;
    pagination?: unknown;
    onScroll?: (params: {
        e: WheelEvent;
    }) => void;
    onCellClick?: (context: import("./type").BaseTableCellEventContext<import("./type").TableRowData>) => void;
    onPageChange?: (pageInfo: import("..").PageInfo, newDataSource: import("./type").TableRowData[]) => void;
    bottomContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    cellEmptyContent?: string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<import("./type").TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue);
    firstFullRow?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    fixedRows?: number[];
    footerAffixProps?: unknown;
    footerSummary?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    headerAffixProps?: unknown;
    horizontalScrollAffixedBottom?: unknown;
    lastFullRow?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    loadingProps?: unknown;
    paginationAffixedBottom?: unknown;
    rowAttributes?: import("./type").TableRowAttributes<import("./type").TableRowData>;
    rowClassName?: unknown;
    rowspanAndColspan?: import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>;
    rowspanAndColspanInFooter?: import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>;
    topContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    onRowClick?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowDblclick?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMousedown?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseenter?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseleave?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseover?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseup?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onScrollX?: (params: {
        e: WheelEvent;
    }) => void;
    onScrollY?: (params: {
        e: WheelEvent;
    }) => void;
    renderExpandedRow?: (h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<import("./type").TableRowData>) => JSX.Element;
    onLeafColumnsChange?: (columns: import("./type").BaseTableCol<import("./type").TableRowData>[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    thList: import("@vue/composition-api").ComputedRef<import("./type").BaseTableCol<import("./type").TableRowData>[][]>;
    isVirtual: import("@vue/composition-api").ComputedRef<boolean>;
    global: import("@vue/composition-api").Ref<{
        cancelText?: string;
        clearFilterResultButtonText?: string;
        columnConfigButtonText?: string;
        columnConfigDescriptionText?: string;
        columnConfigTitleText?: string;
        confirmText?: string;
        empty?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        expandIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        filterIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        hideSortTips?: boolean;
        loadingMoreText?: string;
        loadingText?: string;
        resetText?: string;
        searchResultText?: string;
        selectAllText?: string;
        sortAscendingOperationText?: string;
        sortCancelOperationText?: string;
        sortDescendingOperationText?: string;
        sortIcon?: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        treeExpandAndFoldIcon?: (h: import("vue").CreateElement, props: {
            type: "expand" | "fold";
        }) => import("vue/types/vnode").ScopedSlotReturnValue;
    }>;
    tableFootHeight: import("@vue/composition-api").Ref<number>;
    tableWidth: import("@vue/composition-api").Ref<number>;
    tableElmWidth: import("@vue/composition-api").Ref<number>;
    tableRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableElmRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    tableBaseClass: {
        table: string;
        columnResizableTable: string;
        overflowVisible: string;
        body: string;
        content: string;
        topContent: string;
        bottomContent: string;
        paginationWrap: string;
        tdLastRow: string;
        tdFirstCol: string;
        thCellInner: string;
        tableRowEdit: 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;
        footerAffixed: string;
        horizontalBarAffixed: string;
        affixedHeader: string;
        affixedHeaderElm: string;
        affixedFooterElm: string;
        affixedFooterWrap: string;
        scrollbarDivider: string;
        fullHeight: string;
        resizeLine: string;
        obviousScrollbar: string;
        affixedHeaderWrap: string;
    };
    spansAndLeafNodes: import("@vue/composition-api").ComputedRef<{
        rowspanAndColspanMap: import("./interface").ThRowspanAndColspan;
        leafColumns: import("./type").BaseTableCol<import("./type").TableRowData>[];
    }>;
    dynamicBaseTableClasses: import("@vue/composition-api").ComputedRef<import("../common").ClassName[]>;
    tableContentStyles: import("@vue/composition-api").ComputedRef<Styles>;
    tableElementStyles: import("@vue/composition-api").ComputedRef<Styles>;
    virtualScrollClasses: {
        cursor: string;
        header: string;
    };
    tableLayoutClasses: {
        auto: string;
        fixed: string;
    };
    tableElmClasses: import("@vue/composition-api").ComputedRef<(string[] | {
        [x: string]: string | number;
    })[]>;
    tableContentRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    isFixedHeader: import("@vue/composition-api").Ref<boolean>;
    isWidthOverflow: import("@vue/composition-api").Ref<boolean>;
    isFixedColumn: import("@vue/composition-api").Ref<boolean>;
    rowAndColFixedPosition: import("@vue/composition-api").Ref<import("./interface").RowAndColFixedPosition>;
    showColumnShadow: {
        left: boolean;
        right: boolean;
    };
    thWidthList: import("@vue/composition-api").Ref<{
        [x: string]: number;
    }>;
    isPaginateData: import("@vue/composition-api").Ref<boolean>;
    dataSource: import("@vue/composition-api").Ref<{
        [x: string]: any;
        children?: any[];
    }[]>;
    scrollType: "lazy" | "virtual";
    rowHeight: number;
    trs: Map<any, any>;
    bufferSize: number;
    scrollHeight: import("@vue/composition-api").ComputedRef<any>;
    visibleData: import("@vue/composition-api").Ref<any[]>;
    translateY: import("@vue/composition-api").ComputedRef<any>;
    affixHeaderRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    affixFooterRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    paginationRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    showAffixHeader: import("@vue/composition-api").Ref<boolean>;
    showAffixFooter: import("@vue/composition-api").Ref<boolean>;
    scrollbarWidth: import("@vue/composition-api").Ref<number>;
    isMultipleHeader: import("@vue/composition-api").ComputedRef<boolean>;
    showRightDivider: import("@vue/composition-api").ComputedRef<boolean>;
    resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    resizeLineStyle: {
        display: string;
        height: string;
        left: string;
        bottom: string;
    };
    columnResizeParams: {
        resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
        resizeLineStyle: {
            display: string;
            height: string;
            left: string;
            bottom: string;
        };
        onColumnMouseover: (e: MouseEvent) => void;
        onColumnMousedown: (e: MouseEvent, col: import("./type").BaseTableCol<import("./type").TableRowData>) => void;
        recalculateColWidth: import("./interface").RecalculateColumnWidthFunc;
        setEffectColMap: (nodes: import("./type").BaseTableCol<import("./type").TableRowData>[], parent: import("./type").BaseTableCol<import("./type").TableRowData>) => void;
    };
    horizontalScrollbarRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableBodyRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    showAffixPagination: import("@vue/composition-api").Ref<boolean>;
    getListener: () => TableListeners;
    renderPagination: (h: import("vue").CreateElement) => JSX.Element;
    renderTNode: (name: string, options?: import("../hooks/render-tnode").OptionsType) => any;
    handleRowMounted: () => void;
    onFixedChange: () => void;
    onHorizontalScroll: (scrollElement?: HTMLElement) => void;
    updateAffixHeaderOrFooter: () => void;
    refreshTable: import("lodash").DebouncedFunc<() => void>;
    onInnerVirtualScroll: (e: WheelEvent) => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    data: import("./type").TableRowData[];
    columns: import("./type").BaseTableCol<import("./type").TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    size: import("../common").SizeEnum;
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    bordered: boolean;
    stripe: boolean;
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    footData: import("./type").TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
} & {
    height?: string | number;
    maxHeight?: string | number;
    scroll?: import("./type").TableScroll;
    pagination?: unknown;
    onScroll?: (params: {
        e: WheelEvent;
    }) => void;
    onCellClick?: (context: import("./type").BaseTableCellEventContext<import("./type").TableRowData>) => void;
    onPageChange?: (pageInfo: import("..").PageInfo, newDataSource: import("./type").TableRowData[]) => void;
    bottomContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    cellEmptyContent?: string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<import("./type").TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue);
    firstFullRow?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    fixedRows?: number[];
    footerAffixProps?: unknown;
    footerSummary?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    headerAffixProps?: unknown;
    horizontalScrollAffixedBottom?: unknown;
    lastFullRow?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    loadingProps?: unknown;
    paginationAffixedBottom?: unknown;
    rowAttributes?: import("./type").TableRowAttributes<import("./type").TableRowData>;
    rowClassName?: unknown;
    rowspanAndColspan?: import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>;
    rowspanAndColspanInFooter?: import("./type").TableRowspanAndColspanFunc<import("./type").TableRowData>;
    topContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    onRowClick?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowDblclick?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMousedown?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseenter?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseleave?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseover?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onRowMouseup?: (context: import("./type").RowEventContext<import("./type").TableRowData>) => void;
    onScrollX?: (params: {
        e: WheelEvent;
    }) => void;
    onScrollY?: (params: {
        e: WheelEvent;
    }) => void;
    renderExpandedRow?: (h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<import("./type").TableRowData>) => JSX.Element;
    onLeafColumnsChange?: (columns: import("./type").BaseTableCol<import("./type").TableRowData>[]) => void;
}, {
    data: import("./type").TableRowData[];
    columns: import("./type").BaseTableCol<import("./type").TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    size: import("../common").SizeEnum;
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    bordered: boolean;
    stripe: boolean;
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    footData: import("./type").TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
}, true>);
export default _default;
