import { PropType } from 'vue';
import { DataKey, DataItem, Column, TableSize, CellClass, CellStyle, SpanMethod, ShowOverflowTooltip, TableLoad } from '../../ele-data-table/types';
import { BodyColumns, ColSize, VirtualRow } from '../types';

declare const _default: import('vue').DefineComponent<{
    /** 主体列配置 */
    bodyCols: {
        type: PropType<BodyColumns>;
        required: true;
    };
    /** 表格主体列宽 */
    colSizes: {
        type: PropType<ColSize[]>;
        required: true;
    };
    /** 当前行索引 */
    rowIndex: {
        type: NumberConstructor;
        required: true;
    };
    /** 当前行对象 */
    rowItem: {
        type: PropType<VirtualRow>;
        required: true;
    };
    /** 当前行数据唯一值 */
    rowId: PropType<DataKey>;
    /** 表格多选选中的值 */
    checkedRowKeys: PropType<Set<DataKey>>;
    /** 单元格类名自定义 */
    bodyCellClass: PropType<CellClass>;
    /** 单元格样式自定义 */
    bodyCellStyle: PropType<CellStyle>;
    /** 单元格合并行列方法 */
    spanMethod: PropType<SpanMethod>;
    /** 溢出提示组件全局属性 */
    tableTooltipProps: PropType<ShowOverflowTooltip>;
    /** 序号列起始编号 */
    pageIndex: NumberConstructor;
    /** 表格行高 */
    rowHeight: NumberConstructor;
    /** 表格尺寸 */
    tableSize: PropType<TableSize>;
    /** 树表格展开图标的列 */
    expandColumnKey: StringConstructor;
    /** 表格展开行的值 */
    expandedRowKeys: PropType<DataKey[]>;
    /** 树表格是否懒加载子级 */
    lazy: BooleanConstructor;
    /** 树表格懒加载方法 */
    load: PropType<TableLoad>;
    /** 树表格行数据缩进级别 */
    level: NumberConstructor;
    /** 树表格每一级行缩进大小 */
    indent: NumberConstructor;
    /** 是否需要固定单元格高度 */
    fixedCellHeight: BooleanConstructor;
    /** 表格是否是自适应行高 */
    autoRowHeight: BooleanConstructor;
}, {
    loading: import('vue').Ref<boolean>;
    isChecked: import('vue').ComputedRef<boolean>;
    hasChildren: import('vue').ComputedRef<boolean>;
    rowIndent: import('vue').ComputedRef<string | undefined>;
    isCollapse: import('vue').ComputedRef<boolean>;
    handleCellCheckedChange: (checked: boolean) => void;
    handleCellExpandChange: (expanded: boolean) => void;
    handleCellClick: (col: Column, e: MouseEvent) => void;
    handleCellDblclick: (col: Column, e: MouseEvent) => void;
    handleCellContextmenu: (col: Column, e: MouseEvent) => void;
    handleCellMouseenter: (col: Column, e: MouseEvent) => void;
    handleCellMouseleave: (col: Column, e: MouseEvent) => void;
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    /** 多选框选中改变事件 */
    cellCheckedChange: (_row: VirtualRow, _checked: boolean) => true;
    /** 展开状态改变事件 */
    cellExpandChange: (_row: VirtualRow, _expanded: boolean, _children?: DataItem[]) => true;
    /** 单元格点击事件 */
    cellClick: (_row: VirtualRow, _col: Column, _e: MouseEvent) => true;
    /** 单元格双击事件 */
    cellDblclick: (_row: VirtualRow, _col: Column, _e: MouseEvent) => true;
    /** 单元格右键事件 */
    cellContextmenu: (_row: VirtualRow, _col: Column, _e: MouseEvent) => true;
    /** 单元格鼠标移入事件 */
    cellMouseenter: (_row: VirtualRow, _col: Column, _e: MouseEvent) => true;
    /** 单元格鼠标移出事件 */
    cellMouseleave: (_row: VirtualRow, _col: Column, _e: MouseEvent) => true;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    /** 主体列配置 */
    bodyCols: {
        type: PropType<BodyColumns>;
        required: true;
    };
    /** 表格主体列宽 */
    colSizes: {
        type: PropType<ColSize[]>;
        required: true;
    };
    /** 当前行索引 */
    rowIndex: {
        type: NumberConstructor;
        required: true;
    };
    /** 当前行对象 */
    rowItem: {
        type: PropType<VirtualRow>;
        required: true;
    };
    /** 当前行数据唯一值 */
    rowId: PropType<DataKey>;
    /** 表格多选选中的值 */
    checkedRowKeys: PropType<Set<DataKey>>;
    /** 单元格类名自定义 */
    bodyCellClass: PropType<CellClass>;
    /** 单元格样式自定义 */
    bodyCellStyle: PropType<CellStyle>;
    /** 单元格合并行列方法 */
    spanMethod: PropType<SpanMethod>;
    /** 溢出提示组件全局属性 */
    tableTooltipProps: PropType<ShowOverflowTooltip>;
    /** 序号列起始编号 */
    pageIndex: NumberConstructor;
    /** 表格行高 */
    rowHeight: NumberConstructor;
    /** 表格尺寸 */
    tableSize: PropType<TableSize>;
    /** 树表格展开图标的列 */
    expandColumnKey: StringConstructor;
    /** 表格展开行的值 */
    expandedRowKeys: PropType<DataKey[]>;
    /** 树表格是否懒加载子级 */
    lazy: BooleanConstructor;
    /** 树表格懒加载方法 */
    load: PropType<TableLoad>;
    /** 树表格行数据缩进级别 */
    level: NumberConstructor;
    /** 树表格每一级行缩进大小 */
    indent: NumberConstructor;
    /** 是否需要固定单元格高度 */
    fixedCellHeight: BooleanConstructor;
    /** 表格是否是自适应行高 */
    autoRowHeight: BooleanConstructor;
}>> & {
    onCellClick?: ((_row: VirtualRow, _col: Column, _e: MouseEvent) => any) | undefined;
    onCellDblclick?: ((_row: VirtualRow, _col: Column, _e: MouseEvent) => any) | undefined;
    onCellContextmenu?: ((_row: VirtualRow, _col: Column, _e: MouseEvent) => any) | undefined;
    onCellMouseenter?: ((_row: VirtualRow, _col: Column, _e: MouseEvent) => any) | undefined;
    onCellCheckedChange?: ((_row: VirtualRow, _checked: boolean) => any) | undefined;
    onCellExpandChange?: ((_row: VirtualRow, _expanded: boolean, _children?: DataItem[] | undefined) => any) | undefined;
    onCellMouseleave?: ((_row: VirtualRow, _col: Column, _e: MouseEvent) => any) | undefined;
}, {
    lazy: boolean;
    fixedCellHeight: boolean;
    autoRowHeight: boolean;
}, {}>;
export default _default;
