"use strict";const c=require("../../../../../../../../_virtual/getBindingIdentifiers.js");require("../validators/generated/index.js");const f=require("../../../../../../../../_virtual/index35.js");Object.defineProperty(c.__exports,"__esModule",{value:!0});c.__exports.default=o;var t=f.__exports;function o(l,p,d){const i=[].concat(l),r=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const s=o.keys[e.type];if((0,t.isIdentifier)(e)){p?(r[e.name]=r[e.name]||[]).push(e):r[e.name]=e;continue}if((0,t.isExportDeclaration)(e)&&!(0,t.isExportAllDeclaration)(e)){(0,t.isDeclaration)(e.declaration)&&i.push(e.declaration);continue}if(d){if((0,t.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,t.isFunctionExpression)(e))continue}if(s)for(let a=0;a<s.length;a++){const u=s[a],n=e[u];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}return r}o.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]};
//# sourceMappingURL=getBindingIdentifiers.js.map
