import Vue, { VNode } from 'vue';
import { TableConfig } from '../../config-provider/config-receiver';
import { ClassName } from '../../common';
import { BaseTableCol, RowEventContext } from '../type';
import { PageInfo } from '../../pagination/type';
declare const _default: import("vue/types/vue").ExtendedVue<{
    t<T>(pattern: T, placement?: import("../../config-provider/config-receiver").Placement): string;
} & {
    global: TableConfig;
} & Record<never, any> & import("../../config-provider/config-receiver").ConfigComponent & Vue, {
    scrollableToLeft: boolean;
    scrollableToRight: boolean;
    scrollBarWidth: number;
    defaultCurrent: number;
    defaultPageSize: number;
    useFixedHeader: boolean;
}, {
    checkScrollableToLeftOrRight(): void;
    addWindowResizeEventListener(): void;
    renderHeader(): VNode;
    registerRowEvents(): {};
    renderBody(): VNode;
    renderEmptyTable(): VNode;
    renderPagination(): VNode;
    renderTableWithFixedHeader(): Array<VNode>;
    renderLoadingContent(): VNode;
    renderFooter(): JSX.Element;
    handleScroll(e: WheelEvent): void;
}, {
    current: number;
    pageSize: number;
    dataSource: import("../type").TableRowData[];
    flattedColumns: BaseTableCol<import("../type").TableRowData>[];
    isEmpty: boolean;
    hasFixedColumns: boolean;
    hasPagination: boolean;
    isLoading: boolean;
    tableHeight: string | number;
    fixedHeader: boolean;
    commonClass: ClassName;
    usePadding: boolean;
}, {
    selectedRowKeys: (string | number)[];
    provider: any;
    bordered: boolean;
    columns: BaseTableCol<import("../type").TableRowData>[];
    data: import("../type").TableRowData[];
    empty: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    expandedRow: string | ((h: import("vue").CreateElement, props: {
        row: import("../type").TableRowData;
        index: number;
    }) => import("vue/types/vnode").ScopedSlotReturnValue);
    firstFullRow: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    height: string | number;
    hover: boolean;
    lastFullRow: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    loading: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    maxHeight: string | number;
    pagination: import("../../pagination").TdPaginationProps;
    rowClassName: ClassName | ((params: {
        row: import("../type").TableRowData;
        rowIndex: number;
    }) => ClassName);
    rowKey: string;
    rowspanAndColspan: (params: import("../type").RowspanAndColspanParams<import("../type").TableRowData>) => import("../type").RowspanColspan;
    size: import("../../common").SizeEnum;
    stripe: boolean;
    tableLayout: "fixed" | "auto";
    topContent: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    verticalAlign: "top" | "bottom" | "middle";
    onPageChange: (pageInfo: PageInfo, newDataSource: import("../type").TableRowData[]) => void;
    onRowClick: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowDbClick: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowHover: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowMousedown: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowMouseenter: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowMouseleave: (context: RowEventContext<import("../type").TableRowData>) => void;
    onRowMouseup: (context: RowEventContext<import("../type").TableRowData>) => void;
    onScrollX: (params: {
        e: WheelEvent;
    }) => void;
    onScrollY: (params: {
        e: WheelEvent;
    }) => void;
}>;
export default _default;
