import { PropType } from 'vue';
import type { TableColumnCtx } from '../table-column/defaults';
declare const _default: import("vue").DefineComponent<{
    /**
     * 是否带有纵向边框
     *
     * @type {Boolean}
     */
    border: {
        type: BooleanConstructor;
    };
    /**
     * store
     *
     * @type {Object}
     */
    store: {
        required: true;
        type: PropType<{
            mutations: {
                setData(states: any, data: any): void;
                toggleAllSelection(): void;
                setHoverRow(states: any, row: TableColumnCtx): void;
                insertColumn(states: any, column: TableColumnCtx, parent: TableColumnCtx): void;
                removeColumn(states: any, column: TableColumnCtx, parent: TableColumnCtx): void;
                setCurrentRow(_states: any, row: any): void;
                rowSelectedChanged(_states: any, row: any): void;
                changeSortCondition(states: any, options: import("../table/defaults").Sort): void;
                sort(states: any, options: import("../table/defaults").Sort): void;
                filterChange(states: any, options: import("../table/defaults").Filter): void;
            };
            commit: (name: "sort" | "setData" | "toggleAllSelection" | "setHoverRow" | "insertColumn" | "removeColumn" | "setCurrentRow" | "rowSelectedChanged" | "changeSortCondition" | "filterChange", ...args: any[]) => void;
            updateTableScrollY: () => void;
            _toggleAllSelection: () => void;
            toggleAllSelection: () => void;
            isRowKey: () => void;
            updateSelectionByRowKey: () => void;
            updateColumns: () => void;
            scheduleLayout: (needUpdateColumns?: boolean, immediate?: boolean) => void;
            updateCurrentRowData: () => void;
            updateCurrentRow: (_currentRow: any) => void;
            isSelected: (row: TableColumnCtx) => boolean;
            toggleRowSelection: (row: any, selected?: any, emitChange?: boolean) => void;
            updateAllSelected: () => void;
            clearSelection: () => void;
            cleanRedundantSelection: () => void;
            handleExecQueryData: (filter?: boolean) => void;
            updateSort: (column: any, prop: any, order: any) => void;
            assertRowKey: () => void;
            updateFilters: (columns: any, values: any) => any;
            clearSort: () => void;
            clearFilter: (columnKeys: any) => void;
            getSelectionRows: () => {
                id: string;
                prop: string;
                label: string;
                width: string | number;
                minWidth: string | number;
                children?: any[];
                isSubColumn: boolean;
                type: string;
                sortable: string | boolean;
                property: string;
                align: string;
                headerAlign: string;
                showOverflowTooltip: boolean;
                filters: {
                    text: string;
                    value: string;
                }[];
                filterMethod: (value: any, row: any, column: TableColumnCtx) => void;
                filterPlacement: string;
                filterOpened?: boolean;
                index: number | ((index: number) => number);
                rawColumnKey: string;
                renderHeader: (data: {
                    column: TableColumnCtx;
                    $index: number;
                }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                    [key: string]: any;
                }>;
                renderCell: (data: any) => void;
                formatter: (row: Record<string, any>, column: TableColumnCtx, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                    [key: string]: any;
                }>;
                columnWidth: number;
                className: string;
                fixed: string | boolean;
                getColumnIndex: () => number;
                currentIndex: number;
                level: number;
                rowSpan: number;
                colSpan: number;
                order: string;
                labelClassName: string;
                columns: any[];
                resizable: boolean;
                selectable: (row: any, index: string | number) => boolean;
                reserveSelection: boolean;
                sortOrders: ("descending" | "ascending")[];
                sortBy: string | string[] | ((row: any, index: number) => string);
                sortMethod: (a: any, b: any) => number;
                columnKey: string;
                filterable: boolean | ((value: any, row: any, column: TableColumnCtx) => void) | {
                    text: string;
                    value: string;
                }[];
                filterMultiple: boolean;
                filteredValue: string[];
            }[];
            toggleRowExpansion: (row: any, expanded?: boolean) => void;
            toggleRowExpansionAdapter: (row: TableColumnCtx, expanded: boolean) => void;
            updateExpandRows: () => void;
            setExpandRowKeysAdapter: (val: string[]) => void;
            setCurrentRowKey: (key: string) => void;
            isRowExpanded: (row: any) => boolean;
            updateTreeData: any;
            loadOrToggle: any;
            states: any;
        }>;
    };
    /**
     * 自定义的合计计算方法
     *
     * @type {Function}
     */
    summaryMethod: PropType<import("../table/defaults").SummaryMethod>;
    /**
     * 合计行第一列的文本
     *
     * @type {String}
     */
    sumText: {
        type: StringConstructor;
    };
    /**
     * 默认的排序列的 prop 和顺序。
     *
     * @type {Object}
     */
    defaultSort: {
        type: PropType<import("../table/defaults").Sort>;
        default: () => {
            prop: string;
            order: string;
        };
    };
}, {
    renderColgroup: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>;
    renderTd: () => any;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * 是否带有纵向边框
     *
     * @type {Boolean}
     */
    border: {
        type: BooleanConstructor;
    };
    /**
     * store
     *
     * @type {Object}
     */
    store: {
        required: true;
        type: PropType<{
            mutations: {
                setData(states: any, data: any): void;
                toggleAllSelection(): void;
                setHoverRow(states: any, row: TableColumnCtx): void;
                insertColumn(states: any, column: TableColumnCtx, parent: TableColumnCtx): void;
                removeColumn(states: any, column: TableColumnCtx, parent: TableColumnCtx): void;
                setCurrentRow(_states: any, row: any): void;
                rowSelectedChanged(_states: any, row: any): void;
                changeSortCondition(states: any, options: import("../table/defaults").Sort): void;
                sort(states: any, options: import("../table/defaults").Sort): void;
                filterChange(states: any, options: import("../table/defaults").Filter): void;
            };
            commit: (name: "sort" | "setData" | "toggleAllSelection" | "setHoverRow" | "insertColumn" | "removeColumn" | "setCurrentRow" | "rowSelectedChanged" | "changeSortCondition" | "filterChange", ...args: any[]) => void;
            updateTableScrollY: () => void;
            _toggleAllSelection: () => void;
            toggleAllSelection: () => void;
            isRowKey: () => void;
            updateSelectionByRowKey: () => void;
            updateColumns: () => void;
            scheduleLayout: (needUpdateColumns?: boolean, immediate?: boolean) => void;
            updateCurrentRowData: () => void;
            updateCurrentRow: (_currentRow: any) => void;
            isSelected: (row: TableColumnCtx) => boolean;
            toggleRowSelection: (row: any, selected?: any, emitChange?: boolean) => void;
            updateAllSelected: () => void;
            clearSelection: () => void;
            cleanRedundantSelection: () => void;
            handleExecQueryData: (filter?: boolean) => void;
            updateSort: (column: any, prop: any, order: any) => void;
            assertRowKey: () => void;
            updateFilters: (columns: any, values: any) => any;
            clearSort: () => void;
            clearFilter: (columnKeys: any) => void;
            getSelectionRows: () => {
                id: string;
                prop: string;
                label: string;
                width: string | number;
                minWidth: string | number;
                children?: any[];
                isSubColumn: boolean;
                type: string;
                sortable: string | boolean;
                property: string;
                align: string;
                headerAlign: string;
                showOverflowTooltip: boolean;
                filters: {
                    text: string;
                    value: string;
                }[];
                filterMethod: (value: any, row: any, column: TableColumnCtx) => void;
                filterPlacement: string;
                filterOpened?: boolean;
                index: number | ((index: number) => number);
                rawColumnKey: string;
                renderHeader: (data: {
                    column: TableColumnCtx;
                    $index: number;
                }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                    [key: string]: any;
                }>;
                renderCell: (data: any) => void;
                formatter: (row: Record<string, any>, column: TableColumnCtx, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                    [key: string]: any;
                }>;
                columnWidth: number;
                className: string;
                fixed: string | boolean;
                getColumnIndex: () => number;
                currentIndex: number;
                level: number;
                rowSpan: number;
                colSpan: number;
                order: string;
                labelClassName: string;
                columns: any[];
                resizable: boolean;
                selectable: (row: any, index: string | number) => boolean;
                reserveSelection: boolean;
                sortOrders: ("descending" | "ascending")[];
                sortBy: string | string[] | ((row: any, index: number) => string);
                sortMethod: (a: any, b: any) => number;
                columnKey: string;
                filterable: boolean | ((value: any, row: any, column: TableColumnCtx) => void) | {
                    text: string;
                    value: string;
                }[];
                filterMultiple: boolean;
                filteredValue: string[];
            }[];
            toggleRowExpansion: (row: any, expanded?: boolean) => void;
            toggleRowExpansionAdapter: (row: TableColumnCtx, expanded: boolean) => void;
            updateExpandRows: () => void;
            setExpandRowKeysAdapter: (val: string[]) => void;
            setCurrentRowKey: (key: string) => void;
            isRowExpanded: (row: any) => boolean;
            updateTreeData: any;
            loadOrToggle: any;
            states: any;
        }>;
    };
    /**
     * 自定义的合计计算方法
     *
     * @type {Function}
     */
    summaryMethod: PropType<import("../table/defaults").SummaryMethod>;
    /**
     * 合计行第一列的文本
     *
     * @type {String}
     */
    sumText: {
        type: StringConstructor;
    };
    /**
     * 默认的排序列的 prop 和顺序。
     *
     * @type {Object}
     */
    defaultSort: {
        type: PropType<import("../table/defaults").Sort>;
        default: () => {
            prop: string;
            order: string;
        };
    };
}>>, {
    border: boolean;
    defaultSort: import("../table/defaults").Sort;
}>;
export default _default;
