declare var __VLS_9: any, __VLS_19: any, __VLS_22: any;
type __VLS_Slots = {} & {
    header?: (props: typeof __VLS_9) => any;
} & {
    default?: (props: typeof __VLS_19) => any;
} & {
    header?: (props: typeof __VLS_22) => any;
};
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<{
    type: {
        type: StringConstructor;
        default: string;
    };
    label: StringConstructor;
    className: StringConstructor;
    labelClassName: StringConstructor;
    property: StringConstructor;
    prop: StringConstructor;
    width: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    minWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    renderHeader: import("vue").PropType<(data: {
        column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>;
        $index: number;
        store: import("element-plus/es/components/table/src/store").Store<any>;
        _self: any;
    }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>>;
    sortable: {
        type: (StringConstructor | BooleanConstructor)[];
        default: boolean;
    };
    sortMethod: import("vue").PropType<(a: any, b: any) => number>;
    sortBy: import("vue").PropType<string | string[] | ((row: any, index: number, array?: any[] | undefined) => string)>;
    resizable: {
        type: BooleanConstructor;
        default: boolean;
    };
    columnKey: StringConstructor;
    align: StringConstructor;
    headerAlign: StringConstructor;
    showOverflowTooltip: {
        type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
        default: undefined;
    };
    tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
    fixed: (StringConstructor | BooleanConstructor)[];
    formatter: import("vue").PropType<(row: any, column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>>;
    selectable: import("vue").PropType<(row: any, index: number) => boolean>;
    reserveSelection: BooleanConstructor;
    filterMethod: import("vue").PropType<import("element-plus/es/components/table/src/table-column/defaults").FilterMethods<any>>;
    filteredValue: import("vue").PropType<string[]>;
    filters: import("vue").PropType<import("element-plus/es/components/table/src/table-column/defaults").Filters>;
    filterPlacement: StringConstructor;
    filterMultiple: {
        type: BooleanConstructor;
        default: boolean;
    };
    filterClassName: StringConstructor;
    index: import("vue").PropType<number | ((index: number) => number)>;
    sortOrders: {
        type: import("vue").PropType<(import("element-plus/es/components/table/src/table/defaults").TableSortOrder | null)[]>;
        default: () => (string | null)[];
        validator: (val: (import("element-plus/es/components/table/src/table/defaults").TableSortOrder | null)[]) => boolean;
    };
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    type: {
        type: StringConstructor;
        default: string;
    };
    label: StringConstructor;
    className: StringConstructor;
    labelClassName: StringConstructor;
    property: StringConstructor;
    prop: StringConstructor;
    width: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    minWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    renderHeader: import("vue").PropType<(data: {
        column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>;
        $index: number;
        store: import("element-plus/es/components/table/src/store").Store<any>;
        _self: any;
    }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>>;
    sortable: {
        type: (StringConstructor | BooleanConstructor)[];
        default: boolean;
    };
    sortMethod: import("vue").PropType<(a: any, b: any) => number>;
    sortBy: import("vue").PropType<string | string[] | ((row: any, index: number, array?: any[] | undefined) => string)>;
    resizable: {
        type: BooleanConstructor;
        default: boolean;
    };
    columnKey: StringConstructor;
    align: StringConstructor;
    headerAlign: StringConstructor;
    showOverflowTooltip: {
        type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
        default: undefined;
    };
    tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
    fixed: (StringConstructor | BooleanConstructor)[];
    formatter: import("vue").PropType<(row: any, column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>>;
    selectable: import("vue").PropType<(row: any, index: number) => boolean>;
    reserveSelection: BooleanConstructor;
    filterMethod: import("vue").PropType<import("element-plus/es/components/table/src/table-column/defaults").FilterMethods<any>>;
    filteredValue: import("vue").PropType<string[]>;
    filters: import("vue").PropType<import("element-plus/es/components/table/src/table-column/defaults").Filters>;
    filterPlacement: StringConstructor;
    filterMultiple: {
        type: BooleanConstructor;
        default: boolean;
    };
    filterClassName: StringConstructor;
    index: import("vue").PropType<number | ((index: number) => number)>;
    sortOrders: {
        type: import("vue").PropType<(import("element-plus/es/components/table/src/table/defaults").TableSortOrder | null)[]>;
        default: () => (string | null)[];
        validator: (val: (import("element-plus/es/components/table/src/table/defaults").TableSortOrder | null)[]) => boolean;
    };
}>>, {
    type: string;
    minWidth: string | number;
    width: string | number;
    resizable: boolean;
    showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined;
    sortable: string | boolean;
    reserveSelection: boolean;
    filterMultiple: boolean;
    sortOrders: (import("element-plus/es/components/table/src/table/defaults").TableSortOrder | null)[];
}, {}>, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
