1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
| module.exports = {
| ArrayExpression: ['type', 'elements'],
| ArrayPattern: ['type', 'elements'],
| ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'],
| AssignmentExpression: ['type', 'operator', 'left', 'right'],
| AssignmentPattern: ['type', 'left', 'right'],
| AwaitExpression: ['type', 'argument'],
| BinaryExpression: ['type', 'operator', 'left', 'right'],
| BlockStatement: ['type', 'body'],
| BreakStatement: ['type', 'label'],
| CallExpression: ['type', 'callee', 'arguments'],
| CatchClause: ['type', 'param', 'guard', 'body'],
| ClassBody: ['type', 'body'],
| ClassDeclaration: ['type', 'id', 'superClass', 'body'],
| ClassExpression: ['type', 'id', 'superClass', 'body'],
| ConditionalExpression: ['type', 'test', 'consequent', 'alternate'],
| ContinueStatement: ['type', 'label'],
| DebuggerStatement: ['type'],
| DoWhileStatement: ['type', 'body', 'test'],
| EmptyStatement: ['type'],
| ExportAllDeclaration: ['type', 'source'],
| ExportDefaultDeclaration: ['type', 'declaration'],
| ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'],
| ExportSpecifier: ['type', 'exported', 'local'],
| ExpressionStatement: ['type', 'expression'],
| ForInStatement: ['type', 'left', 'right', 'body'],
| ForOfStatement: ['type', 'left', 'right', 'body', 'await'],
| ForStatement: ['type', 'init', 'test', 'update', 'body'],
| FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'],
| FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'],
| Identifier: ['type', 'name'],
| IfStatement: ['type', 'test', 'consequent', 'alternate'],
| ImportDeclaration: ['type', 'specifiers', 'source'],
| ImportDefaultSpecifier: ['type', 'local'],
| ImportNamespaceSpecifier: ['type', 'local'],
| ImportSpecifier: ['type', 'imported', 'local'],
| LabeledStatement: ['type', 'label', 'body'],
| Literal: ['type', 'value', 'regex'],
| LogicalExpression: ['type', 'operator', 'left', 'right'],
| MemberExpression: ['type', 'object', 'property', 'computed'],
| MetaProperty: ['type', 'meta', 'property'],
| MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'],
| NewExpression: ['type', 'callee', 'arguments'],
| ObjectExpression: ['type', 'properties'],
| ObjectPattern: ['type', 'properties'],
| Program: ['type', 'body', 'sourceType'],
| Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'],
| RestElement: ['type', 'argument'],
| ReturnStatement: ['type', 'argument'],
| SequenceExpression: ['type', 'expressions'],
| SpreadElement: ['type', 'argument'],
| Super: ['type'],
| SwitchCase: ['type', 'test', 'consequent'],
| SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'],
| TaggedTemplateExpression: ['type', 'tag', 'quasi'],
| TemplateElement: ['type', 'tail', 'value'],
| TemplateLiteral: ['type', 'quasis', 'expressions'],
| ThisExpression: ['type'],
| ThrowStatement: ['type', 'argument'],
| TryStatement: ['type', 'block', 'handler', 'finalizer'],
| UnaryExpression: ['type', 'operator', 'prefix', 'argument'],
| UpdateExpression: ['type', 'operator', 'argument', 'prefix'],
| VariableDeclaration: ['type', 'declarations', 'kind'],
| VariableDeclarator: ['type', 'id', 'init'],
| WhileStatement: ['type', 'test', 'body'],
| WithStatement: ['type', 'object', 'body'],
| YieldExpression: ['type', 'argument', 'delegate']
| };
|
|