import { DslDefinition } from '@oinone/kunlun-dsl';
import { ActiveRecord, ActiveRecords, Pagination } from '@oinone/kunlun-engine';
import { ISort } from '@oinone/kunlun-service';
import { ReturnPromise } from '@oinone/kunlun-shared';
import { ActiveEditorContext, CheckedChangeEvent, OioTableInstance, RadioChangeEvent, RowContext, SortChangeEvent, TableEditorCloseTrigger, TableEditorMode, TableEditorTrigger, VxeTableActiveEditorEventContext } from '@oinone/kunlun-vue-ui';
import { ListPaginationStyle, ListSelectMode } from '@oinone/kunlun-vue-ui-antd';
import { PropType } from 'vue';
import { VxeTablePropTypes } from 'vxe-table';
import { UserTablePrefer } from '../../typing';
import { TableRowClickMode } from './typing';
declare const __default__: import("vue").DefineComponent<{
    setTableInstance: {
        type: PropType<(tableInstance: OioTableInstance | undefined) => void>;
    };
    loading: {
        type: BooleanConstructor;
        default: undefined;
    };
    template: {
        type: PropType<DslDefinition>;
    };
    dataSource: {
        type: PropType<ActiveRecord[]>;
    };
    showDataSource: {
        type: PropType<ActiveRecord[]>;
    };
    height: {
        type: StringConstructor;
    };
    minHeight: {
        type: StringConstructor;
    };
    maxHeight: {
        type: StringConstructor;
    };
    rowClassName: {
        type: PropType<VxeTablePropTypes.RowClassName>;
    };
    cellClassName: {
        type: PropType<VxeTablePropTypes.CellClassName>;
    };
    headerRowClassName: {
        type: PropType<VxeTablePropTypes.HeaderRowClassName>;
    };
    headerCellClassName: {
        type: PropType<VxeTablePropTypes.HeaderCellClassName>;
    };
    footerRowClassName: {
        type: PropType<VxeTablePropTypes.FooterRowClassName>;
    };
    footerCellClassName: {
        type: PropType<VxeTablePropTypes.FooterCellClassName>;
    };
    /**
     * 给行附加样式，也可以是函数
     */
    rowStyle: {
        type: PropType<VxeTablePropTypes.RowStyle>;
    };
    /**
     * 给表头行附加样式
     */
    headerRowStyle: {
        type: PropType<VxeTablePropTypes.HeaderRowStyle>;
    };
    /**
     * 给单元格附加样式
     */
    cellStyle: {
        type: PropType<VxeTablePropTypes.CellStyle>;
    };
    /**
     * 给表头单元格附加样式
     */
    headerCellStyle: {
        type: PropType<VxeTablePropTypes.HeaderCellStyle>;
    };
    pagination: {
        type: PropType<Pagination>;
    };
    showPagination: {
        type: BooleanConstructor;
        default: undefined;
    };
    paginationStyle: {
        type: PropType<ListPaginationStyle>;
    };
    onPaginationChange: {
        type: PropType<(currentPage: number, pageSize: number) => ReturnPromise<void>>;
    };
    selectMode: {
        type: PropType<ListSelectMode>;
    };
    checkMethod: {
        type: FunctionConstructor;
    };
    onCheckedChange: {
        type: PropType<(data: ActiveRecords, event?: CheckedChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    onCheckedAllChange: {
        type: PropType<(selected: boolean, data: ActiveRecord[], event?: CheckedChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    onRadioChange: {
        type: PropType<(data: ActiveRecord, event?: RadioChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    sortConfig: {
        type: PropType<VxeTablePropTypes.SortConfig>;
    };
    onSortChange: {
        type: PropType<(sorts: ISort[]) => void>;
    };
    editorTrigger: {
        type: PropType<TableEditorTrigger>;
    };
    editorMode: {
        type: PropType<TableEditorMode>;
    };
    editorCloseTrigger: {
        type: PropType<TableEditorCloseTrigger>;
    };
    editorShowIcon: {
        type: BooleanConstructor;
        default: undefined;
    };
    activeEditorBefore: {
        type: PropType<(context: ActiveEditorContext) => boolean>;
    };
    activeEditor: {
        type: PropType<(context: ActiveEditorContext) => ReturnPromise<void>>;
    };
    rowEditorClosed: {
        type: PropType<(context: RowContext) => Promise<boolean>>;
    };
    allowRowClick: {
        type: BooleanConstructor;
        default: undefined;
    };
    rowClickMode: {
        type: PropType<TableRowClickMode[]>;
    };
    onCurrentChange: {
        type: FunctionConstructor;
    };
    onRowClick: {
        type: FunctionConstructor;
    };
    onRowDblClick: {
        type: FunctionConstructor;
    };
    expandAccordion: {
        type: BooleanConstructor;
        default: undefined;
    };
    expandAll: {
        type: BooleanConstructor;
        default: undefined;
    };
    existExpandRow: {
        type: BooleanConstructor;
        default: undefined;
    };
    onToggleRowExpand: {
        type: FunctionConstructor;
        default: () => () => void;
    };
    onResizableChange: {
        type: FunctionConstructor;
    };
    userPrefer: {
        type: PropType<UserTablePrefer>;
        default: () => {};
    };
    usingSimpleUserPrefer: {
        type: BooleanConstructor;
        default: undefined;
    };
    lineHeight: {
        type: NumberConstructor;
    };
    minLineHeight: {
        type: NumberConstructor;
    };
    showFooter: {
        type: BooleanConstructor;
        default: undefined;
    };
    footerMethod: {
        type: FunctionConstructor;
    };
    spanMethod: {
        type: FunctionConstructor;
    };
    mergeCells: {
        type: PropType<VxeTablePropTypes.MergeCells>;
    };
    scrollX: {
        type: ObjectConstructor;
    };
    scrollY: {
        type: ObjectConstructor;
    };
    emptyText: {
        type: StringConstructor;
        default: string;
    };
    emptyImage: {
        type: StringConstructor;
        default: undefined;
    };
    pageSizeOptions: {
        type: PropType<(string | number)[]>;
    };
    treeConfig: {
        type: PropType<VxeTablePropTypes.TreeConfig>;
    };
    autoLineHeight: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * 推荐使用<element widget="checkboxColumn" />标签
     * @deprecated 5.0
     */
    checkbox: {
        type: BooleanConstructor;
        default: undefined;
    };
    /**
     * 推荐使用<element widget="sequenceColumn" />标签
     * @deprecated 5.0
     */
    enableSequence: {
        type: BooleanConstructor;
        default: undefined;
    };
    border: {
        type: StringConstructor;
    };
    stripe: {
        type: BooleanConstructor;
        default: boolean;
    };
    isCurrent: {
        type: BooleanConstructor;
        default: boolean;
    };
    isHover: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    defaultTableRef: import("vue").Ref<HTMLElement>;
    table: import("vue").Ref<OioTableInstance | undefined>;
    style: import("vue").ComputedRef<import("@oinone/kunlun-shared").CSSStyle | undefined>;
    tableLineHeight: import("vue").ComputedRef<string>;
    tableHeaderHeight: import("vue").ComputedRef<string>;
    pagination: import("vue").ComputedRef<{}>;
    editorMode: import("vue").ComputedRef<TableEditorMode.table | TableEditorMode.row | TableEditorMode.cell | undefined>;
    autoCloseEditor: import("vue").ComputedRef<boolean>;
    onResizableChange: (...args: any[]) => void;
    editorClosed: (event: VxeTableActiveEditorEventContext) => void;
    onPaginationChange: (currentPage: number, pageSize: number) => void;
    onSortChange: (event: SortChangeEvent) => void;
    onCheckedChange: (event: CheckedChangeEvent) => void;
    onCheckedAllChange: (event: CheckedChangeEvent) => void;
    onRadioChange: (event: RadioChangeEvent) => void;
    onToggleRowExpand: (...args: any[]) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    setTableInstance: {
        type: PropType<(tableInstance: OioTableInstance | undefined) => void>;
    };
    loading: {
        type: BooleanConstructor;
        default: undefined;
    };
    template: {
        type: PropType<DslDefinition>;
    };
    dataSource: {
        type: PropType<ActiveRecord[]>;
    };
    showDataSource: {
        type: PropType<ActiveRecord[]>;
    };
    height: {
        type: StringConstructor;
    };
    minHeight: {
        type: StringConstructor;
    };
    maxHeight: {
        type: StringConstructor;
    };
    rowClassName: {
        type: PropType<VxeTablePropTypes.RowClassName>;
    };
    cellClassName: {
        type: PropType<VxeTablePropTypes.CellClassName>;
    };
    headerRowClassName: {
        type: PropType<VxeTablePropTypes.HeaderRowClassName>;
    };
    headerCellClassName: {
        type: PropType<VxeTablePropTypes.HeaderCellClassName>;
    };
    footerRowClassName: {
        type: PropType<VxeTablePropTypes.FooterRowClassName>;
    };
    footerCellClassName: {
        type: PropType<VxeTablePropTypes.FooterCellClassName>;
    };
    /**
     * 给行附加样式，也可以是函数
     */
    rowStyle: {
        type: PropType<VxeTablePropTypes.RowStyle>;
    };
    /**
     * 给表头行附加样式
     */
    headerRowStyle: {
        type: PropType<VxeTablePropTypes.HeaderRowStyle>;
    };
    /**
     * 给单元格附加样式
     */
    cellStyle: {
        type: PropType<VxeTablePropTypes.CellStyle>;
    };
    /**
     * 给表头单元格附加样式
     */
    headerCellStyle: {
        type: PropType<VxeTablePropTypes.HeaderCellStyle>;
    };
    pagination: {
        type: PropType<Pagination>;
    };
    showPagination: {
        type: BooleanConstructor;
        default: undefined;
    };
    paginationStyle: {
        type: PropType<ListPaginationStyle>;
    };
    onPaginationChange: {
        type: PropType<(currentPage: number, pageSize: number) => ReturnPromise<void>>;
    };
    selectMode: {
        type: PropType<ListSelectMode>;
    };
    checkMethod: {
        type: FunctionConstructor;
    };
    onCheckedChange: {
        type: PropType<(data: ActiveRecords, event?: CheckedChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    onCheckedAllChange: {
        type: PropType<(selected: boolean, data: ActiveRecord[], event?: CheckedChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    onRadioChange: {
        type: PropType<(data: ActiveRecord, event?: RadioChangeEvent<Record<string, unknown>> | undefined) => void>;
    };
    sortConfig: {
        type: PropType<VxeTablePropTypes.SortConfig>;
    };
    onSortChange: {
        type: PropType<(sorts: ISort[]) => void>;
    };
    editorTrigger: {
        type: PropType<TableEditorTrigger>;
    };
    editorMode: {
        type: PropType<TableEditorMode>;
    };
    editorCloseTrigger: {
        type: PropType<TableEditorCloseTrigger>;
    };
    editorShowIcon: {
        type: BooleanConstructor;
        default: undefined;
    };
    activeEditorBefore: {
        type: PropType<(context: ActiveEditorContext) => boolean>;
    };
    activeEditor: {
        type: PropType<(context: ActiveEditorContext) => ReturnPromise<void>>;
    };
    rowEditorClosed: {
        type: PropType<(context: RowContext) => Promise<boolean>>;
    };
    allowRowClick: {
        type: BooleanConstructor;
        default: undefined;
    };
    rowClickMode: {
        type: PropType<TableRowClickMode[]>;
    };
    onCurrentChange: {
        type: FunctionConstructor;
    };
    onRowClick: {
        type: FunctionConstructor;
    };
    onRowDblClick: {
        type: FunctionConstructor;
    };
    expandAccordion: {
        type: BooleanConstructor;
        default: undefined;
    };
    expandAll: {
        type: BooleanConstructor;
        default: undefined;
    };
    existExpandRow: {
        type: BooleanConstructor;
        default: undefined;
    };
    onToggleRowExpand: {
        type: FunctionConstructor;
        default: () => () => void;
    };
    onResizableChange: {
        type: FunctionConstructor;
    };
    userPrefer: {
        type: PropType<UserTablePrefer>;
        default: () => {};
    };
    usingSimpleUserPrefer: {
        type: BooleanConstructor;
        default: undefined;
    };
    lineHeight: {
        type: NumberConstructor;
    };
    minLineHeight: {
        type: NumberConstructor;
    };
    showFooter: {
        type: BooleanConstructor;
        default: undefined;
    };
    footerMethod: {
        type: FunctionConstructor;
    };
    spanMethod: {
        type: FunctionConstructor;
    };
    mergeCells: {
        type: PropType<VxeTablePropTypes.MergeCells>;
    };
    scrollX: {
        type: ObjectConstructor;
    };
    scrollY: {
        type: ObjectConstructor;
    };
    emptyText: {
        type: StringConstructor;
        default: string;
    };
    emptyImage: {
        type: StringConstructor;
        default: undefined;
    };
    pageSizeOptions: {
        type: PropType<(string | number)[]>;
    };
    treeConfig: {
        type: PropType<VxeTablePropTypes.TreeConfig>;
    };
    autoLineHeight: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * 推荐使用<element widget="checkboxColumn" />标签
     * @deprecated 5.0
     */
    checkbox: {
        type: BooleanConstructor;
        default: undefined;
    };
    /**
     * 推荐使用<element widget="sequenceColumn" />标签
     * @deprecated 5.0
     */
    enableSequence: {
        type: BooleanConstructor;
        default: undefined;
    };
    border: {
        type: StringConstructor;
    };
    stripe: {
        type: BooleanConstructor;
        default: boolean;
    };
    isCurrent: {
        type: BooleanConstructor;
        default: boolean;
    };
    isHover: {
        type: BooleanConstructor;
        default: boolean;
    };
}>>, {
    checkbox: boolean;
    loading: boolean;
    showPagination: boolean;
    editorShowIcon: boolean;
    allowRowClick: boolean;
    expandAccordion: boolean;
    expandAll: boolean;
    existExpandRow: boolean;
    onToggleRowExpand: Function;
    userPrefer: UserTablePrefer;
    usingSimpleUserPrefer: boolean;
    showFooter: boolean;
    emptyText: string;
    emptyImage: string;
    autoLineHeight: boolean;
    enableSequence: boolean;
    stripe: boolean;
    isCurrent: boolean;
    isHover: boolean;
}>;
export default __default__;
