import { Root, RootProps } from './modal-root'; import { Trigger, TriggerProps } from './modal-trigger'; import { Content, ContentProps } from './modal-content'; import { Title, TitleProps } from './modal-title'; import { Description, DescriptionProps } from './modal-description'; import { Overlay, OverlayProps } from './modal-overlay'; import { Group, GroupProps } from './modal-group'; import { Close, CloseProps } from './modal-close'; import { Image, ImageProps } from './modal-image'; type ModalProps = { Root: RootProps; Trigger: TriggerProps; Content: ContentProps; Title: TitleProps; Description: DescriptionProps; Overlay: OverlayProps; Group: GroupProps; Close: CloseProps; Image: ImageProps; }; /** * Modal is a dialog that appears on top of the main content and moves the system into a special mode requiring user interaction. * It's commonly used for important information that requires immediate attention, or to gather user input without leaving the current page. * * @component * * @example * // Basic usage * * * * * * Modal Title * * Modal content goes here. * * * * @example * // Advanced usage with action buttons and groups * * * * * * Confirm Action * * * Are you sure you want to proceed with this action? * * * * * * * * * */ declare const Modal: typeof Root & { /** * Trigger component that opens the modal when clicked. * Must be passed a single child component that will be used as the trigger. * * @component * * @example * * * */ Trigger: typeof Trigger; /** * Content component that contains the modal's content. * Handles the positioning and scrolling behavior of the modal content. * * @component * * @example * * Title * Content * */ Content: typeof Content; /** * An accessible title to be announced when the dialog is opened. * It will render the internal Heading component * If you want to hide the title, wrap it inside our Visually Hidden utility like this``. * * @component * * @example * Modal Title */ Title: typeof Title; /** * An optional accessible description to be announced when the dialog is opened. * This will render the internal Text component with an default p tag * * If you want to hide the description, wrap it inside our Visually Hidden utility like this `` * * @component * * @example * * This is the main content of the modal. * It can contain multiple paragraphs and other components. * */ Description: typeof Description; /** * Overlay component provides the backdrop for the modal. * Handles the background dimming and click-outside behavior. * * @component * * @example * * * {/* Content will be centered in the overlay *\/} * * */ Overlay: typeof Overlay; /** * Group component for organizing content or actions within the modal. * Provides layout and styling for grouped content, especially useful for action buttons. * * @component * * @example * // Action buttons group * * * * * * @example * // Content group * * First section *
Second section
*
*/ Group: typeof Group; /** * Close component provides a button to close the modal. * Can be used either as a floating close button or within content. * * @component * * @example * // Floating close button * * * @example * // Close button within content * * * */ Close: typeof Close; /** * Image component displays an image in the modal. * Handles proper sizing and positioning of images within the modal. * * @component * * @example * // Basic image * * * @example * // Custom image component * * Description * */ Image: typeof Image; }; export { Modal }; export type { ModalProps };