"use strict";const u=require("../../../../../../../../_virtual/isNodesEquivalent.js"),y=require("../definitions/index.js");Object.defineProperty(u.__exports,"__esModule",{value:!0});u.__exports.default=l;var o=y.__require();function l(t,i){if(typeof t!="object"||typeof i!="object"||t==null||i==null)return t===i;if(t.type!==i.type)return!1;const c=Object.keys(o.NODE_FIELDS[t.type]||t.type),f=o.VISITOR_KEYS[t.type];for(const s of c){const e=t[s],n=i[s];if(typeof e!=typeof n)return!1;if(!(e==null&&n==null)){if(e==null||n==null)return!1;if(Array.isArray(e)){if(!Array.isArray(n)||e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(!l(e[r],n[r]))return!1;continue}if(typeof e=="object"&&!(f!=null&&f.includes(s))){for(const r of Object.keys(e))if(e[r]!==n[r])return!1;continue}if(!l(e,n))return!1}}return!0}
//# sourceMappingURL=isNodesEquivalent.js.map
