import type { Instance } from 'mobx-state-tree'; import type { ActionObject, Api, Payload, fetchOptions } from 'jamis-core'; type FetchInitDataOptions = fetchOptions & { forceReload?: boolean; loadDataOnce?: boolean; loadDataOnceFetchOnFilter?: boolean; /** * 支持自定义属于映射,默认不配置,读取 rows 或者 items */ source?: string; loadDataMode?: boolean; syncResponse2Query?: boolean; columns?: Array; isTable2?: Boolean; }; export declare const CRUDStore: import("mobx-state-tree").IModelType<{ id: import("mobx-state-tree").ISimpleType; path: import("mobx-state-tree").IType; storeType: import("mobx-state-tree").ISimpleType; disposed: import("mobx-state-tree").IType; parentId: import("mobx-state-tree").IType; childrenIds: import("mobx-state-tree").IOptionalIType>, [undefined]>; } & { hasRemoteData: import("mobx-state-tree").IOptionalIType, [undefined]>; data: import("mobx-state-tree").IOptionalIType, [undefined]>; initedAt: import("mobx-state-tree").IType; updatedAt: import("mobx-state-tree").IType; pristine: import("mobx-state-tree").IOptionalIType, [undefined]>; action: import("mobx-state-tree").IOptionalIType, [undefined]>; dialogOpen: import("mobx-state-tree").IType; dialogData: import("mobx-state-tree").IOptionalIType, [undefined]>; drawerOpen: import("mobx-state-tree").IType; drawerData: import("mobx-state-tree").IOptionalIType, [undefined]>; rendererProxy: import("mobx-state-tree").IOptionalIType, [undefined]>; } & { msg: import("mobx-state-tree").IType; error: import("mobx-state-tree").IType; fetching: import("mobx-state-tree").IType; saving: import("mobx-state-tree").IType; busying: import("mobx-state-tree").IType; checking: import("mobx-state-tree").IType; initializing: import("mobx-state-tree").IType; schema: import("mobx-state-tree").IOptionalIType, [undefined]>; schemaKey: import("mobx-state-tree").IType; } & { pristineQuery: import("mobx-state-tree").IOptionalIType, [undefined]>; query: import("mobx-state-tree").IOptionalIType, [undefined]>; prevPage: import("mobx-state-tree").IType; page: import("mobx-state-tree").IType; perPage: import("mobx-state-tree").IType; total: import("mobx-state-tree").IType; mode: import("mobx-state-tree").IType; hasNext: import("mobx-state-tree").IType; selectedAction: import("mobx-state-tree").IType; columns: import("mobx-state-tree").IType; items: import("mobx-state-tree").IOptionalIType>, [undefined]>; selectedItems: import("mobx-state-tree").IOptionalIType>, [undefined]>; unSelectedItems: import("mobx-state-tree").IOptionalIType>, [undefined]>; filterTogggable: import("mobx-state-tree").IType; filterVisible: import("mobx-state-tree").IType; hasInnerModalOpen: import("mobx-state-tree").IType; }, { readonly parentStore: any; readonly __: any; readonly hasChildren: boolean; readonly children: any[]; readonly isAlive: boolean; } & { onChildStoreDispose(child: any): void; syncProps(props: any, prevProps: any, list?: Array): void; syncProp(key: string, propValue: any, prevPropValue: any): void; dispose: (callback?: () => void) => void; addChildId: (id: string) => void; removeChildId: (id: string) => void; } & { getValueByName(name: string, canAccessSuper?: boolean): any; getPristineValueByName(name: string): any; } & { initData(data?: Record, skipSetPristine?: boolean): void; reset(): void; updateData(data?: object, tag?: object, replace?: boolean): void; changeValue(name: string, value: any, changePristine?: boolean, force?: boolean, otherModifier?: (data: Object) => void): void; setCurrentAction(action: object): void; openDialog(ctx?: any, additonal?: object, callback?: (ret: any) => void): void; closeDialog(result?: any): void; openDrawer(ctx: any, additonal?: object, callback?: (ret: any) => void): void; closeDrawer(result?: any): void; updateRendererProxy(proxy: import("jamis-core").RendererProxy): void; } & { readonly loading: boolean; } & { markFetching: (fetching?: boolean) => void; markSaving: (saving?: boolean) => void; markBusying: (busying?: boolean) => void; markInitializing: (initializing?: boolean) => void; fetchInitData: (api: Api, data?: object, options?: fetchOptions) => Promise; fetchData: (api: Api, data?: object, options?: fetchOptions) => Promise; reInitData: (data: object | undefined, replace?: boolean) => void; updateMessage: (msg?: string, error?: boolean) => void; clearMessage: () => void; setHasRemoteData: () => void; saveRemote: (api: Api, data?: object, options?: fetchOptions) => Promise; fetchSchema: (api: Api, data?: object, options?: fetchOptions & { syncInitializing?: boolean; syncSchema?: boolean; }) => Promise<{ shema?: import("jamis-core").Schema; schemaData?: Record; }>; checkRemote: (api: Api, data?: object, options?: fetchOptions) => Promise; runSchemaProvider: (schemaProvider: () => Promise, replaceData: boolean) => Promise; updateSchema: (schema: any, key: string) => void; } & { readonly lastPage: number; readonly filterData: any; readonly mergedData: any; readonly hasModalOpened: boolean; readonly selectedItemsAsArray: any[]; fetchCtxOf(data: any, options: { pageField?: string; perPageField?: string; }): any; } & { /** * 配置store */ config({ total, perPage, page, items }: { total?: number; perPage?: number; page?: number; items?: any[]; }): void; /** * 新增items项, 新增项会unshift到数组最前面 */ addItems(...itemsToAdd: any[]): void; updateItem(updateFn: (item: Record) => Record): void; /** * 删除管理的items项, 满足filter函数要求的会被删除 */ deleteItems(filter: (item: any) => boolean): void; /** * 重置状态 */ reset(args?: { items?: any[]; page?: number; }): void; getData: (superData: any) => any; updateSelectData: (selected: Array, unSelected: Array) => void; setPristineQuery: () => void; updateQuery: (values: object, updater?: Function, pageField?: string, perPageField?: string, replace?: boolean) => void; fetchInitData: (api: Api, data: object, options?: FetchInitDataOptions | undefined) => Promise>; changePage: (page: number, perPage?: number | string) => void; selectAction: (action: ActionObject) => void; saveRemote: (api: Api, data?: object, options?: fetchOptions) => Promise; setFilterTogglable: (toggable: boolean, filterVisible?: boolean) => void; setFilterVisible: (visible: boolean) => void; setSelectedItems: (items: Array) => void; setUnSelectedItems: (items: Array) => void; setInnerModalOpened: (value: boolean) => void; initFromScope: (rowsData: any[]) => void; exportAsCSV: (options?: { loadDataOnce?: boolean; api?: Api; data?: any; }) => Promise; updateColumns: (columns: Array) => void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>; export type ICRUDStore = Instance; export {};