import type { Editor } from '../../editor';
import type { Designer } from '../designer';
import type { Component, ComponentMetadata } from './meta';
import { ComponentMeta } from './component-meta';
export declare class ComponentMetaManager {
    readonly editor: Editor;
    private accessor _componentMetasMap;
    private _lostComponentMetasMap;
    get designer(): Designer;
    constructor(editor: Editor);
    buildComponentMetasMap: (metas: Record<string, ComponentMetadata>) => void;
    createComponentMeta(data: ComponentMetadata): ComponentMeta | null;
    getComponentMeta(componentName: string, generateMetadata?: () => ComponentMetadata | null): ComponentMeta;
    getComponentSnippets(): import("./meta").Snippet[];
    get componentMetasMap(): Record<string, ComponentMetadata>;
    get componentsMap(): {
        [key: string]: Component;
    };
    getComponentMetasMap(): Map<string, ComponentMeta>;
    isComponentMeta(obj: any): obj is ComponentMeta;
}
