import * as react_jsx_runtime from 'react/jsx-runtime'; import { A as AriaProps } from './accessibility-Dv-wc-jy.js'; import { ReactNode } from 'react'; interface ModalProps extends AriaProps { open: boolean; onClose: () => void; title?: string; width?: number; children?: ReactNode; /** Border style. Default: 'round' */ borderStyle?: 'single' | 'double' | 'round' | 'bold' | 'singleDouble' | 'doubleSingle' | 'classic'; /** Border color. Default: theme.colors.primary */ borderColor?: string; /** Horizontal padding. Default: 1 */ paddingX?: number; /** Vertical padding. Default: 0 */ paddingY?: number; /** Title bar border style. Default: 'single' */ titleBorderStyle?: 'single' | 'double' | 'round' | 'bold' | 'singleDouble' | 'doubleSingle' | 'classic'; /** Close hint text. Set to false to hide, or a string to customize. Default: 'Press Esc to close' */ closeHint?: string | false; /** * Ordered Ink focus IDs to trap within the modal. * When provided, Tab/Shift+Tab cycles through them and focus is * moved to the first ID when the modal opens. * Each ID must match `useFocus({ id: '...' })` on a child element. */ focusableIds?: string[]; } declare function Modal({ open, onClose, title, width, children, borderStyle, borderColor, paddingX, paddingY, titleBorderStyle, closeHint, focusableIds, 'aria-label': ariaLabel, 'aria-description': ariaDescription, 'aria-live': ariaLive, }: ModalProps): react_jsx_runtime.JSX.Element | null; interface DialogProps extends AriaProps { title?: string; children: ReactNode; confirmLabel?: string; cancelLabel?: string; onConfirm?: () => void; onCancel?: () => void; variant?: 'default' | 'danger'; isOpen?: boolean; } declare function Dialog({ title, children, confirmLabel, cancelLabel, onConfirm, onCancel, variant, isOpen, 'aria-label': ariaLabel, 'aria-description': ariaDescription, 'aria-live': ariaLive, }: DialogProps): react_jsx_runtime.JSX.Element | null; type DrawerEdge = 'left' | 'right' | 'top' | 'bottom'; interface DrawerProps { isOpen?: boolean; edge?: DrawerEdge; title?: string; children: ReactNode; onClose?: () => void; width?: number; height?: number; /** * Ordered Ink focus IDs to trap within the drawer. * When provided, Tab/Shift+Tab cycles through them and focus is * moved to the first ID when the drawer opens. */ focusableIds?: string[]; } declare function Drawer({ isOpen, edge, title, children, onClose, width, height, focusableIds, }: DrawerProps): react_jsx_runtime.JSX.Element | null; interface TooltipProps { children: ReactNode; content: string; position?: 'top' | 'bottom' | 'left' | 'right'; isVisible?: boolean; /** Border style of the tooltip box. Default: 'single' */ borderStyle?: 'single' | 'double' | 'round' | 'bold' | 'singleDouble' | 'doubleSingle' | 'classic'; /** Border/arrow color. Default: theme.colors.border */ borderColor?: string; /** Horizontal padding of the tooltip box. Default: 1 */ paddingX?: number; /** Vertical padding of the tooltip box. Default: 0 */ paddingY?: number; /** Gap between tooltip and trigger for left/right positions. Default: 1 */ gap?: number; /** Arrow shown below tooltip (top position). Default: '↓' */ arrowDown?: string; /** Arrow shown above tooltip (bottom position). Default: '↑' */ arrowUp?: string; } declare function Tooltip({ children, content, position, isVisible, borderStyle, borderColor, paddingX, paddingY, gap, arrowDown, arrowUp, }: TooltipProps): react_jsx_runtime.JSX.Element; interface PopoverProps { trigger: ReactNode; children: ReactNode; isOpen?: boolean; onClose?: () => void; title?: string; } declare function Popover({ trigger, children, isOpen, onClose, title }: PopoverProps): react_jsx_runtime.JSX.Element; interface NotificationBadgeProps { count: number; color?: string; } declare function NotificationBadge({ count, color }: NotificationBadgeProps): react_jsx_runtime.JSX.Element | null; export { Dialog, type DialogProps, Drawer, type DrawerEdge, type DrawerProps, Modal, type ModalProps, NotificationBadge, type NotificationBadgeProps, Popover, type PopoverProps, Tooltip, type TooltipProps };