import { ComponentFactoryResolver, Injector, ApplicationRef, InjectionToken, ElementRef, ComponentRef } from '@angular/core';
import { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';
import * as i0 from "@angular/core";
export declare const DYNAMIC_COMPONENT_CONFIG: InjectionToken<{}>;
export declare class EuiDynamicComponentService {
    private componentFactoryResolver;
    private injector;
    private appRef;
    private portalHost;
    private portal;
    private portalComponentInstance;
    constructor(componentFactoryResolver: ComponentFactoryResolver, injector: Injector, appRef: ApplicationRef);
    attach(component: any, el?: ElementRef, config?: any): {
        portalHost: DomPortalOutlet;
        portal: ComponentPortal<any>;
        portalComponentInstance: ComponentRef<any>;
    };
    detach(portalHostRef: DomPortalOutlet): void;
    private createInjector;
    static ɵfac: i0.ɵɵFactoryDef<EuiDynamicComponentService, never>;
    static ɵprov: i0.ɵɵInjectableDef<EuiDynamicComponentService>;
}
