import React, { ReactNode, RefObject } from 'react'; export interface MediaModalProps { /** * Handle zoom/pinch gestures on iOS devices when scroll locking is enabled. */ allowPinchZoom?: boolean; /** * Each modal needs to be properly labeled to provide context for users with * assistive technology such as screen readers. If a modal is announced to * the user without a label, it can be confusing and difficult to * navigate. If `title` is defined, that will be used instead */ ariaLabel?: string; /** * Contents of the dialog. */ children?: ReactNode; /** * Additional ClassNames to add to dialog. */ className?: string; /** * The ref of the container where the dialog will be inserted into the DOM. * By default, Modals are inserted in the document.body, but if need be they can * be scoped as necessary. */ containerRef?: React.RefObject; /** * Whether the modal has a visible close button. * If a title description, or headerContent is defined, then a close button will be rendered */ closeButton?: boolean; /** * By default the first focusable element will receive focus when the dialog * opens but you can provide a ref to focus instead. * * @see Docs https://reach.tech/dialog#dialog-initialfocusref */ initialFocusRef?: RefObject; /** * Whether the modal is visible or not */ isOpen: boolean; /** * Title to be displayed at the top of the viewport. * A close button will be rendered automatically if this prop is defined. * If headerContent is defined, this will be ignored. */ title?: string; /** * Text to be displayed at the top of the viewport beneath the title. * A close button will be rendered automatically if this prop is defined. * If headerContent is defined, this will be ignored. */ description?: string; /** * Contents of the footer area. */ footerContent?: ReactNode; /** * Contents of the header area. If defined, the title and description will not be rendered. * A close button will be rendered automatically if this prop is defined. */ headerContent?: ReactNode; /** * Function that is called whenever the user hits "Escape" key or clicks outside the modal. */ onDismiss: (event?: React.SyntheticEvent) => void; /** * Allows spread props */ [x: string]: any; } export declare const MediaModal: React.FC;