import { VueNode as VueNode$1 } from "../_util/type.js";
import { SemanticClassNamesType, SemanticStylesType } from "../_util/hooks/useMergeSemantic.js";
import "../_util/hooks/index.js";
import { IconType, NotificationSemanticClassNames, NotificationSemanticStyles } from "./interface.js";
import * as vue1010 from "vue";

//#region src/notification/PurePanel.d.ts
type PurePanelClassNamesType = SemanticClassNamesType<PurePanelProps, NotificationSemanticClassNames>;
type PurePanelStylesType = SemanticStylesType<PurePanelProps, NotificationSemanticStyles>;
declare function getCloseIcon(prefixCls: string, closeIcon?: VueNode$1): VueNode$1;
interface PureContentProps {
  prefixCls: string;
  icon?: VueNode$1;
  title?: VueNode$1;
  description?: VueNode$1;
  actions?: VueNode$1;
  type?: IconType;
  role?: 'alert' | 'status';
  classes: NotificationSemanticClassNames;
  styles: NotificationSemanticStyles;
}
declare const TypeIcon: Record<IconType, any>;
declare function resolveIconNode(icon: VueNode$1 | undefined, type: IconType | undefined): VueNode$1;
declare function getIconWrapperClassName(prefixCls: string, type: IconType | undefined): string;
declare const PureContent: vue1010.DefineSetupFnComponent<PureContentProps, {}, {}, PureContentProps & {}, vue1010.PublicProps>;
interface PurePanelProps extends Omit<PureContentProps, 'prefixCls' | 'children' | 'classes' | 'styles'> {
  content?: VueNode$1;
  duration?: number | false | null;
  showProgress?: boolean;
  pauseOnHover?: boolean;
  closable?: boolean | ({
    closeIcon?: VueNode$1;
    onClose?: VoidFunction;
  } & Record<string, any>);
  prefixCls?: string;
  classes?: PurePanelClassNamesType;
  styles?: PurePanelStylesType;
  closeIcon?: VueNode$1;
  props?: Record<string, any>;
  onClose?: VoidFunction;
  onClick?: (event: Event) => void;
}
/** @private Internal Component. Do not use in your production. */
declare const PurePanel: vue1010.DefineSetupFnComponent<PurePanelProps, {}, {}, PurePanelProps & {}, vue1010.PublicProps>;
//#endregion
export { PureContent, PureContentProps, PurePanelClassNamesType, PurePanelProps, PurePanelStylesType, TypeIcon, PurePanel as default, getCloseIcon, getIconWrapperClassName, resolveIconNode };