import { ApplicationRef, ComponentFactoryResolver, ComponentRef, ElementRef, EmbeddedViewRef, EventEmitter, Injector, NgZone, Renderer2, StaticProvider, TemplateRef, Type, ViewContainerRef } from '@angular/core'; import { PositioningOptions, PositioningService } from 'ngx-bootstrap/positioning'; import { ListenOptions } from './listen-options.model'; export declare class ComponentLoader { private _viewContainerRef; private _renderer; private _elementRef; private _injector; private _componentFactoryResolver; private _ngZone; private _applicationRef; private _posService; onBeforeShow: EventEmitter; onShown: EventEmitter; onBeforeHide: EventEmitter; onHidden: EventEmitter; instance: T; _componentRef: ComponentRef; _inlineViewRef: EmbeddedViewRef; private _providers; private _componentFactory; private _zoneSubscription; private _contentRef; private _innerComponent; private _unregisterListenersFn; readonly isShown: boolean; private _isHiding; /** * Placement of a component. Accepts: "top", "bottom", "left", "right" */ private attachment; /** * A selector specifying the element the popover should be appended to. */ private container; /** * A selector used if container element was not found */ private containerDefaultSelector; /** * Specifies events that should trigger. Supports a space separated list of * event names. */ private triggers; private _listenOpts; private _globalListener; /** * Do not use this directly, it should be instanced via * `ComponentLoadFactory.attach` * @internal */ constructor(_viewContainerRef: ViewContainerRef, _renderer: Renderer2, _elementRef: ElementRef, _injector: Injector, _componentFactoryResolver: ComponentFactoryResolver, _ngZone: NgZone, _applicationRef: ApplicationRef, _posService: PositioningService); attach(compType: Type): ComponentLoader; to(container?: string | ElementRef): ComponentLoader; position(opts?: PositioningOptions): ComponentLoader; provide(provider: StaticProvider): ComponentLoader; show(opts?: { content?: string | TemplateRef; context?: any; initialState?: any; [key: string]: any; }): ComponentRef; hide(): ComponentLoader; toggle(): void; dispose(): void; listen(listenOpts: ListenOptions): ComponentLoader; _removeGlobalListener(): void; attachInline(vRef: ViewContainerRef, template: TemplateRef): ComponentLoader; _registerOutsideClick(): void; getInnerComponent(): ComponentRef; private _subscribePositioning; private _unsubscribePositioning; private _getContentRef; }