import Core from '../../core';
import { Context, DappletConfig, IWidgetBuilderConfig } from './types';
export declare class WidgetBuilder {
    readonly adapterName: string;
    private _core;
    contextName: string;
    containerSelector: string;
    contextSelector: string;
    insPoints: {
        [key: string]: any;
    };
    events: {
        [key: string]: (node: any, ctx: any, emitter: Function, on?: Function) => void;
    };
    contextBuilder: (node: any, parent: any) => any;
    observer: MutationObserver;
    eventHandler: (event: string, args: any[], target: any) => void;
    theme: undefined | (() => string);
    childrenContexts: string[] | null;
    private executedNodes;
    private widgetsByContextId;
    private widgets;
    contexts: WeakMap<Node, Context>;
    constructor(adapterName: string, contextName: string, widgetBuilderConfig: IWidgetBuilderConfig, _core: Core);
    emitEvent(targetCtx: any, event: string, context: Context, args: any[]): void;
    updateContexts(dappletConfigs: DappletConfig[], container: Element, widgetBuilders: WidgetBuilder[], parentContext: any): any[];
    findWidget(config: DappletConfig, ctx: any, id: any): any;
    unmountWidgets(config: DappletConfig): void;
    private _insertWidgets;
    private _compareObjects;
    private _tryParseContext;
    private _getParentContextByElement;
}
