import type { Instance, SnapshotIn } from 'mobx-state-tree';
import type { AppRouter, NavigationObject, SchemaCollection } from '../types';
export declare const AppStore: import("mobx-state-tree").IModelType<{
    id: import("mobx-state-tree").ISimpleType<string>;
    path: import("mobx-state-tree").IType<string | undefined, string, string>;
    storeType: import("mobx-state-tree").ISimpleType<string>;
    disposed: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    parentId: import("mobx-state-tree").IType<string | undefined, string, string>;
    childrenIds: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>, [undefined]>;
} & {
    hasRemoteData: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
    data: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    initedAt: import("mobx-state-tree").IType<number | undefined, number, number>;
    updatedAt: import("mobx-state-tree").IType<number | undefined, number, number>;
    pristine: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    action: import("mobx-state-tree" /** 更新前的 location */).IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    dialogData: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    drawerOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    drawerData: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    rendererProxy: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("jamis-core").RendererProxy, import("jamis-core").RendererProxy, import("jamis-core").RendererProxy>, [undefined]>;
} & {
    msg: import("mobx-state-tree").IType<string | undefined, string, string>;
    error: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    fetching: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    saving: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    busying: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    checking: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    initializing: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    schema: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
    schemaKey: import("mobx-state-tree").IType<string | undefined, string, string>;
} & {
    location: import("mobx-state-tree").IType<any, any, any>;
    prevLocation: import("mobx-state-tree").IType<any, any, any>;
    query: import("mobx-state-tree").IType<Record<string, any> | null | undefined, Record<string, any>, Record<string, any>>;
    pages: import("mobx-state-tree").IType<AppRouter[], AppRouter[], AppRouter[]>;
    activePage: import("mobx-state-tree").IType<AppRouter | null | undefined, AppRouter | null, AppRouter | null>;
    activePaths: import("mobx-state-tree").IType<AppRouter[] | null | undefined, AppRouter[], AppRouter[]>;
    activeParams: import("mobx-state-tree").IType<Record<string, any>, Record<string, any>, Record<string, any>>;
    folded: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
    offScreen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
}, {
    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<string>): 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<string, any>, 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: import("jamis-core").Api, data?: object, options?: import("jamis-core").fetchOptions) => Promise<any>;
    fetchData: (api: import("jamis-core").Api, data?: object, options?: import("jamis-core").fetchOptions) => Promise<any>;
    reInitData: (data: object | undefined, replace?: boolean) => void;
    updateMessage: (msg?: string, error?: boolean) => void;
    clearMessage: () => void;
    setHasRemoteData: () => void;
    saveRemote: (api: import("jamis-core").Api, data?: object, options?: import("jamis-core").fetchOptions) => Promise<any>;
    fetchSchema: (api: import("jamis-core").Api, data?: object, options?: import("jamis-core").fetchOptions & {
        syncInitializing?: boolean;
        syncSchema?: boolean;
    }) => Promise<{
        shema?: import("jamis-core").Schema;
        schemaData?: Record<string, any>;
    }>;
    checkRemote: (api: import("jamis-core").Api, data?: object, options?: import("jamis-core").fetchOptions) => Promise<any>;
    runSchemaProvider: (schemaProvider: () => Promise<any>, replaceData: boolean) => Promise<import("jamis-core").Schema | import("jamis-core").Schema[] | undefined>;
    updateSchema: (schema: any, key: string) => void;
} & {
    readonly navigations: NavigationObject[];
    /**
     * 获取所有路由通用的qs信息
     */
    filterQueryString(qs?: URLSearchParams): URLSearchParams | null;
    getBCN({ showFullBreadcrumbPath, showBreadcrumbHomePath }: {
        showFullBreadcrumbPath?: boolean;
        showBreadcrumbHomePath?: boolean;
    }): AppRouter[];
    /**
     * 查找到指定routerId的页面以及参数情况
     */
    findPageAndParams(routerId: string): {
        page: AppRouter;
        matched: boolean | {
            params?: object;
        };
        params: object | undefined;
    } | null;
} & {
    updateLocation: (location?: any, parseFn?: Function) => void;
    setPages: (pages: AppRouter[]) => void;
    updatePageUrlQuerys: (qs: URLSearchParams) => void;
    rewrite: (to: string) => void;
    updateActivePage: () => void;
    setActivePage: (page: AppRouter, params?: Record<string, any>) => void;
    parseAppRouter: (page: AppRouter, params?: Record<string, any>) => Promise<{
        schema?: SchemaCollection;
        schemaData?: Record<string, any>;
    }>;
    toggleFolded(): void;
    toggleOffScreen(forceFlag?: boolean): void;
    /**
     * 更新设置环境信息
     */
    refreshEnvData(): void;
    /**
     * 更新app 数据域中的 qs 或者 hash
     * 用于路由地址没有改变, 只更新 qs 和 hash 的场景, 例如 tabs 组件
     */
    updateQueryStringAndHash(qs: URLSearchParams, hash?: string, prevQs?: URLSearchParams): void;
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
export type IAppStore = Instance<typeof AppStore>;
export type SAppStore = SnapshotIn<typeof AppStore>;
