{
  "ArrayExpression": {
    "elements": null
  },

  "ArrowFunctionExpression": {
    "params": null,
    "body": null
  },

  "AssignmentExpression": {
    "operator": null,
    "left": null,
    "right": null
  },

  "BinaryExpression": {
    "operator": null,
    "left": null,
    "right": null
  },

  "BlockStatement": {
    "body": null
  },

  "CallExpression": {
    "callee": null,
    "arguments": null
  },

  "ConditionalExpression": {
    "test": null,
    "consequent": null,
    "alternate": null
  },

  "ExpressionStatement": {
    "expression": null
  },

  "File": {
    "program": null,
    "comments": null,
    "tokens": null
  },

  "FunctionExpression": {
    "id": null,
    "params": null,
    "body": null,
    "generator": false,
    "async": false
  },

  "FunctionDeclaration": {
    "id": null,
    "params": null,
    "body": null,
    "generator": false,
    "async": false
  },

  "GenericTypeAnnotation": {
    "id": null,
    "typeParameters": null
  },

  "Identifier": {
    "name": null
  },

  "IfStatement": {
    "test": null,
    "consequent": null,
    "alternate": null
  },

  "ImportDeclaration": {
    "specifiers": null,
    "source": null
  },

  "ImportSpecifier": {
    "local": null,
    "imported": null
  },

  "LabeledStatement": {
    "label": null,
    "body": null
  },

  "Literal": {
    "value": null
  },

  "LogicalExpression": {
    "operator": null,
    "left": null,
    "right": null
  },

  "MemberExpression": {
    "object": null,
    "property": null,
    "computed": false
  },

  "MethodDefinition": {
    "key": null,
    "value": null,
    "kind": "method",
    "computed": false,
    "static": false
  },

  "NewExpression": {
    "callee": null,
    "arguments": null
  },

  "ObjectExpression": {
    "properties": null
  },

  "Program": {
    "body": null
  },

  "Property": {
    "kind": null,
    "key": null,
    "value": null,
    "computed": false
  },

  "ReturnStatement": {
    "argument": null
  },

  "SequenceExpression": {
    "expressions": null
  },

  "TemplateLiteral": {
    "quasis": null,
    "expressions": null
  },

  "ThrowExpression": {
    "argument": null
  },

  "UnaryExpression": {
    "operator": null,
    "argument": null,
    "prefix": null
  },

  "VariableDeclaration": {
    "kind": null,
    "declarations": null
  },

  "VariableDeclarator": {
    "id": null,
    "init": null
  },

  "WithStatement": {
    "object": null,
    "body": null
  },

  "YieldExpression": {
    "argument": null,
    "delegate": null
  }
}
