import { Options } from 'sortablejs';
import { DebouncedFunc } from 'lodash-es';
import { default as __DTS_DEFAULT_0__ } from 'element-plus/es/components/table/src/table-layout';
import { SummaryMethod, ColumnCls, ColumnStyle, CellCls, CellStyle, Sort, ElTooltipProps, TableColumnCtx, TreeNode, Translator, Table } from 'element-plus';
import { EpPropMergeType } from 'element-plus/es/utils';
import { ButtonsCallBackParams, PlusTableSelfProps as PlusTableProps, TableFormRefRow, FormChangeCallBackParams, FilterTableHeaderEventType, ActionBarProps, ColumnSetting } from './type';
import { PageInfo, PlusColumn, RecordType } from 'plus-pro-components/es/types';
import { Ref, DefineComponent, ShallowRef, CreateComponentPublicInstance, ExtractPropTypes, PropType, CSSProperties, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps } from 'vue';
import { PlusRadioProps } from 'plus-pro-components/es/components/radio';
import { PlusPaginationProps } from 'plus-pro-components/es/components/pagination';

declare const _default: __VLS_WithTemplateSlots< DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PlusTableProps>, {
    defaultSize: string;
    pagination: boolean;
    actionBar: boolean;
    hasIndexColumn: boolean;
    titleBar: boolean;
    isSelection: boolean;
    isRadio: boolean;
    hasExpand: boolean;
    loadingStatus: boolean;
    tableData: () => never[];
    data: () => never[];
    columns: () => never[];
    headerCellStyle: () => {
        'background-color': string;
    };
    rowKey: string;
    dragSortable: boolean;
    dragSortableTableColumnProps: () => {};
    indexTableColumnProps: () => {};
    indexContentStyle: () => {};
    selectionTableColumnProps: () => {
        width: number;
    };
    radioTableColumnProps: () => {
        width: number;
    };
    defaultSelectedRadioRow: undefined;
    radioProps: undefined;
    expandTableColumnProps: () => {};
    editable: boolean;
    adaptive: boolean;
}>, {
    formRefs: ShallowRef<Record<string | number, TableFormRefRow[]>>;
    tableInstance: ShallowRef< CreateComponentPublicInstance<Readonly< ExtractPropTypes<{
        data: {
            type: PropType<any[]>;
            default: () => never[];
        };
        size: {
            readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        width: (NumberConstructor | StringConstructor)[];
        height: (NumberConstructor | StringConstructor)[];
        maxHeight: (NumberConstructor | StringConstructor)[];
        fit: {
            type: BooleanConstructor;
            default: boolean;
        };
        stripe: BooleanConstructor;
        border: BooleanConstructor;
        rowKey: PropType<string | ((row: any) => string) | undefined>;
        showHeader: {
            type: BooleanConstructor;
            default: boolean;
        };
        showSummary: BooleanConstructor;
        sumText: StringConstructor;
        summaryMethod: PropType< SummaryMethod<any> | undefined>;
        rowClassName: PropType< ColumnCls<any> | undefined>;
        rowStyle: PropType< ColumnStyle<any> | undefined>;
        cellClassName: PropType< CellCls<any> | undefined>;
        cellStyle: PropType< CellStyle<any> | undefined>;
        headerRowClassName: PropType< ColumnCls<any> | undefined>;
        headerRowStyle: PropType< ColumnStyle<any> | undefined>;
        headerCellClassName: PropType< CellCls<any> | undefined>;
        headerCellStyle: PropType< CellStyle<any> | undefined>;
        highlightCurrentRow: BooleanConstructor;
        currentRowKey: (NumberConstructor | StringConstructor)[];
        emptyText: StringConstructor;
        expandRowKeys: PropType<any[] | undefined>;
        defaultExpandAll: BooleanConstructor;
        defaultSort: PropType< Sort | undefined>;
        tooltipEffect: StringConstructor;
        tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
        spanMethod: PropType<((data: {
            row: any;
            rowIndex: number;
            column: TableColumnCtx<any>;
            columnIndex: number;
        }) => number[] | {
            rowspan: number;
            colspan: number;
        } | undefined) | undefined>;
        selectOnIndeterminate: {
            type: BooleanConstructor;
            default: boolean;
        };
        indent: {
            type: NumberConstructor;
            default: number;
        };
        treeProps: {
            type: PropType<{
                hasChildren?: string | undefined;
                children?: string | undefined;
            } | undefined>;
            default: () => {
                hasChildren: string;
                children: string;
            };
        };
        lazy: BooleanConstructor;
        load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
        style: {
            type: PropType<CSSProperties>;
            default: () => {};
        };
        className: {
            type: StringConstructor;
            default: string;
        };
        tableLayout: {
            type: PropType<"fixed" | "auto">;
            default: string;
        };
        scrollbarAlwaysOn: BooleanConstructor;
        flexible: BooleanConstructor;
        showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
    }>> & {
        onSelect?: ((...args: any[]) => any) | undefined;
        "onExpand-change"?: ((...args: any[]) => any) | undefined;
        "onCurrent-change"?: ((...args: any[]) => any) | undefined;
        "onSelect-all"?: ((...args: any[]) => any) | undefined;
        "onSelection-change"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
        "onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onCell-click"?: ((...args: any[]) => any) | undefined;
        "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
        "onRow-click"?: ((...args: any[]) => any) | undefined;
        "onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
        "onHeader-click"?: ((...args: any[]) => any) | undefined;
        "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onSort-change"?: ((...args: any[]) => any) | undefined;
        "onFilter-change"?: ((...args: any[]) => any) | undefined;
        "onHeader-dragend"?: ((...args: any[]) => any) | undefined;
    }, {
        ns: {
            namespace: ComputedRef<string>;
            b: (blockSuffix?: string | undefined) => string;
            e: (element?: string | undefined) => string;
            m: (modifier?: string | undefined) => string;
            be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
            em: (element?: string | undefined, modifier?: string | undefined) => string;
            bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
            bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
            is: {
                (name: string, state: boolean | undefined): string;
                (name: string): string;
            };
            cssVar: (object: Record<string, string>) => Record<string, string>;
            cssVarName: (name: string) => string;
            cssVarBlock: (object: Record<string, string>) => Record<string, string>;
            cssVarBlockName: (name: string) => string;
        };
        layout: __DTS_DEFAULT_0__<any>;
        store: any;
        handleHeaderFooterMousewheel: (event: any, data: any) => void;
        handleMouseLeave: () => void;
        tableId: string;
        tableSize: ComputedRef<"" | "default" | "small" | "large">;
        isHidden: Ref<boolean>;
        isEmpty: ComputedRef<boolean>;
        renderExpanded: Ref<null>;
        resizeProxyVisible: Ref<boolean>;
        resizeState: Ref<{
            width: number | null;
            height: number | null;
            headerHeight: number | null;
        }>;
        isGroup: Ref<boolean>;
        bodyWidth: ComputedRef<string>;
        tableBodyStyles: ComputedRef<{
            width: string;
        }>;
        emptyBlockStyle: ComputedRef<{
            width: string;
            height: string;
        } | null>;
        debouncedUpdateLayout: DebouncedFunc<() => void>;
        handleFixedMousewheel: (event: any, data: any) => void;
        setCurrentRow: (row: any) => void;
        getSelectionRows: () => any;
        toggleRowSelection: (row: any, selected: boolean) => void;
        clearSelection: () => void;
        clearFilter: (columnKeys?: string[] | undefined) => void;
        toggleAllSelection: () => void;
        toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void;
        clearSort: () => void;
        doLayout: () => void;
        sort: (prop: string, order: string) => void;
        t: Translator;
        setDragVisible: (visible: boolean) => void;
        context: Table<any>;
        computedSumText: ComputedRef<string>;
        computedEmptyText: ComputedRef<string>;
        tableLayout: ComputedRef<"fixed" | "auto" | undefined>;
        scrollbarViewStyle: {
            display: string;
            verticalAlign: string;
        };
        tableInnerStyle: ComputedRef<{
            height: string | number;
            maxHeight?: undefined;
        } | {
            maxHeight: string | number;
            height?: undefined;
        } | {
            height?: undefined;
            maxHeight?: undefined;
        }>;
        scrollbarStyle: ComputedRef<{
            height: string;
            maxHeight?: undefined;
        } | {
            maxHeight: string;
            height?: undefined;
        } | {
            height?: undefined;
            maxHeight?: undefined;
        }>;
        scrollBarRef: Ref<any>;
        scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
        setScrollLeft: (left?: number | undefined) => void;
        setScrollTop: (top?: number | undefined) => void;
    }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "cell-mouse-enter" | "cell-mouse-leave" | "cell-contextmenu" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-click" | "header-contextmenu" | "sort-change" | "filter-change" | "current-change" | "header-dragend" | "expand-change" | "cell-click" | "cell-dblclick")[], VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{
        data: {
            type: PropType<any[]>;
            default: () => never[];
        };
        size: {
            readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        width: (NumberConstructor | StringConstructor)[];
        height: (NumberConstructor | StringConstructor)[];
        maxHeight: (NumberConstructor | StringConstructor)[];
        fit: {
            type: BooleanConstructor;
            default: boolean;
        };
        stripe: BooleanConstructor;
        border: BooleanConstructor;
        rowKey: PropType<string | ((row: any) => string) | undefined>;
        showHeader: {
            type: BooleanConstructor;
            default: boolean;
        };
        showSummary: BooleanConstructor;
        sumText: StringConstructor;
        summaryMethod: PropType< SummaryMethod<any> | undefined>;
        rowClassName: PropType< ColumnCls<any> | undefined>;
        rowStyle: PropType< ColumnStyle<any> | undefined>;
        cellClassName: PropType< CellCls<any> | undefined>;
        cellStyle: PropType< CellStyle<any> | undefined>;
        headerRowClassName: PropType< ColumnCls<any> | undefined>;
        headerRowStyle: PropType< ColumnStyle<any> | undefined>;
        headerCellClassName: PropType< CellCls<any> | undefined>;
        headerCellStyle: PropType< CellStyle<any> | undefined>;
        highlightCurrentRow: BooleanConstructor;
        currentRowKey: (NumberConstructor | StringConstructor)[];
        emptyText: StringConstructor;
        expandRowKeys: PropType<any[] | undefined>;
        defaultExpandAll: BooleanConstructor;
        defaultSort: PropType< Sort | undefined>;
        tooltipEffect: StringConstructor;
        tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
        spanMethod: PropType<((data: {
            row: any;
            rowIndex: number;
            column: TableColumnCtx<any>;
            columnIndex: number;
        }) => number[] | {
            rowspan: number;
            colspan: number;
        } | undefined) | undefined>;
        selectOnIndeterminate: {
            type: BooleanConstructor;
            default: boolean;
        };
        indent: {
            type: NumberConstructor;
            default: number;
        };
        treeProps: {
            type: PropType<{
                hasChildren?: string | undefined;
                children?: string | undefined;
            } | undefined>;
            default: () => {
                hasChildren: string;
                children: string;
            };
        };
        lazy: BooleanConstructor;
        load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
        style: {
            type: PropType<CSSProperties>;
            default: () => {};
        };
        className: {
            type: StringConstructor;
            default: string;
        };
        tableLayout: {
            type: PropType<"fixed" | "auto">;
            default: string;
        };
        scrollbarAlwaysOn: BooleanConstructor;
        flexible: BooleanConstructor;
        showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
    }>> & {
        onSelect?: ((...args: any[]) => any) | undefined;
        "onExpand-change"?: ((...args: any[]) => any) | undefined;
        "onCurrent-change"?: ((...args: any[]) => any) | undefined;
        "onSelect-all"?: ((...args: any[]) => any) | undefined;
        "onSelection-change"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
        "onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onCell-click"?: ((...args: any[]) => any) | undefined;
        "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
        "onRow-click"?: ((...args: any[]) => any) | undefined;
        "onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
        "onHeader-click"?: ((...args: any[]) => any) | undefined;
        "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onSort-change"?: ((...args: any[]) => any) | undefined;
        "onFilter-change"?: ((...args: any[]) => any) | undefined;
        "onHeader-dragend"?: ((...args: any[]) => any) | undefined;
    }, {
        style: CSSProperties;
        className: string;
        tableLayout: "fixed" | "auto";
        border: boolean;
        data: any[];
        fit: boolean;
        lazy: boolean;
        scrollbarAlwaysOn: boolean;
        stripe: boolean;
        treeProps: {
            hasChildren?: string | undefined;
            children?: string | undefined;
        } | undefined;
        showHeader: boolean;
        showSummary: boolean;
        highlightCurrentRow: boolean;
        defaultExpandAll: boolean;
        selectOnIndeterminate: boolean;
        indent: number;
        flexible: boolean;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        data: {
            type: PropType<any[]>;
            default: () => never[];
        };
        size: {
            readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        width: (NumberConstructor | StringConstructor)[];
        height: (NumberConstructor | StringConstructor)[];
        maxHeight: (NumberConstructor | StringConstructor)[];
        fit: {
            type: BooleanConstructor;
            default: boolean;
        };
        stripe: BooleanConstructor;
        border: BooleanConstructor;
        rowKey: PropType<string | ((row: any) => string) | undefined>;
        showHeader: {
            type: BooleanConstructor;
            default: boolean;
        };
        showSummary: BooleanConstructor;
        sumText: StringConstructor;
        summaryMethod: PropType< SummaryMethod<any> | undefined>;
        rowClassName: PropType< ColumnCls<any> | undefined>;
        rowStyle: PropType< ColumnStyle<any> | undefined>;
        cellClassName: PropType< CellCls<any> | undefined>;
        cellStyle: PropType< CellStyle<any> | undefined>;
        headerRowClassName: PropType< ColumnCls<any> | undefined>;
        headerRowStyle: PropType< ColumnStyle<any> | undefined>;
        headerCellClassName: PropType< CellCls<any> | undefined>;
        headerCellStyle: PropType< CellStyle<any> | undefined>;
        highlightCurrentRow: BooleanConstructor;
        currentRowKey: (NumberConstructor | StringConstructor)[];
        emptyText: StringConstructor;
        expandRowKeys: PropType<any[] | undefined>;
        defaultExpandAll: BooleanConstructor;
        defaultSort: PropType< Sort | undefined>;
        tooltipEffect: StringConstructor;
        tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
        spanMethod: PropType<((data: {
            row: any;
            rowIndex: number;
            column: TableColumnCtx<any>;
            columnIndex: number;
        }) => number[] | {
            rowspan: number;
            colspan: number;
        } | undefined) | undefined>;
        selectOnIndeterminate: {
            type: BooleanConstructor;
            default: boolean;
        };
        indent: {
            type: NumberConstructor;
            default: number;
        };
        treeProps: {
            type: PropType<{
                hasChildren?: string | undefined;
                children?: string | undefined;
            } | undefined>;
            default: () => {
                hasChildren: string;
                children: string;
            };
        };
        lazy: BooleanConstructor;
        load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
        style: {
            type: PropType<CSSProperties>;
            default: () => {};
        };
        className: {
            type: StringConstructor;
            default: string;
        };
        tableLayout: {
            type: PropType<"fixed" | "auto">;
            default: string;
        };
        scrollbarAlwaysOn: BooleanConstructor;
        flexible: BooleanConstructor;
        showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
    }>> & {
        onSelect?: ((...args: any[]) => any) | undefined;
        "onExpand-change"?: ((...args: any[]) => any) | undefined;
        "onCurrent-change"?: ((...args: any[]) => any) | undefined;
        "onSelect-all"?: ((...args: any[]) => any) | undefined;
        "onSelection-change"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
        "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
        "onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onCell-click"?: ((...args: any[]) => any) | undefined;
        "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
        "onRow-click"?: ((...args: any[]) => any) | undefined;
        "onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
        "onHeader-click"?: ((...args: any[]) => any) | undefined;
        "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
        "onSort-change"?: ((...args: any[]) => any) | undefined;
        "onFilter-change"?: ((...args: any[]) => any) | undefined;
        "onHeader-dragend"?: ((...args: any[]) => any) | undefined;
    }, {
        ns: {
            namespace: ComputedRef<string>;
            b: (blockSuffix?: string | undefined) => string;
            e: (element?: string | undefined) => string;
            m: (modifier?: string | undefined) => string;
            be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
            em: (element?: string | undefined, modifier?: string | undefined) => string;
            bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
            bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
            is: {
                (name: string, state: boolean | undefined): string;
                (name: string): string;
            };
            cssVar: (object: Record<string, string>) => Record<string, string>;
            cssVarName: (name: string) => string;
            cssVarBlock: (object: Record<string, string>) => Record<string, string>;
            cssVarBlockName: (name: string) => string;
        };
        layout: __DTS_DEFAULT_0__<any>;
        store: any;
        handleHeaderFooterMousewheel: (event: any, data: any) => void;
        handleMouseLeave: () => void;
        tableId: string;
        tableSize: ComputedRef<"" | "default" | "small" | "large">;
        isHidden: Ref<boolean>;
        isEmpty: ComputedRef<boolean>;
        renderExpanded: Ref<null>;
        resizeProxyVisible: Ref<boolean>;
        resizeState: Ref<{
            width: number | null;
            height: number | null;
            headerHeight: number | null;
        }>;
        isGroup: Ref<boolean>;
        bodyWidth: ComputedRef<string>;
        tableBodyStyles: ComputedRef<{
            width: string;
        }>;
        emptyBlockStyle: ComputedRef<{
            width: string;
            height: string;
        } | null>;
        debouncedUpdateLayout: DebouncedFunc<() => void>;
        handleFixedMousewheel: (event: any, data: any) => void;
        setCurrentRow: (row: any) => void;
        getSelectionRows: () => any;
        toggleRowSelection: (row: any, selected: boolean) => void;
        clearSelection: () => void;
        clearFilter: (columnKeys?: string[] | undefined) => void;
        toggleAllSelection: () => void;
        toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void;
        clearSort: () => void;
        doLayout: () => void;
        sort: (prop: string, order: string) => void;
        t: Translator;
        setDragVisible: (visible: boolean) => void;
        context: Table<any>;
        computedSumText: ComputedRef<string>;
        computedEmptyText: ComputedRef<string>;
        tableLayout: ComputedRef<"fixed" | "auto" | undefined>;
        scrollbarViewStyle: {
            display: string;
            verticalAlign: string;
        };
        tableInnerStyle: ComputedRef<{
            height: string | number;
            maxHeight?: undefined;
        } | {
            maxHeight: string | number;
            height?: undefined;
        } | {
            height?: undefined;
            maxHeight?: undefined;
        }>;
        scrollbarStyle: ComputedRef<{
            height: string;
            maxHeight?: undefined;
        } | {
            maxHeight: string;
            height?: undefined;
        } | {
            height?: undefined;
            maxHeight?: undefined;
        }>;
        scrollBarRef: Ref<any>;
        scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
        setScrollLeft: (left?: number | undefined) => void;
        setScrollTop: (top?: number | undefined) => void;
    }, {}, {}, {}, {
        style: CSSProperties;
        className: string;
        tableLayout: "fixed" | "auto";
        border: boolean;
        data: any[];
        fit: boolean;
        lazy: boolean;
        scrollbarAlwaysOn: boolean;
        stripe: boolean;
        treeProps: {
            hasChildren?: string | undefined;
            children?: string | undefined;
        } | undefined;
        showHeader: boolean;
        showSummary: boolean;
        highlightCurrentRow: boolean;
        defaultExpandAll: boolean;
        selectOnIndeterminate: boolean;
        indent: number;
        flexible: boolean;
    }> | null>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    paginationChange: (pageInfo: PageInfo) => void;
    clickAction: (data: ButtonsCallBackParams) => void;
    clickActionConfirmCancel: (data: ButtonsCallBackParams) => void;
    dragSortEnd: (newIndex: number, oldIndex: number) => void;
    formChange: (data: FormChangeCallBackParams) => void;
    refresh: () => void;
    edited: () => void;
    "cell-click": (row: RecordType, column: PlusColumn, cell: HTMLTableCellElement, event: Event) => void;
    "cell-dblclick": (row: RecordType, column: PlusColumn, cell: HTMLTableCellElement, event: Event) => void;
    filterTableHeader: (columns: PlusColumn[], eventType: FilterTableHeaderEventType) => void;
    radioChange: (row: RecordType, index: number, value: boolean) => void;
}, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PlusTableProps>, {
    defaultSize: string;
    pagination: boolean;
    actionBar: boolean;
    hasIndexColumn: boolean;
    titleBar: boolean;
    isSelection: boolean;
    isRadio: boolean;
    hasExpand: boolean;
    loadingStatus: boolean;
    tableData: () => never[];
    data: () => never[];
    columns: () => never[];
    headerCellStyle: () => {
        'background-color': string;
    };
    rowKey: string;
    dragSortable: boolean;
    dragSortableTableColumnProps: () => {};
    indexTableColumnProps: () => {};
    indexContentStyle: () => {};
    selectionTableColumnProps: () => {
        width: number;
    };
    radioTableColumnProps: () => {
        width: number;
    };
    defaultSelectedRadioRow: undefined;
    radioProps: undefined;
    expandTableColumnProps: () => {};
    editable: boolean;
    adaptive: boolean;
}>>> & {
    onRefresh?: (() => any) | undefined;
    onPaginationChange?: ((pageInfo: PageInfo) => any) | undefined;
    onClickAction?: ((data: ButtonsCallBackParams) => any) | undefined;
    onClickActionConfirmCancel?: ((data: ButtonsCallBackParams) => any) | undefined;
    onDragSortEnd?: ((newIndex: number, oldIndex: number) => any) | undefined;
    onFormChange?: ((data: FormChangeCallBackParams) => any) | undefined;
    onEdited?: (() => any) | undefined;
    "onCell-click"?: ((row: RecordType, column: PlusColumn, cell: HTMLTableCellElement, event: Event) => any) | undefined;
    "onCell-dblclick"?: ((row: RecordType, column: PlusColumn, cell: HTMLTableCellElement, event: Event) => any) | undefined;
    onFilterTableHeader?: ((columns: PlusColumn[], eventType: FilterTableHeaderEventType) => any) | undefined;
    onRadioChange?: ((row: RecordType, index: number, value: boolean) => any) | undefined;
}, {
    columns: PlusColumn[];
    data: RecordType[];
    headerCellStyle: Partial< CSSProperties> | Partial<(data: {
        row: any[];
        rowIndex: number;
        column: TableColumnCtx<any[]>;
        columnIndex: number;
    }) => CSSProperties>;
    rowKey: string | ((row: any[]) => string);
    tableData: RecordType[];
    defaultSize: "" | "default" | "small" | "large";
    pagination: false | Partial<PlusPaginationProps>;
    actionBar: false | Partial< ActionBarProps>;
    hasIndexColumn: boolean;
    titleBar: boolean | Partial<Partial<{
        title?: string | undefined;
        refresh?: boolean | undefined;
        density?: boolean | undefined;
        columnSetting?: boolean | ColumnSetting | undefined;
        icon?: {
            size?: string | undefined;
            color?: string | undefined;
        } | undefined;
    }>>;
    isSelection: boolean | "radio";
    isRadio: boolean;
    hasExpand: boolean;
    loadingStatus: boolean;
    dragSortable: false | Partial< Options>;
    dragSortableTableColumnProps: Partial< TableColumnCtx<any>>;
    indexTableColumnProps: Partial< TableColumnCtx<any>>;
    selectionTableColumnProps: Partial< TableColumnCtx<any>>;
    radioTableColumnProps: Partial< TableColumnCtx<any>>;
    radioProps: Partial<PlusRadioProps>;
    defaultSelectedRadioRow: RecordType | ComputedRef<RecordType>;
    expandTableColumnProps: Partial< TableColumnCtx<any>>;
    indexContentStyle: Partial< CSSProperties> | ((row: RecordType, index: number) => Partial< CSSProperties>);
    editable: boolean | "click" | "dblclick";
    adaptive: boolean | {
        offsetBottom?: number | undefined;
        timeout?: number | undefined;
    };
}, {}>, Partial<Record<NonNullable<string | number>, (_: any) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & {
    title?(_: {}): any;
    toolbar?(_: {}): any;
    "drag-sort-icon"?(_: {}): any;
    "column-settings-icon"?(_: {}): any;
    "density-icon"?(_: {}): any;
    expand?(_: any): any;
    default?(_: {}): any;
    "tooltip-icon"?(_: {}): any;
    "edit-icon"?(_: {}): any;
    "action-bar-more-icon"?(_: {}): any;
    append?(_: {}): any;
    empty?(_: {}): any;
    "pagination-left"?(_: {}): any;
    "pagination-right"?(_: {}): any;
}>;
export default _default;
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
type __VLS_TypePropsToRuntimeProps<T> = {
    [K in keyof T]-?: {} extends Pick<T, K> ? {
        type: PropType<__VLS_NonUndefinedable<T[K]>>;
    } : {
        type: PropType<T[K]>;
        required: true;
    };
};
type __VLS_WithDefaults<P, D> = {
    [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
        default: D[K];
    }> : P[K];
};
type __VLS_Prettify<T> = {
    [K in keyof T]: T[K];
} & {};
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
