import React, { Component, type ElementType, type ReactNode } from 'react';
import type { ModalFooterProps as FooterComponentProps } from '@atlaskit/modal-dialog/modal-footer';
import type { ModalHeaderProps as HeaderComponentProps } from '@atlaskit/modal-dialog/modal-header';
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<HeaderComponentProps>;
    /**
     * Optional element rendered below the body.
     */
    footer?: ElementType<FooterComponentProps>;
    /**
     * 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<ModalProps> {
    headerComponent: (props: ModalProps) => React.ElementType<HeaderComponentProps> | (() => React.JSX.Element);
    footerComponent: (props: ModalProps) => React.ElementType<FooterComponentProps> | (() => React.JSX.Element | null);
    render(): React.JSX.Element;
}
export {};
