declare module '@salesforce/design-system-react/components/modal' { import React from 'react'; type Props = { /** * Vertical alignment of Modal. */ align?: 'top' | 'center'; /** * Boolean indicating if the appElement should be hidden. */ ariaHideApp?: boolean; /** * **Assistive text for accessibility.** * This object is merged with the default props object on every render. * * `dialogLabel`: This is a visually hidden label for the dialog. If not provided, `heading` is used. * * `dialogLabelledBy`: This describes which node labels the dialog. If not provided and dialogLabel is unavailable, `id` is used. * * `closeButton`: This is a visually hidden label for the close button. */ assistiveText?: Partial<{ dialogLabel?: string; dialogLabelledBy?: string; closeButton?: string; }>; /** * Modal content. */ children: React.ReactNode /*.isRequired*/; /** * Custom CSS classes for the modal `section` node classed `.slds-modal` and the parent of `.slds-modal__container`. Uses `classNames` [API](https://github.com/JedWatson/classnames). */ className?: any[] | Record | string; /** * Custom CSS classes for the modal's container. This is the child element of `.slds-modal` with class `.slds-modal__container`. Uses `classNames` [API](https://github.com/JedWatson/classnames). */ containerClassName?: any[] | Record | string; /** * Custom CSS classes for the modal's body. This is the element that has overflow rules and should be used to set a static height if desired. Use `classNames` [API](https://github.com/JedWatson/classnames). */ contentClassName?: any[] | Record | string; /** * Custom styles for the modal's body. This is the element that has overflow rules and should be used to set a static height if desired. */ contentStyle?: Record; /** * If true, modal footer buttons render left and right. An example use case would be for "back" and "next" buttons. */ directional?: boolean; /** * If true, Modals cannot be dismissed by clicking on the close icon or pressing esc key. */ disableClose?: boolean; /** * If true, Modals can be dismissed by clicking outside of modal. If unspecified, defaults to disableClose. */ dismissOnClickOutside?: boolean; /** * Callback to fire with Modal is dismissed */ onRequestClose?: (v: any) => any; /** * Accepts a node or array of nodes that are typically a `Button` or `ProgressIndicator`. If an array, the nodes render on the right side first but are then floated left and right if directional prop is `true`. */ footer?: any[] | React.ReactNode; /** * Allows for a custom modal header that does not scroll with modal content. If this is defined, `heading` and `tagline` will be ignored. The close button will still be present. */ header?: React.ReactNode; /** * Adds CSS classes to the container surrounding the modal header and the close button. Use `classNames` [API](https://github.com/JedWatson/classnames). */ headerClassName?: any[] | Record | string; /** * Unique identifier for the modal. The id is automatically generated if not provided */ id?: string; /** * Forces the modal to be open or closed. */ isOpen: boolean /*.isRequired*/; /** * Function whose return value is the mount node to insert the Modal element into. The default is `() => document.body`. */ parentSelector?: (v: any) => any; /** * Custom CSS classes for the portal DOM node. This node is a direct descendant of the `body` and is the parent of `ReactModal__Overlay`. Use `classNames` [API](https://github.com/JedWatson/classnames). */ portalClassName?: any[] | Record | string; /** * Styles the modal as a prompt. */ prompt?: 'success' | 'warning' | 'error' | 'wrench' | 'offline' | 'info'; /** * Specifies the modal's width. May be deprecated in favor of `width` in the future. */ size?: 'small' | 'medium' | 'large'; /** * Content underneath the heading in the modal header. */ tagline?: React.ReactNode; /** * Content underneath the title in the modal header. */ title?: React.ReactNode; /** * Text heading at the top of a modal. */ heading?: React.ReactNode; /** * Allows adding additional notifications within the modal. */ toast?: React.ReactNode; }; /** * The Modal component is used for the Lightning Design System Modal and Notification > Prompt components. The Modal opens from a state change outside of the component itself (pass this state to the isOpen prop). For more details on the Prompt markup, please review the Notifications > Prompt. * * By default, `Modal` will add `aria-hidden=true` to the `body` tag, but this disables some assistive technologies. To prevent this you can add the following to your application with `#mount` being the root node of your application that you would like to hide from assistive technologies when the `Modal` is open. * ``` * import settings from 'design-system-react/components/settings'; * settings.setAppElement('#mount'); * ``` * This component uses a portalMount (a disconnected React subtree mount) to create a modal as a child of `body`. */ function Component(props: Props): JSX.Element; export default Component; }