import { ElementRef, EventEmitter, OnDestroy, OnInit, Renderer2 } from '@angular/core'; import { Subject } from 'rxjs'; import { GasDynamicComponentsService } from '@cikrf/gas-utils/services'; import { GasPositioningPopup } from './gas-dynamic-positioning-popup.namespace'; import { GasPositioningService } from '../../utils/gas-positioning/gas-positioning.service'; import { GasBrowserEventsService } from '../../utils/gas-browser-event/gas-browser-events.service'; /** * Данная директива призвана для создания динамических компонентов * Которые будут располагаться в зависимости от конфигурации * * @generic T указывает тип возвращаемых данных при закрытии popup. * @generic U указывает тип props используемого компонента */ export declare class GasDynamicPositioningPopupDirective implements OnDestroy, OnInit { private el; private gasDynamicComponentsService; private gasPositioningService; private gasBrowserEventsService; private render; config: GasPositioningPopup.Config; nativeDisabled: boolean; submited$: EventEmitter; opened$: EventEmitter; clickedOutside$: EventEmitter; destroyed$: Subject; private componentRef; private browserScreenEvents$; constructor(el: ElementRef, gasDynamicComponentsService: GasDynamicComponentsService, gasPositioningService: GasPositioningService, gasBrowserEventsService: GasBrowserEventsService, render: Renderer2); clickByDirective(event: MouseEvent): void; keydownHandler(event: KeyboardEvent): void; ngOnInit(): void; ngOnDestroy(): void; private onMouseEnter; private onMouseLeave; private open; private destroy; /** Intersection смотрит на то, что данный элемент пропал из зоны видимости, в этом случае убиваем popup */ private subscribeIntersection; /** Установка позиции */ private setPosition; /** Проксирование необходимых инпутов, берем из свойства props в конфиге */ private setProps; private setStyles; private clearStyles; }