import { IAnimatableProps } from '../../../Behaviors/Animatable'; import { IAppearanceableProps } from '../../../Behaviors/Appearanceable'; import { IAttachableProps } from '../../../Behaviors/Attachable'; import { IDisableableProps } from '../../../Behaviors/Disableable'; import { IElevatableProps } from '../../../Behaviors/Elevatable'; import { IVariantableProps } from '../../../Behaviors/Variantable'; import { Placement } from '../../../Types/Placement'; import type { Trigger } from '../../../Types/Trigger'; import { IOverlayElementProps } from '../../Overlays/Abstracts/OverlayElement'; /** * Represents the `IPopupElementProps` interface. * * @public */ export interface IPopupElementProps extends IOverlayElementProps, IAppearanceableProps, IVariantableProps, IDisableableProps, IElevatableProps, IAnimatableProps, IAttachableProps { /** * The placement of the popup relative to its anchor element. */ placement: Placement; /** * The fallback placements to use when the preferred placement doesn't fit. */ placements: Array; /** * The horizontal offset (distance) from the anchor element in pixels. */ distance: number; /** * The vertical offset (skidding) along the anchor element in pixels. */ skidding: number; /** * The trigger(s) that will open/close the popup. * Can be combined using bitwise OR (e.g., `Trigger.Hover | Trigger.Focus`). */ trigger: Trigger; /** * Delay in milliseconds before showing the popup. */ showDelay: number; /** * Delay in milliseconds before hiding the popup. */ hideDelay: number; /** * Whether the popup stays open when the mouse moves from anchor to popup content. */ staysOpen: boolean; /** * Whether scrolling should close the popup. */ closeOnScroll: boolean; /** * Whether the popup content is interactive (allows clicks, focus, etc.). */ interactive: boolean; /** * Whether to automatically flip the popup to the opposite side when there's not enough space. */ flip: boolean; /** * Whether to shift the popup along its axis to stay within the viewport. */ shift: boolean; /** * Whether to trap focus within the popup (for accessibility). */ trapFocus: boolean; } /** * Default values for PopupElement properties. * * @public */ export declare namespace IPopupElementProps { const DEFAULTS: IPopupElementProps; } //# sourceMappingURL=IPopupElementProps.d.ts.map