import { PropType } from 'vue';
import { Column, Filter, TableSize, HeaderCellClass, HeaderCellStyle } from '../../ele-data-table/types';
import { VirtualColumn, HeaderColumns, SortBy, CellFilterChangeParams, ColSize } from '../types';

declare const _default: import('vue').DefineComponent<{
    /** 表头行配置 */
    headerCols: PropType<HeaderColumns>;
    /** 表头所有行列宽 */
    headerColSizes: PropType<ColSize[]>;
    /** 当前行索引 */
    headerIndex: NumberConstructor;
    /** 表格排序状态 */
    sortBy: PropType<SortBy>;
    /** 表格筛选值 */
    filtered: PropType<Filter>;
    /** 表格是否是全选状态 */
    isCheckAll: BooleanConstructor;
    /** 表格是否是半选状态 */
    isIndeterminate: BooleanConstructor;
    /** 是否禁用表头选择框 */
    disabledCheckbox: BooleanConstructor;
    /** 表格尺寸 */
    tableSize: PropType<TableSize>;
    /** 表头单元格类名自定义 */
    headerCellClass: PropType<HeaderCellClass>;
    /** 表头单元样式自定义 */
    headerCellStyle: PropType<HeaderCellStyle>;
    /** 表头单元格是否溢出省略 */
    headerEllipsis: BooleanConstructor;
    /** 表格行高 */
    rowHeight: NumberConstructor;
}, {
    getKey: (column: VirtualColumn, columnIndex: number) => string;
    getFiltered: (column: VirtualColumn) => import('../../ele-data-table/types').FilterValue;
    handleCellCheckedChange: (checked: boolean) => void;
    handleCellFilterChange: (params: CellFilterChangeParams) => void;
    handleCellClick: (col: Column, e: MouseEvent) => void;
    handleCellContextmenu: (col: Column, e: MouseEvent) => void;
    handleCellMouseenter: (col: Column, e: MouseEvent) => void;
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    /** 多选框选中改变事件 */
    checkedChange: (_checked: boolean) => true;
    /** 列筛选改变事件 */
    filterChange: (_params: CellFilterChangeParams) => true;
    /** 单元格点击事件 */
    cellClick: (_col: Column, _e: MouseEvent) => true;
    /** 单元格右键事件 */
    cellContextmenu: (_col: Column, _e: MouseEvent) => true;
    /** 单元格鼠标移入事件 */
    cellMouseenter: (_col: Column, _e: MouseEvent) => true;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    /** 表头行配置 */
    headerCols: PropType<HeaderColumns>;
    /** 表头所有行列宽 */
    headerColSizes: PropType<ColSize[]>;
    /** 当前行索引 */
    headerIndex: NumberConstructor;
    /** 表格排序状态 */
    sortBy: PropType<SortBy>;
    /** 表格筛选值 */
    filtered: PropType<Filter>;
    /** 表格是否是全选状态 */
    isCheckAll: BooleanConstructor;
    /** 表格是否是半选状态 */
    isIndeterminate: BooleanConstructor;
    /** 是否禁用表头选择框 */
    disabledCheckbox: BooleanConstructor;
    /** 表格尺寸 */
    tableSize: PropType<TableSize>;
    /** 表头单元格类名自定义 */
    headerCellClass: PropType<HeaderCellClass>;
    /** 表头单元样式自定义 */
    headerCellStyle: PropType<HeaderCellStyle>;
    /** 表头单元格是否溢出省略 */
    headerEllipsis: BooleanConstructor;
    /** 表格行高 */
    rowHeight: NumberConstructor;
}>> & {
    onFilterChange?: ((_params: CellFilterChangeParams) => any) | undefined;
    onCellClick?: ((_col: Column, _e: MouseEvent) => any) | undefined;
    onCellContextmenu?: ((_col: Column, _e: MouseEvent) => any) | undefined;
    onCheckedChange?: ((_checked: boolean) => any) | undefined;
    onCellMouseenter?: ((_col: Column, _e: MouseEvent) => any) | undefined;
}, {
    headerEllipsis: boolean;
    isCheckAll: boolean;
    isIndeterminate: boolean;
    disabledCheckbox: boolean;
}, {}>;
export default _default;
