import { IManifestSubscriber } from "./ManifestPublisher";
import { LoadableBundleManifest } from "../../models/ClientManifests";
export declare class ManifestByElementLoader {
    private static _Instance;
    private static ResolvableElementRules;
    private static ElementNameToManifestMap;
    private static StoredAddMutations;
    private static StoredMutationsLimit;
    private Subscriber;
    private constructor();
    static manifestSubscriber: () => IManifestSubscriber;
    static getManifestByElement(element: HTMLElement): LoadableBundleManifest;
    static isExistManifestWithElementName(elementName: string): boolean;
    private static RecursiveFindLoadableElements;
    private static loadResourcesForMatchingElementName;
    static loadResourcesForElementName: (elementName: string) => boolean;
    private static loadManifestMatchingElement;
    private static loadResourcesForMatchingRules;
    private static clearManifests;
    private static done;
    private static registerTypeSubscriptions;
    private static newComponentManifestAvailible;
    private static getHandableRules;
    private static extractElementNameAndMatchWithDOM;
    private static matchRulesWithDOM;
    private static matchWithElement;
    private static resolveRule;
}
