import * as React from 'react';
import type { ModalProps } from '../Modal';
type FooterClassNames = Readonly<{
    wrapper?: string;
    actions?: string;
}>;
export declare const DIALOG_SEMANTIC: Readonly<{
    neutral: "neutral";
    success: "success";
    information: "information";
    warning: "warning";
    danger: "danger";
}>;
export type DialogSemanticType = (typeof DIALOG_SEMANTIC)[keyof typeof DIALOG_SEMANTIC];
export type DialogHeaderProps = {
    children?: React.ReactNode;
    className?: string;
};
export type DialogFooterProps = {
    children?: React.ReactNode;
    classNames?: FooterClassNames;
};
export type DialogBodyProps = {
    children?: React.ReactNode;
    className?: string;
};
export type DialogPropsBase = ModalProps;
export type DialogProps = DialogPropsBase & {
    semantic?: DialogSemanticType;
    iconName?: string;
};
export type BasicDialogProps = DialogProps & {
    heading?: React.ReactNode;
    body?: React.ReactNode;
    confirmText?: string;
    abortText?: string;
    handleConfirm?: (event: React.SyntheticEvent) => unknown;
    handleAbort?: (event: React.SyntheticEvent) => unknown;
};
export declare const DialogHeader: ({ children, className }: DialogHeaderProps) => React.JSX.Element;
export declare const DialogBody: ({ children, className }: DialogBodyProps) => React.JSX.Element;
export declare const DialogFooter: ({ children, classNames }: DialogFooterProps) => React.JSX.Element;
export declare const Dialog: ({ children, isOpen, hideBackdrop, onClose, tapOutsideToClose, iconName, semantic, classNames, ...restDialogProps }: DialogProps) => React.JSX.Element;
export declare const BasicDialog: ({ heading, body, confirmText, abortText, handleConfirm, handleAbort, ...restDialogProps }: BasicDialogProps) => React.JSX.Element;
export {};
//# sourceMappingURL=Dialog.d.ts.map