import { Recordable } from '@maxax/types';
import { BasicListPageEmitType, BasicListPageProps } from './interface';
declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<BasicListPageProps, {
    emit: BasicListPageEmitType;
    reload: (opt?: import('./interface').ListPageFetchParams | undefined) => Promise<Recordable<any>[] | undefined>;
    setLoading: (loading: boolean) => void;
    setProps: (props: Partial<BasicListPageProps>) => void;
    getListPageProps: () => BasicListPageProps;
    setPagination: (info: Partial<import('vxe-pc-ui').VxePagerProps>) => void;
    setShowPagination: (show: boolean) => Promise<void>;
    getShowPagination: () => boolean;
    getPaginationRef: () => boolean | import('vxe-pc-ui').VxePagerProps;
    setListData: <T = Recordable<any>>(values: T[]) => void;
    updateListData: (index: number, key: import('./interface').BasicListPageItemKey, value: any) => Promise<Recordable<any> | undefined>;
    updateListDataRecord: (keyValue: import('./interface').BasicListPageItemKey, record: Recordable<any>) => Recordable<any> | undefined;
    deleteListDataRecord: (keyValues: import('./interface').BasicListPageItemKey | import('./interface').BasicListPageItemKey[]) => void;
    insertListDataRecord: (record: Recordable<any> | Recordable<any>[], index?: number | undefined) => Recordable<any>[] | undefined;
    findListDataRecord: (keyValue: import('./interface').BasicListPageItemKey) => Recordable<any> | undefined;
    mergeListDataRecord: (records: Recordable<any>[], key: import('@maxax/types').KeyValueType) => void;
    getDataSource: <T_1 = Recordable<any>>() => T_1[];
    getRawDataSource: <T_2 = Recordable<any>>() => T_2;
    getSearchInfo: <T_3 = Recordable<any>>() => T_3;
    handleSearchInfoChange: (info?: Recordable<any> | undefined) => void;
    handleSearchInfoReload: (info?: Recordable<any> | undefined) => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    "fetch-success": () => any;
    "fetch-error": () => any;
    "page-change": (params: import("vxe-pc-ui").VxePagerDefines.PageChangeEventParams) => any;
}, string, import('vue').PublicProps, Readonly<BasicListPageProps> & Readonly<{
    "onFetch-success"?: (() => any) | undefined;
    "onFetch-error"?: (() => any) | undefined;
    "onPage-change"?: ((params: import("vxe-pc-ui").VxePagerDefines.PageChangeEventParams) => any) | undefined;
}>, {
    fetchSetting: Partial<import('./interface').ListPageFetchSetting>;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>, {
    default?(_: {
        rowIndex: number;
        row: Recordable<any>;
        rowKey: any;
    }): any;
    'bottom-before'?(_: {}): any;
    'bottom-after'?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
//# sourceMappingURL=BasicListPage.vue.d.ts.map