{ "type": "File", "start": 0, "end": 48, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 48 } }, "program": { "type": "Program", "start": 0, "end": 48, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 48 } }, "sourceType": "module", "body": [ { "type": "VariableDeclaration", "start": 0, "end": 48, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 48 } }, "declarations": [ { "type": "VariableDeclarator", "start": 6, "end": 47, "loc": { "start": { "line": 1, "column": 6 }, "end": { "line": 1, "column": 47 } }, "id": { "type": "Identifier", "start": 6, "end": 8, "loc": { "start": { "line": 1, "column": 6 }, "end": { "line": 1, "column": 8 }, "identifierName": "fn" }, "name": "fn" }, "init": { "type": "ArrowFunctionExpression", "start": 11, "end": 47, "loc": { "start": { "line": 1, "column": 11 }, "end": { "line": 1, "column": 47 } }, "returnType": { "type": "TypeAnnotation", "start": 26, "end": 41, "loc": { "start": { "line": 1, "column": 26 }, "end": { "line": 1, "column": 41 } }, "typeAnnotation": { "type": "GenericTypeAnnotation", "start": 28, "end": 41, "loc": { "start": { "line": 1, "column": 28 }, "end": { "line": 1, "column": 41 } }, "typeParameters": { "type": "TypeParameterInstantiation", "start": 35, "end": 41, "loc": { "start": { "line": 1, "column": 35 }, "end": { "line": 1, "column": 41 } }, "params": [ { "type": "VoidTypeAnnotation", "start": 36, "end": 40, "loc": { "start": { "line": 1, "column": 36 }, "end": { "line": 1, "column": 40 } } } ] }, "id": { "type": "Identifier", "start": 28, "end": 35, "loc": { "start": { "line": 1, "column": 28 }, "end": { "line": 1, "column": 35 }, "identifierName": "Promise" }, "name": "Promise" } } }, "id": null, "generator": false, "expression": false, "async": true, "params": [ { "type": "Identifier", "start": 18, "end": 25, "loc": { "start": { "line": 1, "column": 18 }, "end": { "line": 1, "column": 25 }, "identifierName": "a" }, "name": "a", "optional": true, "typeAnnotation": { "type": "TypeAnnotation", "start": 20, "end": 25, "loc": { "start": { "line": 1, "column": 20 }, "end": { "line": 1, "column": 25 } }, "typeAnnotation": { "type": "AnyTypeAnnotation", "start": 22, "end": 25, "loc": { "start": { "line": 1, "column": 22 }, "end": { "line": 1, "column": 25 } } } } } ], "body": { "type": "BlockStatement", "start": 45, "end": 47, "loc": { "start": { "line": 1, "column": 45 }, "end": { "line": 1, "column": 47 } }, "body": [], "directives": [] } } } ], "kind": "const" } ], "directives": [] } }