import { AppTemplate, AppDefinition, AppInstance, AppInstancesResult, AppInstanceCreateInfo, AppInstanceUpdateInfo, GuidValue, AppInstanceRejectInfo, AppInstanceActionProgressResult, AppInstanceInputInfo } from "../models";
import { Store } from "./Store";
import { AppService } from "../services/AppService";
export declare class AppStore extends Store {
    appService: AppService;
    private omniaContext;
    private permissionService;
    private businessProfile;
    private readonly TenantAppTemplatesKey;
    appInstancesLoadPromiseMap: {
        [profileAppDefinitionKey: string]: Promise<AppInstancesResult>;
    };
    appInstancesPromiseMap: {
        [appInstnaceId: string]: Promise<AppInstance>;
    };
    appDefinitions: import("./Store").StoreState<AppDefinition[]>;
    appTemplates: import("./Store").StoreState<{
        [profileKey: string]: AppTemplate[];
    }>;
    appInstances: import("./Store").StoreState<{
        [appInstanceId: string]: AppInstance;
    }>;
    appInstancesOld: import("./Store").StoreState<{
        [profileAppDefinitionKey: string]: AppInstancesResult;
    }>;
    editingAppTemplate: import("./Store").StoreState<AppTemplate>;
    preProcessedAppInstance: import("./Store").StoreState<AppInstance>;
    ensureLoadAppInstancesByAppDefinitionIdPromises: {
        [appDefinitionIdAndBPId: string]: Promise<AppInstancesResult>;
    };
    editingAppInstance: import("./Store").StoreState<AppInstance>;
    constructor();
    getters: {
        getTenantAppTemplates: () => AppTemplate[];
        getAppTemplates: (businessProfileId?: GuidValue) => AppTemplate[];
        getAppTemplatesByDefinition: (appDefinitionId: GuidValue, businessProfileId?: GuidValue) => AppTemplate[];
        getAppDefinition: (appDefinitionId: GuidValue) => AppDefinition;
        getAppTemplate: (appTemplateId: GuidValue) => AppTemplate;
        getAppInstanceById: (appInstanceId: GuidValue) => AppInstance;
        getEditingAppInstance: () => AppInstance;
    };
    mutations: {
        setEditingAppTemplate: (appTemplate: AppTemplate) => void;
        setEditingAppInstance: import("./Store").StoreMutation<(appInstance: AppInstance) => void, (appInstance: AppInstance) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
        appInstanceFollowStatusUpdated: import("./Store").StoreMutation<(appInstanceId: GuidValue, followed: boolean) => void, (appInstanceId: GuidValue, followed: boolean) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
    };
    actions: {
        ensureAppProvisioning: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (result: AppInstance, appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (failureReason: any, appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => Promise<AppInstance>>;
        requestChangeProvisioning: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (result: AppInstance, appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (failureReason: any, appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => void, (appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => Promise<AppInstance>>;
        loadAppDefinitions: import("./Store").StoreAction<unknown, () => void, (result: AppDefinition[]) => void, (failureReason: any) => void, () => Promise<AppDefinition[]>>;
        loadTenantAppTemplates: import("./Store").StoreAction<unknown, () => void, (result: AppTemplate[]) => void, (failureReason: any) => void, () => Promise<AppTemplate[]>>;
        loadAppTemplates: import("./Store").StoreAction<unknown, (businessProfileId?: GuidValue) => void, (result: AppTemplate[], businessProfileId?: GuidValue) => void, (failureReason: any, businessProfileId?: GuidValue) => void, (businessProfileId?: GuidValue) => Promise<AppTemplate[]>>;
        loadAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: AppInstance, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<AppInstance>>;
        ensureAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: AppInstance, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<AppInstance>>;
        refreshAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: AppInstance, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<AppInstance>>;
        loadAppInstanceProgress: import("./Store").StoreAction<unknown, (transactionId: GuidValue) => void, (result: AppInstanceActionProgressResult, transactionId: GuidValue) => void, (failureReason: any, transactionId: GuidValue) => void, (transactionId: GuidValue) => Promise<AppInstanceActionProgressResult>>;
        addOrUpdateAppTemplate: import("./Store").StoreAction<unknown, (appTemplate: AppTemplate) => void, (result: AppTemplate, appTemplate: AppTemplate) => void, (failureReason: any, appTemplate: AppTemplate) => void, (appTemplate: AppTemplate) => Promise<AppTemplate>>;
        removeAppTemplate: import("./Store").StoreAction<unknown, (appTemplateId: GuidValue) => void, (result: any, appTemplateId: GuidValue) => void, (failureReason: any, appTemplateId: GuidValue) => void, (appTemplateId: GuidValue) => Promise<any>>;
        createAppInstance: import("./Store").StoreAction<unknown, (createInfo: AppInstanceCreateInfo, businessProfileId?: GuidValue, useRouteProvisioning?: boolean) => void, (result: AppInstance, createInfo: AppInstanceCreateInfo, businessProfileId?: GuidValue, useRouteProvisioning?: boolean) => void, (failureReason: any, createInfo: AppInstanceCreateInfo, businessProfileId?: GuidValue, useRouteProvisioning?: boolean) => void, (createInfo: AppInstanceCreateInfo, businessProfileId?: GuidValue, useRouteProvisioning?: boolean) => Promise<AppInstance>>;
        updateAppInstance: import("./Store").StoreAction<unknown, (updateInfo: AppInstanceUpdateInfo) => void, (result: AppInstance, updateInfo: AppInstanceUpdateInfo) => void, (failureReason: any, updateInfo: AppInstanceUpdateInfo) => void, (updateInfo: AppInstanceUpdateInfo) => Promise<AppInstance>>;
        removeAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: AppInstance, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<AppInstance>>;
        approveAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue, createInfo: AppInstanceCreateInfo) => void, (result: AppInstance, appInstanceId: GuidValue, createInfo: AppInstanceCreateInfo) => void, (failureReason: any, appInstanceId: GuidValue, createInfo: AppInstanceCreateInfo) => void, (appInstanceId: GuidValue, createInfo: AppInstanceCreateInfo) => Promise<AppInstance>>;
        rejectAppInstance: import("./Store").StoreAction<unknown, (rejectInfo: AppInstanceRejectInfo) => void, (result: AppInstance, rejectInfo: AppInstanceRejectInfo) => void, (failureReason: any, rejectInfo: AppInstanceRejectInfo) => void, (rejectInfo: AppInstanceRejectInfo) => Promise<AppInstance>>;
        updateAppInstanceProperties: import("./Store").StoreAction<unknown, (updateInfo: AppInstanceUpdateInfo) => void, (result: AppInstance, updateInfo: AppInstanceUpdateInfo) => void, (failureReason: any, updateInfo: AppInstanceUpdateInfo) => void, (updateInfo: AppInstanceUpdateInfo) => Promise<AppInstance>>;
        followAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: void, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<void>>;
        unfollowAppInstance: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: void, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<void>>;
        addOrUpdateLastVisited: import("./Store").StoreAction<unknown, (appInstanceId: GuidValue) => void, (result: void, appInstanceId: GuidValue) => void, (failureReason: any, appInstanceId: GuidValue) => void, (appInstanceId: GuidValue) => Promise<void>>;
    };
    private getProfileAppDefinitionKey;
    private getProfileKey;
    onActivated(): void;
    onDisposing(): void;
}
