import {
	type DialogCloseButtonCommonProps as AlertDialogCloseButtonCommonProps,
	type DialogCloseButtonOptions as AlertDialogCloseButtonOptions,
	type DialogCloseButtonProps as AlertDialogCloseButtonProps,
	type DialogCloseButtonRenderProps as AlertDialogCloseButtonRenderProps,
	type DialogDescriptionCommonProps as AlertDialogDescriptionCommonProps,
	type DialogDescriptionOptions as AlertDialogDescriptionOptions,
	type DialogDescriptionProps as AlertDialogDescriptionProps,
	type DialogDescriptionRenderProps as AlertDialogDescriptionRenderProps,
	type DialogOverlayCommonProps as AlertDialogOverlayCommonProps,
	type DialogOverlayOptions as AlertDialogOverlayOptions,
	type DialogOverlayProps as AlertDialogOverlayProps,
	type DialogOverlayRenderProps as AlertDialogOverlayRenderProps,
	type DialogPortalProps as AlertDialogPortalProps,
	type DialogRootOptions as AlertDialogRootOptions,
	type DialogRootProps as AlertDialogRootProps,
	type DialogTitleCommonProps as AlertDialogTitleCommonProps,
	type DialogTitleOptions as AlertDialogTitleOptions,
	type DialogTitleProps as AlertDialogTitleProps,
	type DialogTitleRenderProps as AlertDialogTitleRenderProps,
	type DialogTriggerCommonProps as AlertDialogTriggerCommonProps,
	type DialogTriggerOptions as AlertDialogTriggerOptions,
	type DialogTriggerProps as AlertDialogTriggerProps,
	type DialogTriggerRenderProps as AlertDialogTriggerRenderProps,
	CloseButton,
	Description,
	Overlay,
	Portal,
	Root,
	Title,
	Trigger,
} from "../dialog";
import {
	type AlertDialogContentCommonProps,
	type AlertDialogContentOptions,
	type AlertDialogContentProps,
	type AlertDialogContentRenderProps,
	AlertDialogContent as Content,
} from "./alert-dialog-content";

export type {
	AlertDialogCloseButtonOptions,
	AlertDialogCloseButtonCommonProps,
	AlertDialogCloseButtonRenderProps,
	AlertDialogCloseButtonProps,
	AlertDialogContentOptions,
	AlertDialogContentCommonProps,
	AlertDialogContentRenderProps,
	AlertDialogContentProps,
	AlertDialogDescriptionOptions,
	AlertDialogDescriptionCommonProps,
	AlertDialogDescriptionRenderProps,
	AlertDialogDescriptionProps,
	AlertDialogOverlayOptions,
	AlertDialogOverlayCommonProps,
	AlertDialogOverlayRenderProps,
	AlertDialogOverlayProps,
	AlertDialogPortalProps,
	AlertDialogRootOptions,
	AlertDialogRootProps,
	AlertDialogTitleOptions,
	AlertDialogTitleCommonProps,
	AlertDialogTitleRenderProps,
	AlertDialogTitleProps,
	AlertDialogTriggerOptions,
	AlertDialogTriggerCommonProps,
	AlertDialogTriggerRenderProps,
	AlertDialogTriggerProps,
};

export {
	CloseButton,
	Content,
	Description,
	Overlay,
	Portal,
	Root,
	Title,
	Trigger,
};

export const AlertDialog = Object.assign(Root, {
	CloseButton,
	Content,
	Description,
	Overlay,
	Portal,
	Title,
	Trigger,
});
