{ "type": "Script", "span": { "start": 0, "end": 1128, "ctxt": 0 }, "body": [ { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 6, "end": 10, "ctxt": 0 }, "value": "Base", "optional": false }, "declare": false, "span": { "start": 0, "end": 27, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 13, "end": 25, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 13, "end": 16, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 16, "end": 24, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 18, "end": 24, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 34, "end": 41, "ctxt": 0 }, "value": "Derived", "optional": false }, "declare": false, "span": { "start": 28, "end": 71, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 57, "end": 69, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 57, "end": 60, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 60, "end": 68, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 62, "end": 68, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 50, "end": 54, "ctxt": 0 }, "value": "Base", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 78, "end": 86, "ctxt": 0 }, "value": "Derived2", "optional": false }, "declare": false, "span": { "start": 72, "end": 119, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 105, "end": 117, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 105, "end": 108, "ctxt": 0 }, "value": "baz", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 108, "end": 116, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 110, "end": 116, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 95, "end": 102, "ctxt": 0 }, "value": "Derived", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 311, "end": 312, "ctxt": 0 }, "value": "A", "optional": false }, "declare": false, "span": { "start": 305, "end": 346, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 319, "end": 329, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 319, "end": 322, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 322, "end": 328, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 324, "end": 328, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 324, "end": 328, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 334, "end": 344, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 334, "end": 337, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 337, "end": 343, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 339, "end": 343, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 339, "end": 343, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 354, "end": 355, "ctxt": 0 }, "value": "B", "optional": false }, "declare": false, "span": { "start": 348, "end": 419, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 372, "end": 385, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 372, "end": 375, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 375, "end": 384, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 377, "end": 384, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 377, "end": 384, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 396, "end": 408, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 396, "end": 399, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 399, "end": 407, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 401, "end": 407, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 364, "end": 365, "ctxt": 0 }, "value": "A", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 427, "end": 429, "ctxt": 0 }, "value": "A2", "optional": false }, "declare": false, "span": { "start": 421, "end": 462, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 436, "end": 444, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 436, "end": 437, "ctxt": 0 }, "value": 1.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 437, "end": 443, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 439, "end": 443, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 439, "end": 443, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 450, "end": 460, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 450, "end": 453, "ctxt": 0 }, "value": 2.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 453, "end": 459, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 455, "end": 459, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 455, "end": 459, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 470, "end": 472, "ctxt": 0 }, "value": "B2", "optional": false }, "declare": false, "span": { "start": 464, "end": 533, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 490, "end": 501, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 490, "end": 491, "ctxt": 0 }, "value": 1.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 491, "end": 500, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 493, "end": 500, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 493, "end": 500, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 512, "end": 522, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 512, "end": 513, "ctxt": 0 }, "value": 2.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 513, "end": 521, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 515, "end": 521, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 481, "end": 483, "ctxt": 0 }, "value": "A2", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 541, "end": 543, "ctxt": 0 }, "value": "A3", "optional": false }, "declare": false, "span": { "start": 535, "end": 579, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 550, "end": 560, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 550, "end": 553, "ctxt": 0 }, "value": "1", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 553, "end": 559, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 555, "end": 559, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 555, "end": 559, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 565, "end": 577, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 565, "end": 570, "ctxt": 0 }, "value": "2.0", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 570, "end": 576, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 572, "end": 576, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 572, "end": 576, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 587, "end": 589, "ctxt": 0 }, "value": "B3", "optional": false }, "declare": false, "span": { "start": 581, "end": 656, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 607, "end": 620, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 607, "end": 610, "ctxt": 0 }, "value": "1", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 610, "end": 619, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 612, "end": 619, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 612, "end": 619, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 631, "end": 645, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 631, "end": 636, "ctxt": 0 }, "value": "2.0", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 636, "end": 644, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 638, "end": 644, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 598, "end": 600, "ctxt": 0 }, "value": "A3", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "TsModuleDeclaration", "span": { "start": 658, "end": 1128, "ctxt": 0 }, "declare": false, "global": false, "id": { "type": "Identifier", "span": { "start": 665, "end": 674, "ctxt": 0 }, "value": "TwoLevels", "optional": false }, "body": { "type": "TsModuleBlock", "span": { "start": 675, "end": 1128, "ctxt": 0 }, "body": [ { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 687, "end": 688, "ctxt": 0 }, "value": "A", "optional": false }, "declare": false, "span": { "start": 681, "end": 734, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 699, "end": 709, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 699, "end": 702, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 702, "end": 708, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 704, "end": 708, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 704, "end": 708, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 718, "end": 728, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 718, "end": 721, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 721, "end": 727, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 723, "end": 727, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 723, "end": 727, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 746, "end": 747, "ctxt": 0 }, "value": "B", "optional": false }, "declare": false, "span": { "start": 740, "end": 824, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 768, "end": 782, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 768, "end": 771, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 771, "end": 781, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 773, "end": 781, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 773, "end": 781, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 797, "end": 809, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 797, "end": 800, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 800, "end": 808, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 802, "end": 808, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 756, "end": 757, "ctxt": 0 }, "value": "A", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 836, "end": 838, "ctxt": 0 }, "value": "A2", "optional": false }, "declare": false, "span": { "start": 830, "end": 882, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 849, "end": 857, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 849, "end": 850, "ctxt": 0 }, "value": 1.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 850, "end": 856, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 852, "end": 856, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 852, "end": 856, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 866, "end": 876, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 866, "end": 869, "ctxt": 0 }, "value": 2.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 869, "end": 875, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 871, "end": 875, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 871, "end": 875, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 894, "end": 896, "ctxt": 0 }, "value": "B2", "optional": false }, "declare": false, "span": { "start": 888, "end": 970, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 918, "end": 930, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 918, "end": 919, "ctxt": 0 }, "value": 1.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 919, "end": 929, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 921, "end": 929, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 921, "end": 929, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 945, "end": 955, "ctxt": 0 }, "key": { "type": "NumericLiteral", "span": { "start": 945, "end": 946, "ctxt": 0 }, "value": 2.0 }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 946, "end": 954, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 948, "end": 954, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 905, "end": 907, "ctxt": 0 }, "value": "A2", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 982, "end": 984, "ctxt": 0 }, "value": "A3", "optional": false }, "declare": false, "span": { "start": 976, "end": 1032, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 995, "end": 1005, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 995, "end": 998, "ctxt": 0 }, "value": "1", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 998, "end": 1004, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1000, "end": 1004, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1000, "end": 1004, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 1014, "end": 1026, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 1014, "end": 1019, "ctxt": 0 }, "value": "2.0", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1019, "end": 1025, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1021, "end": 1025, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1021, "end": 1025, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1044, "end": 1046, "ctxt": 0 }, "value": "B3", "optional": false }, "declare": false, "span": { "start": 1038, "end": 1126, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 1068, "end": 1082, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 1068, "end": 1071, "ctxt": 0 }, "value": "1", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1071, "end": 1081, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1073, "end": 1081, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1073, "end": 1081, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false }, { "type": "ClassProperty", "span": { "start": 1097, "end": 1111, "ctxt": 0 }, "key": { "type": "StringLiteral", "span": { "start": 1097, "end": 1102, "ctxt": 0 }, "value": "2.0", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1102, "end": 1110, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1104, "end": 1110, "ctxt": 0 }, "kind": "string" } }, "isStatic": false, "decorators": [], "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false, "readonly": false, "declare": false, "definite": false } ], "superClass": { "type": "Identifier", "span": { "start": 1055, "end": 1057, "ctxt": 0 }, "value": "A3", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] } ] } } ], "interpreter": null }