import React, { Component, type ElementType, type ReactNode } from 'react'; import { type ModalFooterProps as FooterComponentProps, type ModalHeaderProps as HeaderComponentProps } from '@atlaskit/modal-dialog'; import { type Actions } from '../types'; type ModalProps = { /** * Buttons to render in the footer. */ actions?: Actions; /** * The elements rendered in the modal. */ children: ReactNode; /** * Path to the image. */ image?: string; /** * Optional element rendered above the body. */ header?: ElementType; /** * Optional element rendered below the body. */ footer?: ElementType; /** * Heading text rendered above the body. */ heading?: string; /** * Boolean prop to confirm if primary button in the footer should be shown on the right. */ experimental_shouldShowPrimaryButtonOnRight?: boolean; /** * This prop is a unique string that appears as an attribute `data-testid` in the rendered HTML output serving as a hook for automated tests. */ testId?: string; }; /** * __Benefits modal__ * * A benefits modal explains the benefits of a significant new feature or experience change. * * - [Examples](https://atlassian.design/components/onboarding/benefits-modal/examples) * - [Code](https://atlassian.design/components/onboarding/benefits-modal/code) * - [Usage](https://atlassian.design/components/onboarding/benefits-modal/usage) * * @deprecated Use `@atlaskit/modal-dialog` instead. */ export default class BenefitsModal extends Component { headerComponent: (props: ModalProps) => React.ElementType | (() => React.JSX.Element); footerComponent: (props: ModalProps) => React.ElementType | (() => React.JSX.Element | null); render(): React.JSX.Element; } export {};