import{computed as e,defineComponent as t,inject as n,provide as r,shallowRef as i}from"vue";var a=Symbol(`TreeContextKey`),o=t({compatConfig:{MODE:3},name:`TreeContext`,props:{value:{type:Object}},setup(t,{slots:n}){return r(a,e(()=>t.value)),()=>n.default?.()}}),s=()=>n(a,e(()=>({}))),c=Symbol(`KeysStateKey`),l=e=>{r(c,e)},u=()=>n(c,{expandedKeys:i([]),selectedKeys:i([]),loadedKeys:i([]),loadingKeys:i([]),checkedKeys:i([]),halfCheckedKeys:i([]),expandedKeysSet:e(()=>new Set),selectedKeysSet:e(()=>new Set),loadedKeysSet:e(()=>new Set),loadingKeysSet:e(()=>new Set),checkedKeysSet:e(()=>new Set),halfCheckedKeysSet:e(()=>new Set),flattenNodes:i([])});export{o as TreeContext,u as useInjectKeysState,s as useInjectTreeContext,l as useProvideKeysState};