lune-ui-lib
Version:
Lune UI Components Library
41 lines (40 loc) • 1.97 kB
TypeScript
import type { SxProps } from '@mui/material';
import { Breakpoint } from '@mui/system';
import React from 'react';
/**
* Controlled Modal component
* @param open - Used to show/hide Modal
* @param children - Children nodes that go inside Modal tags, will be rendered inside Modal content
* @param header - Nodes that will be rendered on the Modal header.
* Can be used to render a modal title
* @param subheader - Nodes that will be rendered on the Modal header.
* Can be used to render a modal description
* @param actions - Nodes that will be rendered on the Modal footer.
* Can be used to render modal action buttons
* @param className - Override or extend the classes applied to the component
* @param disableEscapeKeyDown - `false` by default; used to disable closing modal on ESC press
* @param fullScreen - If `true`, the modal is full-screen.
* @param fullWidth - If true, the dialog stretches to `maxWidth`.
* Notice that the dialog width grow is limited by the default margin.
* @param maxWidth - Determine the max-width of the Modal. The Modal width grows with the size of the screen.
* Set to `false` to disable maxWidth
* @param onClose - Callback fired when the component requests to be closed.
* should be used to set 'open' prop to false in order to close the modal
*/
declare const Modal: ({ open, children, header, subheader, actions, className, disableEscapeKeyDown, fullScreen, fullWidth, maxWidth, onClose, sx, withoutSpacing, stickyFooter, ...rest }: {
open: boolean;
children?: React.ReactNode;
onClose: (event: any, reason: string) => void;
header?: React.ReactNode;
subheader?: React.ReactNode;
actions?: React.ReactNode;
className?: string;
disableEscapeKeyDown?: boolean;
fullScreen?: boolean;
fullWidth?: boolean;
maxWidth?: false | Breakpoint | undefined;
withoutSpacing?: boolean;
sx?: SxProps;
stickyFooter?: boolean;
}) => JSX.Element;
export default Modal;