import { OmniaContext } from "../contexts";
import { ServiceContainerContext } from "../core";
import { EnterpriseGlossary, EnterpriseGlossaryBase, EnterpriseGlossaryInstance, IEnterpriseGlossaryInformationSourceReadonly, EnterpriseGlossaryInformationSourceSettings, EnterpriseGlossaryMapping, EnterpriseGlossaryMappingData, EnterpriseGlossaryMappingId } from "../models";
import { EnterpriseGlossaryService } from "../services/EnterpriseGlossaryService";
import { Store } from "./Store";
type TriggeredEnterpriseGlossaryInformation<TInformationSource extends Object = Object, TInformationSourceSettings extends EnterpriseGlossaryInformationSourceSettings = EnterpriseGlossaryInformationSourceSettings> = {
    sourceInformation: IEnterpriseGlossaryInformationSourceReadonly<TInformationSource>;
    providerInformationSourceSettings: TInformationSourceSettings;
};
export declare class EnterpriseGlossaryStore extends Store {
    enterpriseGlossaryService: EnterpriseGlossaryService;
    serviceContainerContext: ServiceContainerContext;
    omniaContext: OmniaContext;
    private resolvableAllEnterpriseGlossaries;
    private resolvableEnterpriseGlossaries;
    private resolvableEnterpriseGlossaryMappings;
    private pendingEnterpriseGlossaryMappingIds;
    private enterpriseGlossaryMappings;
    private allEnterpriseGlossaries;
    private triggeredEnterpriseGlossaryInformation;
    getters: {
        getEnterpriseGlossaryMapping: (id: EnterpriseGlossaryMappingId) => EnterpriseGlossaryMapping<any>;
        enterpriseGlossaries: () => EnterpriseGlossaryInstance<EnterpriseGlossaryBase>[];
        enterpriseGlossary: <T extends EnterpriseGlossaryBase = EnterpriseGlossaryBase>(enterpriseGlossaryInstanceId: number) => EnterpriseGlossaryInstance<T>;
        getTriggeredEnterpriseGlossaryInformation: <TInformationSource extends Object = Object, TInformationSourceSettings extends EnterpriseGlossaryInformationSourceSettings = EnterpriseGlossaryInformationSourceSettings>() => TriggeredEnterpriseGlossaryInformation<TInformationSource, TInformationSourceSettings>;
    };
    mutations: {
        addEnterpriseGlossaries: import("./Store").StoreMutation<(enterpriseGlossaries: EnterpriseGlossaryInstance[]) => void, (enterpriseGlossaries: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>[]) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
        updateEnterpriseGlossaries: import("./Store").StoreMutation<(enterpriseGlossary: EnterpriseGlossaryInstance) => void, (enterpriseGlossary: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
        removeEnterpriseGlossaries: import("./Store").StoreMutation<(enterpriseGlossary: EnterpriseGlossaryInstance) => void, (enterpriseGlossary: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
    };
    actions: {
        resolveTitle: import("./Store").StoreAction<unknown, (enterpriseGlossary: EnterpriseGlossaryBase) => void, (result: string, enterpriseGlossary: EnterpriseGlossaryBase) => void, (failureReason: any, enterpriseGlossary: EnterpriseGlossaryBase) => void, (enterpriseGlossary: EnterpriseGlossaryBase) => Promise<string>>;
        getAll: import("./Store").StoreAction<unknown, () => void, (result: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>[]) => void, (failureReason: any) => void, () => Promise<EnterpriseGlossaryInstance[]>>;
        ensureEnterpriseGlossary: import("./Store").StoreAction<unknown, (glossaryId: number) => void, (result: void, glossaryId: number) => void, (failureReason: any, glossaryId: number) => void, (glossaryId: number) => Promise<void>>;
        ensureEnterpriseGlossaryMapping: import("./Store").StoreAction<unknown, (id: import("@omnia/fx-models").GuidValue) => void, (result: void, id: import("@omnia/fx-models").GuidValue) => void, (failureReason: any, id: import("@omnia/fx-models").GuidValue) => void, (id: EnterpriseGlossaryMappingId) => Promise<void>>;
        addEnterpriseGlossary: import("./Store").StoreAction<unknown, (enterpriseGlossary: EnterpriseGlossaryBase) => void, (result: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>, enterpriseGlossary: EnterpriseGlossaryBase) => void, (failureReason: any, enterpriseGlossary: EnterpriseGlossaryBase) => void, (enterpriseGlossary: EnterpriseGlossaryBase) => Promise<EnterpriseGlossaryInstance>>;
        updateEnterpriseGlossary: import("./Store").StoreAction<unknown, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (result: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (failureReason: any, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance) => Promise<EnterpriseGlossaryInstance>>;
        removeEnterpriseGlossary: import("./Store").StoreAction<unknown, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (result: void, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (failureReason: any, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossaryBase>) => void, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance) => Promise<void>>;
        addOrUpdateEnterpriseGlossaryMapping: import("./Store").StoreAction<unknown, (mapping: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>) => void, (result: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>, mapping: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>) => void, (failureReason: any, mapping: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>) => void, (mapping: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>) => Promise<EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>>>;
        removeEnterpriseGlossaryMappings: import("./Store").StoreAction<unknown, (ids: import("@omnia/fx-models").GuidValue[]) => void, (result: void, ids: import("@omnia/fx-models").GuidValue[]) => void, (failureReason: any, ids: import("@omnia/fx-models").GuidValue[]) => void, (ids: EnterpriseGlossaryMappingId[]) => Promise<void>>;
        triggerEnterpriseGlossaryInformation: import("./Store").StoreAction<unknown, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossary>, sourceInformation: IEnterpriseGlossaryInformationSourceReadonly<Object>) => void, (result: void, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossary>, sourceInformation: IEnterpriseGlossaryInformationSourceReadonly<Object>) => void, (failureReason: any, enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossary>, sourceInformation: IEnterpriseGlossaryInformationSourceReadonly<Object>) => void, (enterpriseGlossaryInstance: EnterpriseGlossaryInstance<EnterpriseGlossary>, sourceInformation: IEnterpriseGlossaryInformationSourceReadonly) => Promise<void>>;
        queryEnterpriseGlossaryMappings: import("./Store").StoreAction<unknown, (name: string) => void, (result: EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>[], name: string) => void, (failureReason: any, name: string) => void, (name: string) => Promise<Array<EnterpriseGlossaryMapping<EnterpriseGlossaryMappingData>>>>;
    };
    protected onActivated(): void;
    protected onDisposing(): void;
}
export {};
