{ "type": "File", "start": 0, "end": 53, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 53 } }, "program": { "type": "Program", "start": 0, "end": 53, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 53 } }, "sourceType": "module", "body": [ { "type": "VariableDeclaration", "start": 0, "end": 53, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 53 } }, "declarations": [ { "type": "VariableDeclarator", "start": 4, "end": 52, "loc": { "start": { "line": 1, "column": 4 }, "end": { "line": 1, "column": 52 } }, "id": { "type": "Identifier", "start": 4, "end": 5, "loc": { "start": { "line": 1, "column": 4 }, "end": { "line": 1, "column": 5 }, "identifierName": "f" }, "name": "f" }, "init": { "type": "ArrowFunctionExpression", "start": 8, "end": 52, "loc": { "start": { "line": 1, "column": 8 }, "end": { "line": 1, "column": 52 } }, "predicate": { "type": "InferredPredicate", "start": 20, "end": 27, "loc": { "start": { "line": 1, "column": 20 }, "end": { "line": 1, "column": 27 } } }, "returnType": null, "id": null, "generator": false, "expression": true, "async": false, "params": [ { "type": "Identifier", "start": 9, "end": 17, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 17 }, "identifierName": "x" }, "name": "x", "typeAnnotation": { "type": "TypeAnnotation", "start": 10, "end": 17, "loc": { "start": { "line": 1, "column": 10 }, "end": { "line": 1, "column": 17 } }, "typeAnnotation": { "type": "MixedTypeAnnotation", "start": 12, "end": 17, "loc": { "start": { "line": 1, "column": 12 }, "end": { "line": 1, "column": 17 } } } } } ], "body": { "type": "BinaryExpression", "start": 31, "end": 52, "loc": { "start": { "line": 1, "column": 31 }, "end": { "line": 1, "column": 52 } }, "left": { "type": "UnaryExpression", "start": 31, "end": 39, "loc": { "start": { "line": 1, "column": 31 }, "end": { "line": 1, "column": 39 } }, "operator": "typeof", "prefix": true, "argument": { "type": "Identifier", "start": 38, "end": 39, "loc": { "start": { "line": 1, "column": 38 }, "end": { "line": 1, "column": 39 }, "identifierName": "x" }, "name": "x" }, "extra": { "parenthesizedArgument": false } }, "operator": "===", "right": { "type": "StringLiteral", "start": 44, "end": 52, "loc": { "start": { "line": 1, "column": 44 }, "end": { "line": 1, "column": 52 } }, "extra": { "rawValue": "string", "raw": "\"string\"" }, "value": "string" } } } } ], "kind": "var" } ], "directives": [] } }