{ "ArrayExpression": ["elements"], "ArrayPattern": ["elements"], "ArrowFunctionExpression": ["params", "defaults", "rest", "body"], "AssignmentExpression": ["left", "right"], "AwaitExpression": ["argument"], "BinaryExpression": ["left", "right"], "BlockStatement": ["body"], "BreakStatement": ["label"], "CallExpression": ["callee", "arguments"], "CatchClause": ["param", "body"], "ClassBody": ["body"], "ClassDeclaration": ["id", "body", "superClass"], "ClassExpression": ["id", "body", "superClass"], "ClassProperty": ["key", "value"], "ComprehensionBlock": ["left", "right", "body"], "ComprehensionExpression": ["filter", "blocks", "body"], "ConditionalExpression": ["test", "consequent", "alternate"], "ContinueStatement": ["label"], "DebuggerStatement": [], "DoWhileStatement": ["body", "test"], "EmptyStatement": [], "ExportDeclaration": ["declaration", "specifiers", "source"], "ExportBatchSpecifier": [], "ExportSpecifier": ["id", "name"], "ExpressionStatement": ["expression"], "File": ["program"], "ForInStatement": ["left", "right", "body"], "ForOfStatement": ["left", "right", "body"], "ForStatement": ["init", "test", "update", "body"], "FunctionDeclaration": ["id", "params", "defaults", "rest", "body"], "FunctionExpression": ["id", "params", "defaults", "rest", "body"], "Identifier": [], "IfStatement": ["test", "consequent", "alternate"], "ImportDeclaration": ["specifiers", "source"], "ImportDefaultSpecifier": ["id"], "ImportNamespaceSpecifier": ["id"], "ImportSpecifier": ["id", "name"], "LabeledStatement": ["label", "body"], "Literal": [], "LogicalExpression": ["left", "right"], "MemberExpression": ["object", "property"], "MethodDefinition": ["key", "value"], "ModuleSpecifier": [], "NewExpression": ["callee", "arguments"], "ObjectExpression": ["properties"], "ObjectPattern": ["properties"], "ObjectTypeAnnotation": ["properties"], "OptionalParameter": ["id"], "ParametricTypeAnnotation": ["params"], "ParametricallyTypedIdentifier": [], "Program": ["body"], "Property": ["key", "value"], "ReturnStatement": ["argument"], "SequenceExpression": ["expressions"], "SpreadElement": ["argument"], "SpreadProperty": ["argument"], "SwitchCase": ["test", "consequent"], "SwitchStatement": ["discriminant", "cases"], "TaggedTemplateExpression": ["tag", "quasi"], "TemplateElement": [], "TemplateLiteral": ["quasis", "expressions"], "ThisExpression": [], "ThrowStatement": ["argument"], "TryStatement": ["block", "handlers", "handler", "guardedHandlers", "finalizer"], "TypeAnnotatedIdentifier": ["id", "annotation"], "TypeAnnotation": ["id", "params", "returnType", "parametricType"], "UnaryExpression": ["argument"], "UpdateExpression": ["argument"], "VariableDeclaration": ["declarations"], "VariableDeclarator": ["id", "init"], "VoidTypeAnnotation": [], "WhileStatement": ["test", "body"], "WithStatement": ["object", "body"], "YieldExpression": ["argument"] }