import React, { type CSSProperties, type ReactElement } from "react"; import { type VibeComponentProps } from "@vibe/shared"; import { type DialogAnimationType, type DialogTriggerEvent, type DialogStartingEdge, type DialogPlacement } from "../../Dialog.types"; export interface DialogContentProps extends VibeComponentProps { /** * The content inside the dialog. */ children?: ReactElement | ReactElement[]; /** * The placement of the dialog relative to the reference element. */ position?: DialogPlacement; /** * Class name applied to the dialog wrapper. */ wrapperClassName?: string; /** * If true, the dialog is open. */ isOpen?: boolean; /** * The starting edge for animation direction. */ startingEdge?: DialogStartingEdge; /** * The animation type used for showing/hiding the dialog. */ animationType?: DialogAnimationType; /** * Callback fired when the Escape key is pressed. */ onEsc?: (event: React.KeyboardEvent) => void; /** * Callback fired when the mouse enters the dialog. */ onMouseEnter?: (event: React.MouseEvent) => void; /** * Callback fired when the mouse leaves the dialog. */ onMouseLeave?: (event: React.MouseEvent) => void; /** * Callback fired when clicking outside the dialog. */ onClickOutside?: (event: React.MouseEvent, hideShowEvent: DialogTriggerEvent) => void; /** * Callback fired when clicking inside the dialog. */ onClick?: (event: React.MouseEvent) => void; /** * Delay before showing the dialog (used for animation timing). */ showDelay?: number; /** * Inline styles applied to the dialog wrapper. */ styleObject?: CSSProperties; /** * If true, indicates the reference element is hidden. */ isReferenceHidden?: boolean; /** * If true, applies tooltip arrow styling. */ hasTooltip?: boolean; /** * CSS selector of the container for scroll disabling. */ containerSelector?: string; /** * If true or a selector string, disables scrolling when open. */ disableContainerScroll?: boolean | string; /** * Callback fired on context menu (right-click) events. */ onContextMenu?: (e: React.MouseEvent) => void; } declare const DialogContent: React.ForwardRefExoticComponent>; export default DialogContent;