import { FC, HTMLProps, RefObject, ReactElement, ReactNode } from "react";
import { TransitionElement } from "./animation";
import { DialogCloseEventHandler } from "../types";
import { EbayDialogHeaderProps } from "./dialog-header";
export type WindowType = "compact";
type ClassPrefix = "fullscreen-dialog" | "lightbox-dialog" | "panel-dialog" | "drawer-dialog" | "toast-dialog" | "alert-dialog" | "confirm-dialog" | "snackbar-dialog";
type ButtonPosition = "top" | "right" | "bottom" | "left" | "hidden";
export interface DialogBaseProps extends HTMLProps {
baseEl?: "div" | "span" | "aside";
open?: boolean;
classPrefix?: ClassPrefix;
windowClass?: string;
windowType?: WindowType;
header?: ReactElement;
footer?: ReactElement;
actions?: ReactElement;
isModal?: boolean;
top?: ReactElement;
buttonPosition?: ButtonPosition;
ariaLabelledby?: string;
a11yCloseText?: string;
onOpen?: () => void;
onCloseBtnClick?: DialogCloseEventHandler;
onBackgroundClick?: DialogCloseEventHandler;
mainId?: string;
ignoreEscape?: boolean;
closeButton?: ReactElement;
previousButton?: ReactElement;
focus?: RefObject;
animated?: boolean;
closeButtonClass?: string;
transitionElement?: TransitionElement;
children?: ReactNode;
}
export declare const DialogBase: FC>;
export default DialogBase;
//# sourceMappingURL=dialogBase.d.ts.map