import { PropType } from '@vue/composition-api';
import { ComponentScrollToElementParams, Styles } from '../common';
import { BaseTableCol, TableRowData } from './type';
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<{
    virtualConfig: {
        visibleData: import("@vue/composition-api").Ref<any[]>;
        translateY: import("@vue/composition-api").Ref<number>;
        scrollHeight: import("@vue/composition-api").Ref<number>;
        isVirtualScroll: import("@vue/composition-api").ComputedRef<boolean>;
        handleScroll: () => void;
        handleRowMounted: (rowData: any) => void;
        scrollToElement: (p: import("../hooks").ScrollToElementParams) => void;
    };
    scrollToElement: (params: ComponentScrollToElementParams) => void;
    columnResizable: import("@vue/composition-api").ComputedRef<boolean>;
    thList: import("@vue/composition-api").ComputedRef<BaseTableCol<TableRowData>[][]>;
    classPrefix: string;
    innerPagination: import("@vue/composition-api").Ref<import("..").TdPaginationProps>;
    global: import("@vue/composition-api").ComputedRef<{} & (import("..").TableConfig | ({
        readonly expandIcon: any;
        readonly sortIcon: any;
        readonly filterIcon: any;
        readonly treeExpandAndFoldIcon: any;
        readonly hideSortTips: false;
        readonly size: "medium";
    } & {
        readonly empty: "暂无数据";
        readonly loadingText: "正在加载中，请稍后";
        readonly loadingMoreText: "点击加载更多";
        readonly filterInputPlaceholder: "请输入内容（无默认值）";
        readonly sortAscendingOperationText: "点击升序";
        readonly sortCancelOperationText: "点击取消排序";
        readonly sortDescendingOperationText: "点击降序";
        readonly clearFilterResultButtonText: "清空筛选";
        readonly columnConfigButtonText: "列配置";
        readonly columnConfigTitleText: "表格列配置";
        readonly columnConfigDescriptionText: "请选择需要在表格中显示的数据列";
        readonly confirmText: "确认";
        readonly cancelText: "取消";
        readonly resetText: "重置";
        readonly selectAllText: "全选";
        readonly searchResultText: "搜索“{result}”，找到 {count} 条结果";
    })) & import("..").TableConfig>;
    tableSize: import("@vue/composition-api").ComputedRef<import("../common").SizeEnum>;
    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>;
    sizeClassNames: {
        small: string;
        medium: string;
        large: string;
        default: string;
        xs: string;
        xl: string;
        block: string;
    };
    tableBaseClass: {
        table: (string | {
            [x: string]: boolean;
        })[];
        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: BaseTableCol<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[][]>;
    dividerBottom: import("@vue/composition-api").ComputedRef<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").ComputedRef<boolean>;
    dataSource: import("@vue/composition-api").Ref<{
        [x: string]: any;
        children?: any[];
    }[]>;
    affixHeaderRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    affixFooterRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    paginationRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    bottomContentRef: 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, col: BaseTableCol<TableRowData>) => void;
        onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
        setEffectColMap: (nodes: BaseTableCol<TableRowData>[], parent: BaseTableCol<TableRowData>) => void;
    };
    horizontalScrollbarRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableBodyRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    showAffixPagination: import("@vue/composition-api").Ref<boolean>;
    tActiveRow: import("@vue/composition-api").Ref<(string | number)[]>;
    hoverRow: import("@vue/composition-api").Ref<string | number>;
    showElement: import("@vue/composition-api").Ref<boolean>;
    getListener: () => TableListeners;
    renderPagination: (h: import("vue").CreateElement) => JSX.Element;
    onFixedChange: () => void;
    onHorizontalScroll: (scrollElement?: HTMLElement) => void;
    updateAffixHeaderOrFooter: () => void;
    refreshTable: () => void;
    onInnerVirtualScroll: (e: WheelEvent) => void;
    scrollColumnIntoView: (colKey: string) => void;
    onTableFocus: () => void;
    onTableBlur: () => void;
    onInnerRowClick: (context: import("./type").RowEventContext<TableRowData>) => void;
    paginationAffixRef: import("@vue/composition-api").Ref<any>;
    horizontalScrollAffixRef: import("@vue/composition-api").Ref<any>;
    headerTopAffixRef: import("@vue/composition-api").Ref<any>;
    footerBottomAffixRef: import("@vue/composition-api").Ref<any>;
    isIE: import("@vue/composition-api").ComputedRef<boolean>;
    tableRefTabIndex: import("@vue/composition-api").Ref<number>;
}> & import("@vue/composition-api").Data, {
    renderColGroup(columns: BaseTableCol<TableRowData>[], isAffixHeader?: boolean): JSX.Element;
    getHeadProps(isAffixHeader?: boolean): {
        isFixedHeader: boolean;
        showColumnShadow: {
            left: boolean;
            right: boolean;
        };
        thDraggable: boolean;
        rowAndColFixedPosition: import("./interface").RowAndColFixedPosition;
        isMultipleHeader: boolean;
        bordered: boolean;
        maxHeight: string | number;
        height: string | number;
        spansAndLeafNodes: {
            rowspanAndColspanMap: import("./interface").ThRowspanAndColspan;
            leafColumns: BaseTableCol<TableRowData>[];
        };
        thList: BaseTableCol<TableRowData>[][];
        thWidthList: {
            [x: string]: number;
        };
        resizable: boolean;
        columnResizeParams: {
            resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
            resizeLineStyle: {
                display: string;
                height: string;
                left: string;
                bottom: string;
            };
            onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
            onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
            setEffectColMap: (nodes: BaseTableCol<TableRowData>[], parent: BaseTableCol<TableRowData>) => void;
        };
        classPrefix: string;
        ellipsisOverlayClassName: string;
        attach: import("../common").AttachNode;
    };
    renderFixedHeader(columns: BaseTableCol<TableRowData>[]): JSX.Element;
    renderAffixedFooter(columns: BaseTableCol<TableRowData>[]): JSX.Element;
    renderAffixedHeader(columns: BaseTableCol<TableRowData>[]): JSX.Element;
}, {}, {
    renderExpandedRow: PropType<(h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<TableRowData>) => JSX.Element>;
    onLeafColumnsChange: PropType<(columns: BaseTableCol<TableRowData>[]) => void>;
    thDraggable: BooleanConstructor;
    activeRowKeys: {
        type: import("vue").PropType<(string | number)[]>;
        default: () => (string | number)[];
    };
    defaultActiveRowKeys: {
        type: import("vue").PropType<(string | number)[]>;
        default: () => (string | number)[];
    };
    activeRowType: {
        type: import("vue").PropType<"multiple" | "single">;
        default: string;
    };
    allowResizeColumnWidth: {
        type: BooleanConstructor;
        default: any;
    };
    attach: {
        type: import("vue").PropType<import("../common").AttachNode>;
    };
    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<TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    columns: {
        type: import("vue").PropType<BaseTableCol<TableRowData>[]>;
        default: () => BaseTableCol<TableRowData>[];
    };
    data: {
        type: import("vue").PropType<TableRowData[]>;
        default: () => TableRowData[];
    };
    disableDataPage: BooleanConstructor;
    disableSpaceInactiveRow: {
        type: BooleanConstructor;
        default: any;
    };
    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<TableRowData[]>;
        default: () => TableRowData[];
    };
    footerAffixProps: {
        type: import("vue").PropType<Partial<import("../affix").TdAffixProps>>;
    };
    footerAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<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<Partial<import("../affix").TdAffixProps>>;
    };
    headerAffixedTop: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
        default: boolean;
    };
    height: {
        type: import("vue").PropType<string | number>;
    };
    horizontalScrollAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
    };
    hover: BooleanConstructor;
    keyboardRowHover: {
        type: BooleanConstructor;
        default: boolean;
    };
    lastFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    lazyLoad: BooleanConstructor;
    loading: {
        type: import("vue").PropType<boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: any;
    };
    loadingProps: {
        type: import("vue").PropType<Partial<import("../loading").TdLoadingProps>>;
    };
    locale: {
        type: import("vue").PropType<import("..").TableConfig>;
    };
    maxHeight: {
        type: import("vue").PropType<string | number>;
    };
    pagination: {
        type: import("vue").PropType<import("..").TdPaginationProps>;
    };
    paginationAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
    };
    resizable: BooleanConstructor;
    rowAttributes: {
        type: import("vue").PropType<import("./type").TableRowAttributes<TableRowData>>;
    };
    rowClassName: {
        type: import("vue").PropType<import("../common").ClassName | ((params: import("./type").RowClassNameParams<TableRowData>) => import("../common").ClassName)>;
    };
    rowKey: {
        type: StringConstructor;
        default: string;
        required: boolean;
    };
    rowspanAndColspan: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
    };
    rowspanAndColspanInFooter: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
    };
    scroll: {
        type: import("vue").PropType<import("../common").TScroll>;
    };
    showHeader: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<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;
    };
    onActiveChange: import("vue").PropType<(activeRowKeys: (string | number)[], context: import("./type").ActiveChangeContext<TableRowData>) => void>;
    onActiveRowAction: import("vue").PropType<(context: import("./type").ActiveRowActionContext<TableRowData>) => void>;
    onCellClick: import("vue").PropType<(context: import("./type").BaseTableCellEventContext<TableRowData>) => void>;
    onColumnResizeChange: import("vue").PropType<(context: {
        columnsWidth: {
            [colKey: string]: number;
        };
    }) => void>;
    onPageChange: import("vue").PropType<(pageInfo: import("..").PageInfo, newDataSource: TableRowData[]) => void>;
    onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<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<TableRowData>) => JSX.Element>;
    onLeafColumnsChange: PropType<(columns: BaseTableCol<TableRowData>[]) => void>;
    thDraggable: BooleanConstructor;
    activeRowKeys: {
        type: import("vue").PropType<(string | number)[]>;
        default: () => (string | number)[];
    };
    defaultActiveRowKeys: {
        type: import("vue").PropType<(string | number)[]>;
        default: () => (string | number)[];
    };
    activeRowType: {
        type: import("vue").PropType<"multiple" | "single">;
        default: string;
    };
    allowResizeColumnWidth: {
        type: BooleanConstructor;
        default: any;
    };
    attach: {
        type: import("vue").PropType<import("../common").AttachNode>;
    };
    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<TableRowData>) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    columns: {
        type: import("vue").PropType<BaseTableCol<TableRowData>[]>;
        default: () => BaseTableCol<TableRowData>[];
    };
    data: {
        type: import("vue").PropType<TableRowData[]>;
        default: () => TableRowData[];
    };
    disableDataPage: BooleanConstructor;
    disableSpaceInactiveRow: {
        type: BooleanConstructor;
        default: any;
    };
    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<TableRowData[]>;
        default: () => TableRowData[];
    };
    footerAffixProps: {
        type: import("vue").PropType<Partial<import("../affix").TdAffixProps>>;
    };
    footerAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<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<Partial<import("../affix").TdAffixProps>>;
    };
    headerAffixedTop: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
        default: boolean;
    };
    height: {
        type: import("vue").PropType<string | number>;
    };
    horizontalScrollAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
    };
    hover: BooleanConstructor;
    keyboardRowHover: {
        type: BooleanConstructor;
        default: boolean;
    };
    lastFullRow: {
        type: import("vue").PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    lazyLoad: BooleanConstructor;
    loading: {
        type: import("vue").PropType<boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        default: any;
    };
    loadingProps: {
        type: import("vue").PropType<Partial<import("../loading").TdLoadingProps>>;
    };
    locale: {
        type: import("vue").PropType<import("..").TableConfig>;
    };
    maxHeight: {
        type: import("vue").PropType<string | number>;
    };
    pagination: {
        type: import("vue").PropType<import("..").TdPaginationProps>;
    };
    paginationAffixedBottom: {
        type: import("vue").PropType<boolean | Partial<import("../affix").TdAffixProps>>;
    };
    resizable: BooleanConstructor;
    rowAttributes: {
        type: import("vue").PropType<import("./type").TableRowAttributes<TableRowData>>;
    };
    rowClassName: {
        type: import("vue").PropType<import("../common").ClassName | ((params: import("./type").RowClassNameParams<TableRowData>) => import("../common").ClassName)>;
    };
    rowKey: {
        type: StringConstructor;
        default: string;
        required: boolean;
    };
    rowspanAndColspan: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
    };
    rowspanAndColspanInFooter: {
        type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
    };
    scroll: {
        type: import("vue").PropType<import("../common").TScroll>;
    };
    showHeader: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<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;
    };
    onActiveChange: import("vue").PropType<(activeRowKeys: (string | number)[], context: import("./type").ActiveChangeContext<TableRowData>) => void>;
    onActiveRowAction: import("vue").PropType<(context: import("./type").ActiveRowActionContext<TableRowData>) => void>;
    onCellClick: import("vue").PropType<(context: import("./type").BaseTableCellEventContext<TableRowData>) => void>;
    onColumnResizeChange: import("vue").PropType<(context: {
        columnsWidth: {
            [colKey: string]: number;
        };
    }) => void>;
    onPageChange: import("vue").PropType<(pageInfo: import("..").PageInfo, newDataSource: TableRowData[]) => void>;
    onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
    onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<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: TableRowData[];
    columns: BaseTableCol<TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    lazyLoad: boolean;
    bordered: boolean;
    showHeader: boolean;
    stripe: boolean;
    activeRowKeys: (string | number)[];
    defaultActiveRowKeys: (string | number)[];
    activeRowType: "multiple" | "single";
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    disableSpaceInactiveRow: boolean;
    footData: TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    keyboardRowHover: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
    thDraggable: boolean;
} & {
    height?: string | number;
    maxHeight?: string | number;
    scroll?: import("../common").TScroll;
    size?: import("../common").SizeEnum;
    attach?: import("../common").AttachNode;
    pagination?: unknown;
    onScroll?: (params: {
        e: WheelEvent;
    }) => void;
    onCellClick?: (context: import("./type").BaseTableCellEventContext<TableRowData>) => void;
    onPageChange?: (pageInfo: import("..").PageInfo, newDataSource: TableRowData[]) => void;
    loadingProps?: unknown;
    bottomContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    cellEmptyContent?: string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<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);
    locale?: unknown;
    paginationAffixedBottom?: unknown;
    rowAttributes?: import("./type").TableRowAttributes<TableRowData>;
    rowClassName?: unknown;
    rowspanAndColspan?: import("./type").TableRowspanAndColspanFunc<TableRowData>;
    rowspanAndColspanInFooter?: import("./type").TableRowspanAndColspanFunc<TableRowData>;
    topContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    onActiveChange?: (activeRowKeys: (string | number)[], context: import("./type").ActiveChangeContext<TableRowData>) => void;
    onActiveRowAction?: (context: import("./type").ActiveRowActionContext<TableRowData>) => void;
    onColumnResizeChange?: (context: {
        columnsWidth: {
            [colKey: string]: number;
        };
    }) => void;
    onRowClick?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowDblclick?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMousedown?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseenter?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseleave?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseover?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseup?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onScrollX?: (params: {
        e: WheelEvent;
    }) => void;
    onScrollY?: (params: {
        e: WheelEvent;
    }) => void;
    renderExpandedRow?: (h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<TableRowData>) => JSX.Element;
    onLeafColumnsChange?: (columns: BaseTableCol<TableRowData>[]) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    virtualConfig: {
        visibleData: import("@vue/composition-api").Ref<any[]>;
        translateY: import("@vue/composition-api").Ref<number>;
        scrollHeight: import("@vue/composition-api").Ref<number>;
        isVirtualScroll: import("@vue/composition-api").ComputedRef<boolean>;
        handleScroll: () => void;
        handleRowMounted: (rowData: any) => void;
        scrollToElement: (p: import("../hooks").ScrollToElementParams) => void;
    };
    scrollToElement: (params: ComponentScrollToElementParams) => void;
    columnResizable: import("@vue/composition-api").ComputedRef<boolean>;
    thList: import("@vue/composition-api").ComputedRef<BaseTableCol<TableRowData>[][]>;
    classPrefix: string;
    innerPagination: import("@vue/composition-api").Ref<import("..").TdPaginationProps>;
    global: import("@vue/composition-api").ComputedRef<{} & (import("..").TableConfig | ({
        readonly expandIcon: any;
        readonly sortIcon: any;
        readonly filterIcon: any;
        readonly treeExpandAndFoldIcon: any;
        readonly hideSortTips: false;
        readonly size: "medium";
    } & {
        readonly empty: "暂无数据";
        readonly loadingText: "正在加载中，请稍后";
        readonly loadingMoreText: "点击加载更多";
        readonly filterInputPlaceholder: "请输入内容（无默认值）";
        readonly sortAscendingOperationText: "点击升序";
        readonly sortCancelOperationText: "点击取消排序";
        readonly sortDescendingOperationText: "点击降序";
        readonly clearFilterResultButtonText: "清空筛选";
        readonly columnConfigButtonText: "列配置";
        readonly columnConfigTitleText: "表格列配置";
        readonly columnConfigDescriptionText: "请选择需要在表格中显示的数据列";
        readonly confirmText: "确认";
        readonly cancelText: "取消";
        readonly resetText: "重置";
        readonly selectAllText: "全选";
        readonly searchResultText: "搜索“{result}”，找到 {count} 条结果";
    })) & import("..").TableConfig>;
    tableSize: import("@vue/composition-api").ComputedRef<import("../common").SizeEnum>;
    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>;
    sizeClassNames: {
        small: string;
        medium: string;
        large: string;
        default: string;
        xs: string;
        xl: string;
        block: string;
    };
    tableBaseClass: {
        table: (string | {
            [x: string]: boolean;
        })[];
        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: BaseTableCol<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[][]>;
    dividerBottom: import("@vue/composition-api").ComputedRef<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").ComputedRef<boolean>;
    dataSource: import("@vue/composition-api").Ref<{
        [x: string]: any;
        children?: any[];
    }[]>;
    affixHeaderRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    affixFooterRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    paginationRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    bottomContentRef: 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, col: BaseTableCol<TableRowData>) => void;
        onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
        setEffectColMap: (nodes: BaseTableCol<TableRowData>[], parent: BaseTableCol<TableRowData>) => void;
    };
    horizontalScrollbarRef: import("@vue/composition-api").Ref<HTMLDivElement>;
    tableBodyRef: import("@vue/composition-api").Ref<HTMLTableElement>;
    showAffixPagination: import("@vue/composition-api").Ref<boolean>;
    tActiveRow: import("@vue/composition-api").Ref<(string | number)[]>;
    hoverRow: import("@vue/composition-api").Ref<string | number>;
    showElement: import("@vue/composition-api").Ref<boolean>;
    getListener: () => TableListeners;
    renderPagination: (h: import("vue").CreateElement) => JSX.Element;
    onFixedChange: () => void;
    onHorizontalScroll: (scrollElement?: HTMLElement) => void;
    updateAffixHeaderOrFooter: () => void;
    refreshTable: () => void;
    onInnerVirtualScroll: (e: WheelEvent) => void;
    scrollColumnIntoView: (colKey: string) => void;
    onTableFocus: () => void;
    onTableBlur: () => void;
    onInnerRowClick: (context: import("./type").RowEventContext<TableRowData>) => void;
    paginationAffixRef: import("@vue/composition-api").Ref<any>;
    horizontalScrollAffixRef: import("@vue/composition-api").Ref<any>;
    headerTopAffixRef: import("@vue/composition-api").Ref<any>;
    footerBottomAffixRef: import("@vue/composition-api").Ref<any>;
    isIE: import("@vue/composition-api").ComputedRef<boolean>;
    tableRefTabIndex: import("@vue/composition-api").Ref<number>;
}>, import("@vue/composition-api").Data, {}, {
    renderColGroup(columns: BaseTableCol<TableRowData>[], isAffixHeader?: boolean): JSX.Element;
    getHeadProps(isAffixHeader?: boolean): {
        isFixedHeader: boolean;
        showColumnShadow: {
            left: boolean;
            right: boolean;
        };
        thDraggable: boolean;
        rowAndColFixedPosition: import("./interface").RowAndColFixedPosition;
        isMultipleHeader: boolean;
        bordered: boolean;
        maxHeight: string | number;
        height: string | number;
        spansAndLeafNodes: {
            rowspanAndColspanMap: import("./interface").ThRowspanAndColspan;
            leafColumns: BaseTableCol<TableRowData>[];
        };
        thList: BaseTableCol<TableRowData>[][];
        thWidthList: {
            [x: string]: number;
        };
        resizable: boolean;
        columnResizeParams: {
            resizeLineRef: import("@vue/composition-api").Ref<HTMLDivElement>;
            resizeLineStyle: {
                display: string;
                height: string;
                left: string;
                bottom: string;
            };
            onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
            onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
            setEffectColMap: (nodes: BaseTableCol<TableRowData>[], parent: BaseTableCol<TableRowData>) => void;
        };
        classPrefix: string;
        ellipsisOverlayClassName: string;
        attach: import("../common").AttachNode;
    };
    renderFixedHeader(columns: BaseTableCol<TableRowData>[]): JSX.Element;
    renderAffixedFooter(columns: BaseTableCol<TableRowData>[]): JSX.Element;
    renderAffixedHeader(columns: BaseTableCol<TableRowData>[]): JSX.Element;
}, {}, {}, {}, {
    data: TableRowData[];
    columns: BaseTableCol<TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    lazyLoad: boolean;
    bordered: boolean;
    showHeader: boolean;
    stripe: boolean;
    activeRowKeys: (string | number)[];
    defaultActiveRowKeys: (string | number)[];
    activeRowType: "multiple" | "single";
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    disableSpaceInactiveRow: boolean;
    footData: TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    keyboardRowHover: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
    thDraggable: boolean;
} & {
    height?: string | number;
    maxHeight?: string | number;
    scroll?: import("../common").TScroll;
    size?: import("../common").SizeEnum;
    attach?: import("../common").AttachNode;
    pagination?: unknown;
    onScroll?: (params: {
        e: WheelEvent;
    }) => void;
    onCellClick?: (context: import("./type").BaseTableCellEventContext<TableRowData>) => void;
    onPageChange?: (pageInfo: import("..").PageInfo, newDataSource: TableRowData[]) => void;
    loadingProps?: unknown;
    bottomContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    cellEmptyContent?: string | ((h: import("vue").CreateElement, props: import("./type").BaseTableCellParams<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);
    locale?: unknown;
    paginationAffixedBottom?: unknown;
    rowAttributes?: import("./type").TableRowAttributes<TableRowData>;
    rowClassName?: unknown;
    rowspanAndColspan?: import("./type").TableRowspanAndColspanFunc<TableRowData>;
    rowspanAndColspanInFooter?: import("./type").TableRowspanAndColspanFunc<TableRowData>;
    topContent?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    onActiveChange?: (activeRowKeys: (string | number)[], context: import("./type").ActiveChangeContext<TableRowData>) => void;
    onActiveRowAction?: (context: import("./type").ActiveRowActionContext<TableRowData>) => void;
    onColumnResizeChange?: (context: {
        columnsWidth: {
            [colKey: string]: number;
        };
    }) => void;
    onRowClick?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowDblclick?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMousedown?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseenter?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseleave?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseover?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onRowMouseup?: (context: import("./type").RowEventContext<TableRowData>) => void;
    onScrollX?: (params: {
        e: WheelEvent;
    }) => void;
    onScrollY?: (params: {
        e: WheelEvent;
    }) => void;
    renderExpandedRow?: (h: import("vue").CreateElement, params: import("./type").TableExpandedRowParams<TableRowData>) => JSX.Element;
    onLeafColumnsChange?: (columns: BaseTableCol<TableRowData>[]) => void;
}, {
    data: TableRowData[];
    columns: BaseTableCol<TableRowData>[];
    tableLayout: "fixed" | "auto";
    verticalAlign: "top" | "bottom" | "middle";
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    hover: boolean;
    lazyLoad: boolean;
    bordered: boolean;
    showHeader: boolean;
    stripe: boolean;
    activeRowKeys: (string | number)[];
    defaultActiveRowKeys: (string | number)[];
    activeRowType: "multiple" | "single";
    allowResizeColumnWidth: boolean;
    disableDataPage: boolean;
    disableSpaceInactiveRow: boolean;
    footData: TableRowData[];
    footerAffixedBottom: boolean;
    headerAffixedTop: boolean;
    keyboardRowHover: boolean;
    resizable: boolean;
    rowKey: string;
    tableContentWidth: string;
    thDraggable: boolean;
}, true>);
export default _default;
