import{objectType as e}from"../_util/type.mjs";import t from"../_util/classNames.mjs";import n from"../_util/props-util/initDefaultProps.mjs";import r from"../config-provider/hooks/useConfigInject.mjs";import i from"../message/useMessage.mjs";import a from"../notification/useNotification.mjs";import o from"../modal/useModal/index.mjs";import{useInjectAppConfigContext as s,useInjectAppContext as c,useProvideAppConfigContext as l,useProvideAppContext as u}from"./context.mjs";import d from"./style/index.mjs";import{computed as f,createVNode as p,defineComponent as m}from"vue";var h=()=>({rootClassName:String,message:e(),notification:e()}),g=()=>c(),_=m({name:`AApp`,props:n(h(),{}),setup(e,{slots:n}){let{prefixCls:c}=r(`app`,e),[m,h]=d(c),g=f(()=>t(h.value,c.value,e.rootClassName)),_=s(),v=f(()=>({message:{..._.message,...e.message},notification:{..._.notification,...e.notification}}));l(v.value);let[y,b]=i(v.value.message),[x,S]=a(v.value.notification),[C,w]=o();return u(f(()=>({message:y,notification:x,modal:C})).value),()=>m(p(`div`,{class:g.value},[w(),b(),S(),n.default?.()]))}});_.useApp=g,_.install=function(e){e.component(_.name,_)};export{h as AppProps,_ as default};