/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { AfterViewInit, ElementRef, EventEmitter, OnInit, OnChanges, OnDestroy, NgZone, Renderer2, TemplateRef } from '@angular/core'; import { Align } from './models/align.interface'; import { Collision } from './models/collision.interface'; import { Offset } from './models/offset.interface'; import { Margin } from './models/margin.interface'; import { PositionMode } from './models/position-mode'; import { PopupAnimation } from './models/popup-animation.interface'; import { AlignService } from './services/align.service'; import { DOMService } from './services/dom.service'; import { PositionService } from './services/position.service'; import { ResizeService } from './services/resize.service'; import { ScrollableService } from './services/scrollable.service'; import { AnimationService } from './services/animation.service'; import { ResizeSensorComponent } from '@progress/kendo-angular-common'; import * as i0 from "@angular/core"; /** * Represents the [Kendo UI Popup component for Angular]({% slug overview_popup %}). * * @example * ```html * * * Popup content! * * ``` */ export declare class PopupComponent implements AfterViewInit, OnInit, OnChanges, OnDestroy { container: ElementRef; private _alignService; domService: DOMService; private _positionService; private _resizeService; private _scrollableService; private animationService; private _renderer; private _zone; /** * Controls the Popup animation. By default, the opening and closing animations are enabled ([see example]({% slug animations_popup %})). * @default true */ animate: boolean | PopupAnimation; /** * Sets the element to use as an anchor. The Popup opens next to this element. ([See example]({% slug alignmentpositioning_popup %}#toc-aligning-to-components)). */ anchor: ElementRef | HTMLElement; /** * Sets the anchor pivot point ([see example]({% slug alignmentpositioning_popup %}#toc-positioning)). * @default '{ horizontal: "left", vertical: "bottom" }' */ anchorAlign: Align; /** * Sets the collision behavior of the Popup ([see example]({% slug viewportboundarydetection_popup %})). * @default '{ horizontal: "fit", vertical: "flip" }' */ collision: Collision; /** * Sets the pivot point of the Popup ([see example]({% slug alignmentpositioning_popup %}#toc-positioning)). * @default '{ horizontal: "left", vertical: "top" }' */ popupAlign: Align; /** * Controls whether the component copies the `anchor` font styles. * @default false */ copyAnchorStyles: boolean; /** * Sets a list of CSS classes to add to the internal animated element ([see example]({% slug appearance_popup %})). * * > To style the content of the Popup, use this property binding. */ popupClass: string | Array | Object; /** * Sets the position mode of the component. By default, the Popup uses fixed positioning. To use absolute positioning, set this option to `absolute`. * * To support mobile browsers with the zoom option, use the `absolute` positioning of the Popup. * @default 'fixed' */ positionMode: PositionMode; /** * Sets the absolute position of the element ([see example]({% slug alignmentpositioning_popup %}#toc-aligning-to-absolute-points)). * The Popup opens next to this point. The Popup pivot point is defined by the `popupAlign` option. The boundary detection uses the window viewport. * @default '{ left: -10000, top: 0 }' */ offset: Offset; /** * Sets the margin value in pixels. Adds blank space between the Popup and the anchor ([see example]({% slug alignmentpositioning_popup %}#toc-adding-a-margin)). */ margin: Margin; /** * Fires when the anchor scrolls outside the screen boundaries. ([See example]({% slug closing_popup %}#toc-after-leaving-the-viewport)). */ anchorViewportLeave: EventEmitter; /** * Fires after the component closes. */ close: EventEmitter; /** * Fires after the component opens and the opening animation ends. */ open: EventEmitter; /** * Fires after the component is opened and the Popup is positioned. */ positionChange: EventEmitter; /** * @hidden */ contentContainer?: ElementRef; /** * @hidden */ resizeSensor: ResizeSensorComponent; /** * @hidden */ content?: TemplateRef; /** * @hidden */ renderDefaultClass: boolean; private resolvedPromise; private _currentOffset?; private animationSubscriptions; private repositionSubscription; private initialCheck; constructor(container: ElementRef, _alignService: AlignService, domService: DOMService, _positionService: PositionService, _resizeService: ResizeService, _scrollableService: ScrollableService, animationService: AnimationService, _renderer: Renderer2, _zone: NgZone); ngOnInit(): void; ngOnChanges(changes: any): void; ngAfterViewInit(): void; ngAfterViewChecked(): void; ngOnDestroy(): void; /** * @hidden */ onResize(): void; private onAnimationStart; private onAnimationEnd; private get currentOffset(); private set currentOffset(value); private setZIndex; private reposition; private position; private onScroll; private copyFontStyles; private updateFixedClass; private setContainerStyle; private unsubscribeReposition; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }