const person = van.state({name:"seth", age:41}); console.log(Object.hasOwn(person, "rawVal")); /** @type {(obj:T, key:string)=>T} */ const Deep =(obj, key)=> { const proxInner =(context, key)=> new Proxy({}, { get(_, prop) { const path = key+" . "+prop; console.log(path, "accessed!"); const value = context[key]; return proxInner(value, path); } }); const proxOuter = new Proxy({}, { get(_, prop) { return proxInner(obj, prop); }, set(_, prop, val) { obj[prop] = val; } }); return proxOuter; } export default Deep;