import { DynamicGroupIdentity, ResolvedDynamicGroupIdentity, UserType } from "@omnia/fx-models";
import { DynamicGroupIdentityAddOrUpdateRequest } from "../services";
import { Store } from "./Store";
export declare class DynamicGroupStore extends Store {
    private dynamicGroupService;
    private userTypeStore;
    private loadAllDynamicGroupsPromise;
    private resolvedDynamicGroups;
    private resolvedUserTypes;
    getters: {
        resolvedDynamicGroups: () => ResolvedDynamicGroupIdentity[];
        resolvedUserTypesForGroup: (uid: string) => UserType[];
    };
    actions: {
        ensureResolvedDynamicGroups: import("./Store").StoreAction<unknown, (force?: boolean) => void, (result: ResolvedDynamicGroupIdentity[], force?: boolean) => void, (failureReason: any, force?: boolean) => void, (force?: boolean) => Promise<ResolvedDynamicGroupIdentity[]>>;
        resolveUserTypes: import("./Store").StoreAction<unknown, () => void, (result: {
            [uid: string]: UserType[];
        }) => void, (failureReason: any) => void, () => Promise<{
            [uid: string]: UserType[];
        }>>;
        addOrUpdateDynamicGroup: import("./Store").StoreAction<unknown, (addOrUpdateRequest: DynamicGroupIdentityAddOrUpdateRequest) => void, (result: ResolvedDynamicGroupIdentity, addOrUpdateRequest: DynamicGroupIdentityAddOrUpdateRequest) => void, (failureReason: any, addOrUpdateRequest: DynamicGroupIdentityAddOrUpdateRequest) => void, (addOrUpdateRequest: DynamicGroupIdentityAddOrUpdateRequest) => Promise<ResolvedDynamicGroupIdentity>>;
        reorderDynamicGroups: import("./Store").StoreAction<unknown, (dynamicGroups: DynamicGroupIdentity[]) => void, (result: ResolvedDynamicGroupIdentity[], dynamicGroups: DynamicGroupIdentity[]) => void, (failureReason: any, dynamicGroups: DynamicGroupIdentity[]) => void, (dynamicGroups: DynamicGroupIdentity[]) => Promise<ResolvedDynamicGroupIdentity[]>>;
        deleteDynamicGroup: import("./Store").StoreAction<unknown, (dynamicGroup: DynamicGroupIdentity) => void, (result: void, dynamicGroup: DynamicGroupIdentity) => void, (failureReason: any, dynamicGroup: DynamicGroupIdentity) => void, (dynamicGroup: DynamicGroupIdentity) => Promise<void>>;
    };
    protected onActivated(): void;
}
