import { AfterContentInit, ApplicationRef, ComponentFactoryResolver, ComponentRef, Injector, OnDestroy, TemplateRef, ViewContainerRef } from '@angular/core'; import { Observable } from 'rxjs'; export declare type PopoverVerticalPlacement = 'top' | 'bottom' | 'middle' | 'top-baseline' | 'bottom-baseline' | 'auto'; export declare type PopoverHorizontalPlacement = 'left' | 'right' | 'left-baseline' | 'right-baseline' | 'start' | 'end' | 'start-baseline' | 'end-baseline' | 'center' | 'auto'; interface PopoverBaseConstructor { content: string | HTMLElement | HTMLElement[] | TemplateRef; element?: HTMLElement; anchorElement: HTMLElement; horizontal: PopoverHorizontalPlacement; vertical: PopoverVerticalPlacement; popoverComponentRef?: ComponentRef; } declare type PopoverConstructor = PopoverBaseConstructor; export declare class Popover { private readonly arrowClassValue; private arrowClass; readonly element: HTMLElement; private showValue; private anchorElement; id: string; horizontal: PopoverHorizontalPlacement; vertical: PopoverVerticalPlacement; forceShow: boolean; customClass: string; matchWidth: boolean | 'min-width'; ready: Observable; popoverComponentRef: ComponentRef; maxWindowHeight: boolean; set show(showValue: boolean); get show(): boolean; set arrow(b: boolean); set content(content: any); constructor({ content, anchorElement, horizontal, vertical, element, popoverComponentRef, }: PopoverConstructor); getPosition(): { top: string; left: string; horizontal: "left" | "right" | "center"; vertical: "bottom" | "middle" | "top" | "top-baseline" | "bottom-baseline"; }; updatePopOverPosition(): void; } declare class FlyingPopoverComponent implements AfterContentInit, OnDestroy { container: ViewContainerRef; private content$; private ngDestroy$; setContent(template: TemplateRef): void; ngAfterContentInit(): void; ngOnDestroy(): void; } export declare class PopoverService { componentFactoryResolver: ComponentFactoryResolver; private appRef; private injector; constructor(componentFactoryResolver: ComponentFactoryResolver, appRef: ApplicationRef, injector: Injector); private readonly containerElement; popovers: Popover[]; underObservation: Popover[]; addPopover(popover: PopoverConstructor): Promise; removePopover(id: string): void; } export {};