import { OpenOptions, OpenReturnType, ApTableModalProps } from './interface';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions, ComputedRef } from 'vue';
import { Recordable } from '../../type';
import { TableColumnsType } from '@aplus-frontend/antdv';
import { InternalPagingType } from '../../ap-table/hooks/use-table-paging-ng';
import { ApFormSearchFormPopoverSorterItem } from '../..';
import { MaskType } from '@aplus-frontend/antdv/es/_util/hooks/useMergedMask';
type __VLS_Props = ApTableModalProps;
declare const _default: DefineComponent<__VLS_Props, {
    open: <T>(selected?: any[], options?: OpenOptions) => Promise<OpenReturnType<T>>;
    close: () => void;
    getApTableInstance: () => {
        submit: () => void;
        submitWith: (resetCurrent?: boolean) => void;
        reset: () => void;
        refresh: () => void;
        setSearchFormValues: (fields: Partial< Recordable>) => void;
        getSearchFormValues: (transform?: boolean) => Partial< Recordable>;
        dataSource: any;
        rowSelection?: {
            select: (item: any) => void;
            selectAll: () => void;
            unSelectAll: () => void;
            selectedRows: any[];
            unSelect: (item: any) => void;
            isSelected: (item: any) => boolean;
            clearAll: () => void;
            toggleSelect: (item: any) => void;
            selectMulti: (items: any[]) => void;
            unSelectMulti: (items: any[]) => void;
        } | undefined;
        getShownColumns: () => TableColumnsType<any>;
        scrollBar: {
            x: {
                getCurrentScroll: () => number;
                scroll: (percent: number) => void | undefined;
            };
            y: undefined;
        };
        getPaging: () => InternalPagingType;
        setPaging: (nextPaging: InternalPagingType, refreshImmediately?: boolean) => void;
        getSearchFormSorterItems: () => ApFormSearchFormPopoverSorterItem[];
        setSearchFormSorterItems: (sortedItems: ApFormSearchFormPopoverSorterItem[]) => void;
        resetSearchFormSorterItems: () => void;
    } | null;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    finish: (selectedRowKeys: (string | number)[], selectedRows: any[]) => any;
}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{
    onFinish?: ((selectedRowKeys: (string | number)[], selectedRows: any[]) => any) | undefined;
}>, {
    mask: MaskType;
    maxCount: number;
    maskClosable: boolean;
    forceRender: boolean;
    keyboard: boolean;
    confirmLoading: boolean;
    closable: boolean;
    centered: boolean;
    destroyOnClose: boolean;
    getContainer: string | false | HTMLElement | (() => HTMLElement);
    focusTriggerAfterClose: boolean;
    api: (params: any) => Promise<{
        records: any[];
        total: number;
    }>;
    isRenderModalTitleSuffix: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
    apTableRef: {
        submit: () => void;
        reset: () => void;
        refresh: () => void;
        submitWith: () => void;
        setSearchFormValues: (fields: any) => void;
        getSearchFormValues: (transform?: boolean) => Partial<any> | undefined;
        setPaging: (nextPaging: Partial<{
            current: number;
            pageSize: number;
        }>, refreshImmediately?: boolean) => void;
        getPaging: () => {
            current?: number | undefined;
            pageSize?: number | undefined;
        };
        getShownColumns: () => TableColumnsType<any>;
        dataSource: any[];
        rowSelection: {
            select: (item: any) => void;
            unSelect: (item: any) => void;
            isSelected: (item: any) => boolean;
            selectAll: () => void;
            unSelectAll: () => void;
            clearAll: () => void;
            toggleSelect: (item: any) => void;
            selectMulti: (items: any[]) => void;
            unSelectMulti: (items: any[]) => void;
            selectedRows: ComputedRef<any[]>;
        };
        scrollBar: {
            x: {
                getCurrentScroll: () => number;
                scroll: (percent: number) => void | undefined;
            };
            y: undefined;
        };
        getSearchFormSorterItems: () => ApFormSearchFormPopoverSorterItem[];
        setSearchFormSorterItems: (sortedItems: ApFormSearchFormPopoverSorterItem[]) => void;
        resetSearchFormSorterItems: () => void;
    } | null;
}, any>;
export default _default;
