import { CreateComponentPublicInstance, ExtractPropTypes, PropType, Ref, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ComponentOptionsBase } from 'vue';
export * from './src/tableProps';
export * from './src/useExpose';
export declare const TTable: {
    new (...args: any[]): CreateComponentPublicInstance<Readonly< ExtractPropTypes<{
        table: {
            type: ObjectConstructor;
            default: () => {};
            required: boolean;
        };
        columns: {
            type: ArrayConstructor;
            default: () => never[];
        };
        btnPermissions: {
            type: ArrayConstructor;
            default: () => never[];
        };
        title: {
            type: StringConstructor;
        };
        tableTitle: StringConstructor;
        align: {
            type: PropType<"left" | "center" | "right">;
            default: string;
        };
        isTree: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSort: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSortIcon: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowSortIconBind: {
            type: ObjectConstructor;
            default: () => {};
        };
        isCopy: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowClickRadio: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultRadioCol: NumberConstructor;
        isPaginationCumulative: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowPagination: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowFooterBtn: {
            type: BooleanConstructor;
            default: boolean;
        };
        columnSetting: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightCurrentRow: {
            type: BooleanConstructor;
            default: boolean;
        };
        sortable: {
            type: (BooleanConstructor | StringConstructor)[];
        };
        isKeyup: {
            type: BooleanConstructor;
            default: boolean;
        };
        isSlotToolbar: BooleanConstructor;
        isSlotTitle: BooleanConstructor;
        border: {
            type: BooleanConstructor;
            default: boolean;
        };
        tableLoading: {
            type: BooleanConstructor;
            default: boolean;
        };
        loadingTxt: {
            type: StringConstructor;
            default: string;
        };
        useVirtual: BooleanConstructor;
        virtualShowSize: {
            type: NumberConstructor;
            default: number;
        };
        footerBtnAlign: {
            type: StringConstructor;
            default: string;
        };
    }>> & {
        onHandleEvent?: ((...args: any[]) => any) | undefined;
        onSave?: ((...args: any[]) => any) | undefined;
        "onPage-change"?: ((...args: any[]) => any) | undefined;
        onRadioChange?: ((...args: any[]) => any) | undefined;
        onRowSort?: ((...args: any[]) => any) | undefined;
        onValidateError?: ((...args: any[]) => any) | undefined;
    }, {
        defaultRadioSelect: (index: number | any) => void;
        clearSelection: () => any;
        getSelectionRows: () => any;
        toggleRowSelection: (row: any, selected?: boolean) => any;
        toggleAllSelection: () => any;
        toggleRowExpansion: (row: any, expanded: any) => any;
        setCurrentRow: (row: any) => any;
        clearSort: () => any;
        clearFilter: (columnKey: any) => any;
        doLayout: (columnKey: any) => any;
        sort: (prop: string, order: string) => any;
        scrollTo: (options: any, yCoord: any) => any;
        setScrollTop: (top: any) => any;
        setScrollLeft: (left: any) => any;
        state: {
            tableData: any;
            columnSet: never[];
            copyTableData: never[];
        };
        radioVal: Ref<any>;
        clearValidate: () => void;
        resetFields: () => void;
        save: () => Promise<any>;
        saveMethod: (callback: (arg0: any) => any) => void;
        reSetColumnSet: () => any;
        clearRadioHandle: () => void;
        resetTselectTable: () => void;
    }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
        handleEvent: (...args: any[]) => void;
        save: (...args: any[]) => void;
        "page-change": (...args: any[]) => void;
        radioChange: (...args: any[]) => void;
        rowSort: (...args: any[]) => void;
        validateError: (...args: any[]) => void;
    }, VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{
        table: {
            type: ObjectConstructor;
            default: () => {};
            required: boolean;
        };
        columns: {
            type: ArrayConstructor;
            default: () => never[];
        };
        btnPermissions: {
            type: ArrayConstructor;
            default: () => never[];
        };
        title: {
            type: StringConstructor;
        };
        tableTitle: StringConstructor;
        align: {
            type: PropType<"left" | "center" | "right">;
            default: string;
        };
        isTree: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSort: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSortIcon: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowSortIconBind: {
            type: ObjectConstructor;
            default: () => {};
        };
        isCopy: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowClickRadio: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultRadioCol: NumberConstructor;
        isPaginationCumulative: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowPagination: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowFooterBtn: {
            type: BooleanConstructor;
            default: boolean;
        };
        columnSetting: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightCurrentRow: {
            type: BooleanConstructor;
            default: boolean;
        };
        sortable: {
            type: (BooleanConstructor | StringConstructor)[];
        };
        isKeyup: {
            type: BooleanConstructor;
            default: boolean;
        };
        isSlotToolbar: BooleanConstructor;
        isSlotTitle: BooleanConstructor;
        border: {
            type: BooleanConstructor;
            default: boolean;
        };
        tableLoading: {
            type: BooleanConstructor;
            default: boolean;
        };
        loadingTxt: {
            type: StringConstructor;
            default: string;
        };
        useVirtual: BooleanConstructor;
        virtualShowSize: {
            type: NumberConstructor;
            default: number;
        };
        footerBtnAlign: {
            type: StringConstructor;
            default: string;
        };
    }>> & {
        onHandleEvent?: ((...args: any[]) => any) | undefined;
        onSave?: ((...args: any[]) => any) | undefined;
        "onPage-change"?: ((...args: any[]) => any) | undefined;
        onRadioChange?: ((...args: any[]) => any) | undefined;
        onRowSort?: ((...args: any[]) => any) | undefined;
        onValidateError?: ((...args: any[]) => any) | undefined;
    }, {
        table: Record<string, any>;
        columns: unknown[];
        columnSetting: boolean;
        btnPermissions: unknown[];
        align: "center" | "left" | "right";
        isTree: boolean;
        isRowSort: boolean;
        isRowSortIcon: boolean;
        rowSortIconBind: Record<string, any>;
        isCopy: boolean;
        rowClickRadio: boolean;
        isPaginationCumulative: boolean;
        isShowPagination: boolean;
        isShowFooterBtn: boolean;
        highlightCurrentRow: boolean;
        isKeyup: boolean;
        isSlotToolbar: boolean;
        isSlotTitle: boolean;
        border: boolean;
        tableLoading: boolean;
        loadingTxt: string;
        useVirtual: boolean;
        virtualShowSize: number;
        footerBtnAlign: string;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        table: {
            type: ObjectConstructor;
            default: () => {};
            required: boolean;
        };
        columns: {
            type: ArrayConstructor;
            default: () => never[];
        };
        btnPermissions: {
            type: ArrayConstructor;
            default: () => never[];
        };
        title: {
            type: StringConstructor;
        };
        tableTitle: StringConstructor;
        align: {
            type: PropType<"left" | "center" | "right">;
            default: string;
        };
        isTree: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSort: {
            type: BooleanConstructor;
            default: boolean;
        };
        isRowSortIcon: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowSortIconBind: {
            type: ObjectConstructor;
            default: () => {};
        };
        isCopy: {
            type: BooleanConstructor;
            default: boolean;
        };
        rowClickRadio: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultRadioCol: NumberConstructor;
        isPaginationCumulative: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowPagination: {
            type: BooleanConstructor;
            default: boolean;
        };
        isShowFooterBtn: {
            type: BooleanConstructor;
            default: boolean;
        };
        columnSetting: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightCurrentRow: {
            type: BooleanConstructor;
            default: boolean;
        };
        sortable: {
            type: (BooleanConstructor | StringConstructor)[];
        };
        isKeyup: {
            type: BooleanConstructor;
            default: boolean;
        };
        isSlotToolbar: BooleanConstructor;
        isSlotTitle: BooleanConstructor;
        border: {
            type: BooleanConstructor;
            default: boolean;
        };
        tableLoading: {
            type: BooleanConstructor;
            default: boolean;
        };
        loadingTxt: {
            type: StringConstructor;
            default: string;
        };
        useVirtual: BooleanConstructor;
        virtualShowSize: {
            type: NumberConstructor;
            default: number;
        };
        footerBtnAlign: {
            type: StringConstructor;
            default: string;
        };
    }>> & {
        onHandleEvent?: ((...args: any[]) => any) | undefined;
        onSave?: ((...args: any[]) => any) | undefined;
        "onPage-change"?: ((...args: any[]) => any) | undefined;
        onRadioChange?: ((...args: any[]) => any) | undefined;
        onRowSort?: ((...args: any[]) => any) | undefined;
        onValidateError?: ((...args: any[]) => any) | undefined;
    }, {
        defaultRadioSelect: (index: number | any) => void;
        clearSelection: () => any;
        getSelectionRows: () => any;
        toggleRowSelection: (row: any, selected?: boolean) => any;
        toggleAllSelection: () => any;
        toggleRowExpansion: (row: any, expanded: any) => any;
        setCurrentRow: (row: any) => any;
        clearSort: () => any;
        clearFilter: (columnKey: any) => any;
        doLayout: (columnKey: any) => any;
        sort: (prop: string, order: string) => any;
        scrollTo: (options: any, yCoord: any) => any;
        setScrollTop: (top: any) => any;
        setScrollLeft: (left: any) => any;
        state: {
            tableData: any;
            columnSet: never[];
            copyTableData: never[];
        };
        radioVal: Ref<any>;
        clearValidate: () => void;
        resetFields: () => void;
        save: () => Promise<any>;
        saveMethod: (callback: (arg0: any) => any) => void;
        reSetColumnSet: () => any;
        clearRadioHandle: () => void;
        resetTselectTable: () => void;
    }, {}, {}, {}, {
        table: Record<string, any>;
        columns: unknown[];
        columnSetting: boolean;
        btnPermissions: unknown[];
        align: "center" | "left" | "right";
        isTree: boolean;
        isRowSort: boolean;
        isRowSortIcon: boolean;
        rowSortIconBind: Record<string, any>;
        isCopy: boolean;
        rowClickRadio: boolean;
        isPaginationCumulative: boolean;
        isShowPagination: boolean;
        isShowFooterBtn: boolean;
        highlightCurrentRow: boolean;
        isKeyup: boolean;
        isSlotToolbar: boolean;
        isSlotTitle: boolean;
        border: boolean;
        tableLoading: boolean;
        loadingTxt: string;
        useVirtual: boolean;
        virtualShowSize: number;
        footerBtnAlign: string;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & ComponentOptionsBase<Readonly< ExtractPropTypes<{
    table: {
        type: ObjectConstructor;
        default: () => {};
        required: boolean;
    };
    columns: {
        type: ArrayConstructor;
        default: () => never[];
    };
    btnPermissions: {
        type: ArrayConstructor;
        default: () => never[];
    };
    title: {
        type: StringConstructor;
    };
    tableTitle: StringConstructor;
    align: {
        type: PropType<"left" | "center" | "right">;
        default: string;
    };
    isTree: {
        type: BooleanConstructor;
        default: boolean;
    };
    isRowSort: {
        type: BooleanConstructor;
        default: boolean;
    };
    isRowSortIcon: {
        type: BooleanConstructor;
        default: boolean;
    };
    rowSortIconBind: {
        type: ObjectConstructor;
        default: () => {};
    };
    isCopy: {
        type: BooleanConstructor;
        default: boolean;
    };
    rowClickRadio: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultRadioCol: NumberConstructor;
    isPaginationCumulative: {
        type: BooleanConstructor;
        default: boolean;
    };
    isShowPagination: {
        type: BooleanConstructor;
        default: boolean;
    };
    isShowFooterBtn: {
        type: BooleanConstructor;
        default: boolean;
    };
    columnSetting: {
        type: BooleanConstructor;
        default: boolean;
    };
    highlightCurrentRow: {
        type: BooleanConstructor;
        default: boolean;
    };
    sortable: {
        type: (BooleanConstructor | StringConstructor)[];
    };
    isKeyup: {
        type: BooleanConstructor;
        default: boolean;
    };
    isSlotToolbar: BooleanConstructor;
    isSlotTitle: BooleanConstructor;
    border: {
        type: BooleanConstructor;
        default: boolean;
    };
    tableLoading: {
        type: BooleanConstructor;
        default: boolean;
    };
    loadingTxt: {
        type: StringConstructor;
        default: string;
    };
    useVirtual: BooleanConstructor;
    virtualShowSize: {
        type: NumberConstructor;
        default: number;
    };
    footerBtnAlign: {
        type: StringConstructor;
        default: string;
    };
}>> & {
    onHandleEvent?: ((...args: any[]) => any) | undefined;
    onSave?: ((...args: any[]) => any) | undefined;
    "onPage-change"?: ((...args: any[]) => any) | undefined;
    onRadioChange?: ((...args: any[]) => any) | undefined;
    onRowSort?: ((...args: any[]) => any) | undefined;
    onValidateError?: ((...args: any[]) => any) | undefined;
}, {
    defaultRadioSelect: (index: number | any) => void;
    clearSelection: () => any;
    getSelectionRows: () => any;
    toggleRowSelection: (row: any, selected?: boolean) => any;
    toggleAllSelection: () => any;
    toggleRowExpansion: (row: any, expanded: any) => any;
    setCurrentRow: (row: any) => any;
    clearSort: () => any;
    clearFilter: (columnKey: any) => any;
    doLayout: (columnKey: any) => any;
    sort: (prop: string, order: string) => any;
    scrollTo: (options: any, yCoord: any) => any;
    setScrollTop: (top: any) => any;
    setScrollLeft: (left: any) => any;
    state: {
        tableData: any;
        columnSet: never[];
        copyTableData: never[];
    };
    radioVal: Ref<any>;
    clearValidate: () => void;
    resetFields: () => void;
    save: () => Promise<any>;
    saveMethod: (callback: (arg0: any) => any) => void;
    reSetColumnSet: () => any;
    clearRadioHandle: () => void;
    resetTselectTable: () => void;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    handleEvent: (...args: any[]) => void;
    save: (...args: any[]) => void;
    "page-change": (...args: any[]) => void;
    radioChange: (...args: any[]) => void;
    rowSort: (...args: any[]) => void;
    validateError: (...args: any[]) => void;
}, string, {
    table: Record<string, any>;
    columns: unknown[];
    columnSetting: boolean;
    btnPermissions: unknown[];
    align: "center" | "left" | "right";
    isTree: boolean;
    isRowSort: boolean;
    isRowSortIcon: boolean;
    rowSortIconBind: Record<string, any>;
    isCopy: boolean;
    rowClickRadio: boolean;
    isPaginationCumulative: boolean;
    isShowPagination: boolean;
    isShowFooterBtn: boolean;
    highlightCurrentRow: boolean;
    isKeyup: boolean;
    isSlotToolbar: boolean;
    isSlotTitle: boolean;
    border: boolean;
    tableLoading: boolean;
    loadingTxt: string;
    useVirtual: boolean;
    virtualShowSize: number;
    footerBtnAlign: string;
}, {}, string, {}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
    $slots: Partial<Record<any, (_: {
        scope: any;
    }) => any>> & Partial<Record<NonNullable<string | number>, (_: {
        scope: Record<string, any>;
    }) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & Partial<Record<NonNullable<string | number>, (_: {
        scope: Record<string, any>;
    }) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & {
        title?(_: {}): any;
        toolbar?(_: {}): any;
        btn?(_: {}): any;
        titleTip?(_: {}): any;
        expand?(_: {
            scope: any;
        }): any;
        default?(_: {}): any;
        pagination?(_: {}): any;
        footer?(_: {}): any;
    };
});
