[ArrayAssignmentTarget] elements rest [ArrayBinding] elements rest [ArrayExpression] elements [ArrowExpression] isAsync params body [AssignmentExpression] binding expression [AssignmentTargetIdentifier] name [AssignmentTargetProperty] [AssignmentTargetPropertyIdentifier] binding init [AssignmentTargetPropertyProperty] name binding [AssignmentTargetWithDefault] binding init [AwaitExpression] expression [BinaryExpression] left operator right [BindingIdentifier] name [BindingProperty] [BindingPropertyIdentifier] binding init [BindingPropertyProperty] name binding [BindingWithDefault] binding init [Block] statements [BlockStatement] block [BreakStatement] label [CallExpression] callee arguments [CatchClause] binding body [Class] super elements [ClassDeclaration] name super elements [ClassElement] isStatic method [ClassExpression] name super elements [CompoundAssignmentExpression] binding operator expression [ComputedMemberAssignmentTarget] object expression [ComputedMemberExpression] object expression [ComputedPropertyName] expression [ConditionalExpression] test consequent alternate [ContinueStatement] label [DataProperty] name expression [DebuggerStatement] [Directive] rawValue [DoWhileStatement] body test [EmptyStatement] [Export] declaration [ExportAllFrom] moduleSpecifier [ExportDeclaration] [ExportDefault] body [ExportFrom] namedExports moduleSpecifier [ExportFromSpecifier] name exportedName [ExportLocals] namedExports [ExportLocalSpecifier] name exportedName [Expression] [ExpressionStatement] expression [ForAwaitStatement] left right body [ForInStatement] left right body [FormalParameters] items rest [ForOfStatement] left right body [ForStatement] init test update body [Function] isAsync isGenerator params body [FunctionBody] directives statements [FunctionDeclaration] isAsync isGenerator name params body [FunctionExpression] isAsync isGenerator name params body [Getter] name body [IdentifierExpression] name [IfStatement] test consequent alternate [Import] defaultBinding namedImports moduleSpecifier [ImportDeclaration] moduleSpecifier [ImportNamespace] defaultBinding namespaceBinding moduleSpecifier [ImportSpecifier] name binding [IterationStatement] body [LabeledStatement] label body [LiteralBooleanExpression] value [LiteralInfinityExpression] [LiteralNullExpression] [LiteralNumericExpression] value [LiteralRegExpExpression] pattern global ignoreCase multiLine dotAll unicode sticky [LiteralStringExpression] value [MemberAssignmentTarget] object [MemberExpression] object [Method] isAsync isGenerator name params body [MethodDefinition] name body [Module] directives items [NamedObjectProperty] name [NewExpression] callee arguments [NewTargetExpression] [Node] [ObjectAssignmentTarget] properties rest [ObjectBinding] properties rest [ObjectExpression] properties [ObjectProperty] [Program] [PropertyName] [ReturnStatement] expression [Script] directives statements [Setter] name param body [ShorthandProperty] name [SpreadElement] expression [SpreadProperty] expression [Statement] [StaticMemberAssignmentTarget] object property [StaticMemberExpression] object property [StaticPropertyName] value [Super] [SwitchCase] test consequent [SwitchDefault] consequent [SwitchStatement] discriminant cases [SwitchStatementWithDefault] discriminant preDefaultCases defaultCase postDefaultCases [TemplateElement] rawValue [TemplateExpression] tag elements [ThisExpression] [ThrowStatement] expression [TryCatchStatement] body catchClause [TryFinallyStatement] body catchClause finalizer [UnaryExpression] operator operand [UpdateExpression] isPrefix operator operand [VariableDeclaration] kind declarators [VariableDeclarationStatement] declaration [VariableDeclarator] binding init [VariableReference] name [WhileStatement] test body [WithStatement] object body [YieldExpression] expression [YieldGeneratorExpression] expression