import React from 'react'; import { IconProp } from '../icons'; export declare type UseModalReturn = { isOpen: boolean; open: () => void; close: () => void; control: UseModalReturn; }; export declare function useModal(initialIsOpen: boolean): UseModalReturn; declare type ModalProps = { children: React.ReactNode; control: UseModalReturn; openerRef?: React.RefObject; className?: string; dismissable?: boolean; unstyled?: boolean; }; declare function ModalRoot({ children, control, openerRef, className, dismissable, unstyled }: ModalProps): React.ReactPortal | null; declare type ModalBodyProps = React.DetailedHTMLProps, HTMLDivElement> & { heading?: React.ReactNode; icon?: IconProp; iconClassNames?: string; }; declare function Body({ children, heading, icon, className, iconClassNames }: ModalBodyProps): JSX.Element; declare type ModalFooterProps = React.DetailedHTMLProps, HTMLDivElement>; declare function Footer({ children, className }: ModalFooterProps): JSX.Element; export declare const Modal: typeof ModalRoot & { Body: typeof Body; Footer: typeof Footer; }; export {};