/** * DevExtreme (ui/popover.d.ts) * Version: 25.1.7 * Build date: Mon Nov 10 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { AnimationConfig, PositionConfig, } from '../common/core/animation'; import { UserDefinedElement, } from '../core/element'; import { DxPromise, } from '../core/utils/deferred'; import { Cancelable, AsyncCancelable, EventInfo, InitializedEventInfo, ChangedOptionInfo, DxEvent, PointerInteractionEvent, } from '../events'; import dxPopup, { dxPopupAnimation, dxPopupOptions, TitleRenderedInfo, } from './popup'; import { Position, } from '../common'; /** * The type of the contentReady event handler's argument. */ export type ContentReadyEvent = EventInfo; /** * The type of the disposing event handler's argument. */ export type DisposingEvent = EventInfo; /** * The type of the hiding event handler's argument. */ export type HidingEvent = AsyncCancelable & EventInfo; /** * The type of the hidden event handler's argument. */ export type HiddenEvent = EventInfo; /** * The type of the initialized event handler's argument. */ export type InitializedEvent = InitializedEventInfo; /** * The type of the optionChanged event handler's argument. */ export type OptionChangedEvent = EventInfo & ChangedOptionInfo; /** * The type of the showing event handler's argument. */ export type ShowingEvent = Cancelable & EventInfo; /** * The type of the shown event handler's argument. */ export type ShownEvent = EventInfo; /** * The type of the titleRendered event handler's argument. */ export type TitleRenderedEvent = EventInfo & TitleRenderedInfo; /** * * @deprecated * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ export interface dxPopoverOptions extends dxPopupOptions { /** * Configures UI component visibility animations. This object contains two fields: show and hide. */ animation?: dxPopoverAnimation; /** * Specifies the UI component's height. */ height?: number | string; /** * Specifies properties of popover hiding. Ignored if the shading property is set to true. */ hideEvent?: { /** * The delay in milliseconds after which the UI component is hidden. */ delay?: number | undefined; /** * Specifies the event names on which the UI component is hidden. */ name?: string | undefined; } | string | undefined; /** * Specifies whether to hide the UI component if a user clicks outside the popover window or outside the target element. */ hideOnOutsideClick?: boolean | ((event: DxEvent) => boolean); /** * Specifies whether to hide the widget when users scroll one of its parent elements. */ hideOnParentScroll?: boolean; /** * An object defining UI component positioning properties. */ position?: Position | PositionConfig; /** * Specifies whether to shade the background when the UI component is active. */ shading?: boolean; /** * Specifies properties for displaying the UI component. */ showEvent?: { /** * The delay in milliseconds after which the UI component is displayed. */ delay?: number | undefined; /** * Specifies the event names on which the UI component is shown. */ name?: string | undefined; } | string | undefined; /** * A Boolean value specifying whether or not to display the title in the overlay window. */ showTitle?: boolean; /** * Specifies the element against which to position the widget. If target is `undefined`, the component cannot be displayed. */ target?: string | UserDefinedElement | undefined; /** * Specifies the UI component's width. */ width?: number | string; } /** * Configures UI component visibility animations. This object contains two fields: show and hide. * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ export interface dxPopoverAnimation extends dxPopupAnimation { /** * An object that defines the animation properties used when the UI component is being hidden. */ hide?: AnimationConfig; /** * An object that defines the animation properties used when the UI component is being shown. */ show?: AnimationConfig; } /** * The Popover is a UI component that shows notifications within a box with an arrow pointing to a specified UI element. */ export default class dxPopover extends dxPopup { show(): DxPromise; /** * Shows the UI component for a target element. */ show(target: string | UserDefinedElement): DxPromise; } /** * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ interface PopoverInstance extends dxPopover { } export type Properties = dxPopoverOptions; /** * @deprecated use Properties instead * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ export type Options = Properties;