import { PropType } from 'vue';
import { OptionType, Alignment, ColumnTypeItem, OptionObjType, ConfigType, PaginationProp, ActionsColumnType } from './VcTable.types';
import { VcLoadingType } from "../VcLoading/VcLoading.types";
declare const _default: import("vue").DefineComponent<{
    withPagination: {
        type: BooleanConstructor;
        default: boolean;
    };
    externalPaginate: {
        type: PropType<PaginationProp>;
        default: undefined;
    };
    perPageOptions: {
        type: PropType<number[]>;
        default: number[];
    };
    perPageText: {
        type: StringConstructor;
        default: string;
    };
    isServerData: {
        type: BooleanConstructor;
        default: boolean;
    };
    pagesLabel: {
        type: StringConstructor;
        default: string;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    loaderType: {
        type: PropType<VcLoadingType>;
        default: string;
    };
    lazyLoadingData: {
        type: BooleanConstructor;
        default: boolean;
    };
    compact: {
        type: BooleanConstructor;
        default: boolean;
    };
    stripe: {
        type: BooleanConstructor;
        default: boolean;
    };
    showActionsColumn: {
        type: BooleanConstructor;
        default: boolean;
    };
    actionsColumn: {
        type: PropType<ActionsColumnType>;
        default: () => {
            width: string;
            columnName: string;
            icon: string;
            minWidth: string;
            maxWidth: string;
        };
    };
    rowClassName: {
        type: (StringConstructor | FunctionConstructor)[];
        default: undefined;
    };
}, unknown, {
    localOptions: OptionType;
    observer: MutationObserver | null;
    dir: string;
    rowOpened: boolean;
    opened: number[];
    selectedRow: number | null;
    sortBy: string;
    sortOrder: string;
    customSortFunction: any;
    localPagination: {
        currentPage: number;
        perPage: number;
        total: number;
    };
    viewObserver: IntersectionObserver | null;
}, {
    actionsColumnConfig(): {
        width?: string | undefined;
        minWidth?: string | undefined;
        maxWidth?: string | undefined;
        columnName?: string | undefined;
        icon?: string | undefined;
        classes?: string | undefined;
    };
    actionsColumnStyles(): {
        [key: string]: string | undefined;
    };
    hasFooter(): boolean;
    isPaginationView(): boolean;
    visibleOptions(): {
        [key: string]: any;
    }[];
    pagination(): import("./VcTable.types").Pagination;
    start(): number;
    end(): number;
    setPositionForTooltip(): {
        [x: string]: string;
        top: string;
        transform: string;
        height: string;
    };
    colspanNumber(): number;
    headerChecked: {
        get(): boolean;
        set(val: boolean): boolean;
    };
    isIndeterminate(): boolean;
    selectedOptions(): {
        [key: string]: any;
    }[];
    tableOptions(): {
        [key: string]: any;
    }[];
    perPageMessage(): string;
    pagesLabelText(): string;
}, {
    defaultSortMethod(data1: any, data2: any): number;
    isActiveSortColumn(column: ColumnTypeItem, order: string): string | undefined;
    isSortableColumn(column: ColumnTypeItem): boolean;
    handleSortClick(column: ColumnTypeItem, order?: string): void;
    toggleOrder(): void;
    onRowClick(option: OptionObjType, index: number): void;
    gettingFlexAlignment(columnAlignment: Alignment): string;
    setColumnStyles(column: ColumnTypeItem | ActionsColumnType): {
        [key: string]: string | undefined;
    };
    gettingColumnItemData(column: ColumnTypeItem): string;
    gettingRowItemData(option: OptionObjType, rowColumn: ColumnTypeItem): string;
    setOptionChecked(option: OptionObjType, actionValue: boolean): void;
    setBulkOptionChecked(optionArray: OptionType, actionValue: boolean): void;
    onChangeAll(value: boolean): void;
    onChangeRow(option: any): void;
    onSelectionChange(): void;
    initObserver(): void;
    expandableAction(rowIndex: number): void;
    getRowClass(row: any, index: number): any;
}, import("vue").DefineComponent<{
    columns: {
        type: PropType<import("./VcTable.types").ColumnType>;
        default: () => import("./VcTable.types").ColumnType;
    };
    options: {
        type: PropType<OptionType>;
        default: () => OptionType;
    };
    showSelection: {
        type: BooleanConstructor;
        default: boolean;
    };
    expandableRow: {
        type: BooleanConstructor;
        default: boolean;
    };
    config: {
        type: PropType<ConfigType>;
        default: () => {};
    };
    rowSelectable: {
        type: BooleanConstructor;
        default: boolean;
    };
    rowUnselect: {
        type: BooleanConstructor;
        default: boolean;
    };
    sortingOrderDefault: {
        type: PropType<import("./VcTable.types").SortingOrderDefaultType>;
        default: undefined;
    };
    tableClass: {
        type: StringConstructor;
        default: string;
    };
    wrapperClass: {
        type: StringConstructor;
        default: string;
    };
    emptyDataText: {
        type: StringConstructor;
        default: string;
    };
}, unknown, unknown, {
    emptyDataMessage(): string;
}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    columns: {
        type: PropType<import("./VcTable.types").ColumnType>;
        default: () => import("./VcTable.types").ColumnType;
    };
    options: {
        type: PropType<OptionType>;
        default: () => OptionType;
    };
    showSelection: {
        type: BooleanConstructor;
        default: boolean;
    };
    expandableRow: {
        type: BooleanConstructor;
        default: boolean;
    };
    config: {
        type: PropType<ConfigType>;
        default: () => {};
    };
    rowSelectable: {
        type: BooleanConstructor;
        default: boolean;
    };
    rowUnselect: {
        type: BooleanConstructor;
        default: boolean;
    };
    sortingOrderDefault: {
        type: PropType<import("./VcTable.types").SortingOrderDefaultType>;
        default: undefined;
    };
    tableClass: {
        type: StringConstructor;
        default: string;
    };
    wrapperClass: {
        type: StringConstructor;
        default: string;
    };
    emptyDataText: {
        type: StringConstructor;
        default: string;
    };
}>>, {
    columns: import("./VcTable.types").ColumnType;
    options: OptionType;
    showSelection: boolean;
    expandableRow: boolean;
    config: ConfigType;
    rowSelectable: boolean;
    rowUnselect: boolean;
    sortingOrderDefault: import("./VcTable.types").SortingOrderDefaultType;
    tableClass: string;
    wrapperClass: string;
    emptyDataText: string;
}>, import("vue").ComponentOptionsMixin, ("on-row-click" | "handle-selection-change" | "handle-sort" | "update:externalPaginate" | "update:currentPage" | "load-more")[], "on-row-click" | "handle-selection-change" | "handle-sort" | "update:externalPaginate" | "update:currentPage" | "load-more", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    withPagination: {
        type: BooleanConstructor;
        default: boolean;
    };
    externalPaginate: {
        type: PropType<PaginationProp>;
        default: undefined;
    };
    perPageOptions: {
        type: PropType<number[]>;
        default: number[];
    };
    perPageText: {
        type: StringConstructor;
        default: string;
    };
    isServerData: {
        type: BooleanConstructor;
        default: boolean;
    };
    pagesLabel: {
        type: StringConstructor;
        default: string;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    loaderType: {
        type: PropType<VcLoadingType>;
        default: string;
    };
    lazyLoadingData: {
        type: BooleanConstructor;
        default: boolean;
    };
    compact: {
        type: BooleanConstructor;
        default: boolean;
    };
    stripe: {
        type: BooleanConstructor;
        default: boolean;
    };
    showActionsColumn: {
        type: BooleanConstructor;
        default: boolean;
    };
    actionsColumn: {
        type: PropType<ActionsColumnType>;
        default: () => {
            width: string;
            columnName: string;
            icon: string;
            minWidth: string;
            maxWidth: string;
        };
    };
    rowClassName: {
        type: (StringConstructor | FunctionConstructor)[];
        default: undefined;
    };
}>> & {
    "onOn-row-click"?: ((...args: any[]) => any) | undefined;
    "onHandle-selection-change"?: ((...args: any[]) => any) | undefined;
    "onHandle-sort"?: ((...args: any[]) => any) | undefined;
    "onUpdate:externalPaginate"?: ((...args: any[]) => any) | undefined;
    "onUpdate:currentPage"?: ((...args: any[]) => any) | undefined;
    "onLoad-more"?: ((...args: any[]) => any) | undefined;
}, {
    withPagination: boolean;
    externalPaginate: PaginationProp;
    perPageOptions: number[];
    perPageText: string;
    isServerData: boolean;
    pagesLabel: string;
    loading: boolean;
    loaderType: VcLoadingType;
    lazyLoadingData: boolean;
    compact: boolean;
    stripe: boolean;
    showActionsColumn: boolean;
    actionsColumn: ActionsColumnType;
    rowClassName: string | Function;
}>;
export default _default;
