{ "type": "Script", "span": { "start": 0, "end": 30, "ctxt": 0 }, "body": [ { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 6, "end": 7, "ctxt": 0 }, "value": "C", "optional": false }, "declare": false, "span": { "start": 0, "end": 30, "ctxt": 0 }, "decorators": [], "body": [], "superClass": null, "isAbstract": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 7, "end": 26, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 8, "end": 25, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 8, "end": 9, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 18, "end": 25, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 18, "end": 22, "ctxt": 0 }, "value": "List", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 22, "end": 25, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 23, "end": 24, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 23, "end": 24, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } ] } }, "default": null } ] }, "superTypeParams": null, "implements": [] } ], "interpreter": null }