{ "type": "File", "start":0,"end":67,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}}, "program": { "type": "Program", "start":0,"end":67,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}}, "sourceType": "module", "interpreter": null, "body": [ { "type": "FunctionDeclaration", "start":0,"end":67,"loc":{"start":{"line":1,"column":0},"end":{"line":3,"column":1}}, "id": { "type": "Identifier", "start":9,"end":12,"loc":{"start":{"line":1,"column":9},"end":{"line":1,"column":12},"identifierName":"foo"}, "name": "foo" }, "generator": false, "async": false, "params": [], "predicate": null, "returnType": { "type": "TypeAnnotation", "start":14,"end":44,"loc":{"start":{"line":1,"column":14},"end":{"line":1,"column":44}}, "typeAnnotation": { "type": "ObjectTypeAnnotation", "start":16,"end":44,"loc":{"start":{"line":1,"column":16},"end":{"line":1,"column":44}}, "callProperties": [], "properties": [ { "type": "ObjectTypeProperty", "start":18,"end":42,"loc":{"start":{"line":1,"column":18},"end":{"line":1,"column":42}}, "key": { "type": "Identifier", "start":18,"end":28,"loc":{"start":{"line":1,"column":18},"end":{"line":1,"column":28},"identifierName":"@@iterator"}, "name": "@@iterator" }, "static": false, "proto": false, "kind": "init", "method": false, "value": { "type": "FunctionTypeAnnotation", "start":30,"end":42,"loc":{"start":{"line":1,"column":30},"end":{"line":1,"column":42}}, "params": [], "rest": null, "returnType": { "type": "StringTypeAnnotation", "start":36,"end":42,"loc":{"start":{"line":1,"column":36},"end":{"line":1,"column":42}} }, "typeParameters": null }, "variance": null, "optional": false } ], "indexers": [], "internalSlots": [], "exact": false, "inexact": false } }, "body": { "type": "BlockStatement", "start":45,"end":67,"loc":{"start":{"line":1,"column":45},"end":{"line":3,"column":1}}, "body": [ { "type": "ReturnStatement", "start":49,"end":65,"loc":{"start":{"line":2,"column":2},"end":{"line":2,"column":18}}, "argument": { "type": "TypeCastExpression", "start":57,"end":63,"loc":{"start":{"line":2,"column":10},"end":{"line":2,"column":16}}, "expression": { "type": "NumericLiteral", "start":57,"end":58,"loc":{"start":{"line":2,"column":10},"end":{"line":2,"column":11}}, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 }, "typeAnnotation": { "type": "TypeAnnotation", "start":58,"end":63,"loc":{"start":{"line":2,"column":11},"end":{"line":2,"column":16}}, "typeAnnotation": { "type": "AnyTypeAnnotation", "start":60,"end":63,"loc":{"start":{"line":2,"column":13},"end":{"line":2,"column":16}} } }, "extra": { "parenthesized": true, "parenStart": 56 } } } ], "directives": [] } } ], "directives": [] } }