import { Store } from "../../../stores";
import { LayoutItemRegistration, BlockRegistration, LayoutItem, Block } from "../../../models";
import { LocalizationService } from "../../../services";
export declare class BlockCatalogStore extends Store {
    private omniaUxLoc;
    private omniaContext;
    private featureStore;
    localizationService: LocalizationService;
    private mediaPickerService;
    /**
     * State
     */
    registrations: import("../../../stores").StoreState<LayoutItemRegistration[]>;
    onActivated(): void;
    onDisposing(): void;
    areItemsLoaded(): boolean;
    getCategoriesForContainer(container: LayoutItem): Array<string>;
    getItemsForContainer(container: LayoutItem): Array<LayoutItemRegistration>;
    searchItemsForContainer(container: LayoutItem, searchText: string): Array<LayoutItemRegistration>;
    getRegistrationForBlock(block: Block): BlockRegistration;
    filterBlockRegistrationOnFeatureDependency(blockRegistration: BlockRegistration): boolean;
    filterBlockRegistrationByBackendRuntimes(blockRegistration: BlockRegistration): boolean;
    filterBlockRegistrationByClientRuntimes(blockRegistration: BlockRegistration): boolean;
    filterBlockRegistrationOnLayoutDependency(blockRegistration: BlockRegistration, provider: string): boolean;
    filterBlockRegistrationByDisableAuth(blockRegistration: BlockRegistration): boolean;
    /**
     * Implementation of mutations
     */
    mutations: {
        registerItem: import("../../../stores").StoreMutation<(item: LayoutItemRegistration) => void, (item: LayoutItemRegistration) => import("@omnia/fx-models").IMessageBusSubscriptionHandler>;
    };
    actions: {
        loadLayoutItems: import("../../../stores").StoreAction<unknown, () => void, (result: void) => void, (failureReason: any) => void, () => Promise<void>>;
    };
    private getIconClass;
    /**
     * Loads the blocks registered
     */
    private loadBlocks;
    /**
     * Loads the default sections
     */
    private loadSections;
}
