{ "type": "File", "start": 0, "end": 47, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 3, "column": 1 } }, "program": { "type": "Program", "start": 0, "end": 47, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 3, "column": 1 } }, "sourceType": "module", "interpreter": null, "body": [ { "type": "InterfaceDeclaration", "start": 0, "end": 47, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 3, "column": 1 } }, "id": { "type": "Identifier", "start": 10, "end": 11, "loc": { "start": { "line": 1, "column": 10 }, "end": { "line": 1, "column": 11 }, "identifierName": "A" }, "name": "A" }, "typeParameters": null, "extends": [], "implements": [], "mixins": [], "body": { "type": "ObjectTypeAnnotation", "start": 12, "end": 47, "loc": { "start": { "line": 1, "column": 12 }, "end": { "line": 3, "column": 1 } }, "callProperties": [], "properties": [ { "type": "ObjectTypeProperty", "start": 16, "end": 44, "loc": { "start": { "line": 2, "column": 2 }, "end": { "line": 2, "column": 30 } }, "key": { "type": "Identifier", "start": 16, "end": 26, "loc": { "start": { "line": 2, "column": 2 }, "end": { "line": 2, "column": 12 }, "identifierName": "@@iterator" }, "name": "@@iterator" }, "static": false, "proto": false, "kind": "init", "method": true, "value": { "type": "FunctionTypeAnnotation", "start": 16, "end": 44, "loc": { "start": { "line": 2, "column": 2 }, "end": { "line": 2, "column": 30 } }, "params": [], "rest": null, "typeParameters": null, "returnType": { "type": "GenericTypeAnnotation", "start": 30, "end": 44, "loc": { "start": { "line": 2, "column": 16 }, "end": { "line": 2, "column": 30 } }, "typeParameters": { "type": "TypeParameterInstantiation", "start": 38, "end": 44, "loc": { "start": { "line": 2, "column": 24 }, "end": { "line": 2, "column": 30 } }, "params": [ { "type": "GenericTypeAnnotation", "start": 39, "end": 43, "loc": { "start": { "line": 2, "column": 25 }, "end": { "line": 2, "column": 29 } }, "typeParameters": null, "id": { "type": "Identifier", "start": 39, "end": 43, "loc": { "start": { "line": 2, "column": 25 }, "end": { "line": 2, "column": 29 }, "identifierName": "File" }, "name": "File" } } ] }, "id": { "type": "Identifier", "start": 30, "end": 38, "loc": { "start": { "line": 2, "column": 16 }, "end": { "line": 2, "column": 24 }, "identifierName": "Iterator" }, "name": "Iterator" } } }, "optional": false } ], "indexers": [], "internalSlots": [], "exact": false } } ], "directives": [] } }