let node = root;
for (const segment of path) {
if (node.type !== 'object' || !Array.isArray(node.children)) {
return undefined;
}
for (const propertyNode of node.children) {
if (Array.isArray(propertyNode.children) && propertyNode.children[0].value === segment) {
node = propertyNode.children[1];