import * as react_jsx_runtime from 'react/jsx-runtime';
import { PropsWithChildren, ReactNode } from 'react';
import { PropsForTranslation } from '../../localization/useTranslation.js';
import { FormTranslationType } from '../../localization/defaults/form.js';
import { ConfirmDialogProps } from './ConfirmDialog.js';
import '../../localization/util.js';
import '../user-action/Button.js';
import './Dialog.js';
import '../layout/FloatingContainer.js';
import '../../hooks/useFloatingElement.js';

type DiscardChangesDialogTranslation = FormTranslationType;
type DiscardChangesDialogProps = Omit<ConfirmDialogProps, 'onDecline' | 'onConfirm' | 'buttonOverwrites' | 'titleElement' | 'description'> & {
    isShowingDecline?: boolean;
    requireAnswer?: boolean;
    onCancel: () => void;
    onSave: () => void;
    onDontSave: () => void;
    titleOverwrite?: ReactNode;
    descriptionOverwrite?: ReactNode;
};
declare const DiscardChangesDialog: ({ overwriteTranslation, children, onCancel, onSave, onDontSave, titleOverwrite, descriptionOverwrite, ...props }: PropsForTranslation<DiscardChangesDialogTranslation, PropsWithChildren<DiscardChangesDialogProps>>) => react_jsx_runtime.JSX.Element;

export { DiscardChangesDialog };
