import { PropsWithChildren } from "react"; import { ModalPositions, ModalSizes } from "./types"; interface NvModalProps { /** Class to add to body element if modal is open. */ bodyClass?: string; /** If true, modal will be closed on backdrop click. */ closeOnBackdropClick?: boolean; /** Sets position: fixed CSS style to the modal. */ fixed?: boolean; /** If true, the component is shown. */ open?: boolean; /** Sets value of overflow CSS property for inner container. */ overflow?: "auto" | "hidden" | "visible"; /** Position of the modal window inside container. */ position?: ModalPositions; /** Size of the modal window. */ size?: ModalSizes; /** Sets z-index for the container. */ zIndex?: number; /** Callback fired when the modal is closed on backdrop click. */ onToggle?: (value: boolean) => void; } /** * Functional component for rendering a modal with customizable options like position, size, and behavior. * * @param {string} bodyClass The class to be added to the body element when the modal is open. * @param {boolean} closeOnBackdropClick Determines if the modal should close when clicking on the backdrop. * @param {boolean} fixed Determines if the modal should have a fixed position. * @param {boolean} open Determines if the modal is open or closed. * @param {string} overflow The overflow behavior for the modal container. * @param {ModalPositions} position The position of the modal (e.g., top-center, middle-left). * @param {ModalSizes} size The size of the modal (e.g., small, medium, large). * @param {number} zIndex The z-index of the modal. * @param {func} onToggle Callback function to toggle the modal open/close state. * @param {ReactNode} children The content to be displayed within the modal. */ declare const NvModal: ({ bodyClass, closeOnBackdropClick, fixed, open, overflow, position, size, zIndex, onToggle, children, }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element; export default NvModal;