{ "type": "Script", "span": { "start": 1, "end": 28, "ctxt": 0 }, "body": [ { "type": "TsInterfaceDeclaration", "span": { "start": 1, "end": 28, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 11, "end": 12, "ctxt": 0 }, "value": "I", "optional": false }, "declare": false, "typeParams": null, "extends": [], "body": { "type": "TsInterfaceBody", "span": { "start": 13, "end": 28, "ctxt": 0 }, "body": [ { "type": "TsMethodSignature", "span": { "start": 17, "end": 26, "ctxt": 0 }, "readonly": false, "key": { "type": "StringLiteral", "span": { "start": 17, "end": 20, "ctxt": 0 }, "value": "G", "raw": "\"G\"" }, "computed": false, "optional": false, "params": [], "typeAnn": null, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 20, "end": 23, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 21, "end": 22, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 21, "end": 22, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null } ] } } ] } } ], "interpreter": null }