{ "type": "Script", "span": { "start": 103, "end": 6331, "ctxt": 0 }, "body": [ { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 109, "end": 113, "ctxt": 0 }, "value": "Base", "optional": false }, "declare": false, "span": { "start": 103, "end": 130, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 116, "end": 128, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 116, "end": 119, "ctxt": 0 }, "value": "foo", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 119, "end": 127, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 121, "end": 127, "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": 137, "end": 144, "ctxt": 0 }, "value": "Derived", "optional": false }, "declare": false, "span": { "start": 131, "end": 174, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 160, "end": 172, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 160, "end": 163, "ctxt": 0 }, "value": "bar", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 163, "end": 171, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 165, "end": 171, "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": 153, "end": 157, "ctxt": 0 }, "value": "Base", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 181, "end": 189, "ctxt": 0 }, "value": "Derived2", "optional": false }, "declare": false, "span": { "start": 175, "end": 222, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 208, "end": 220, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 208, "end": 211, "ctxt": 0 }, "value": "baz", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 211, "end": 219, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 213, "end": 219, "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": 198, "end": 205, "ctxt": 0 }, "value": "Derived", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 229, "end": 241, "ctxt": 0 }, "value": "OtherDerived", "optional": false }, "declare": false, "span": { "start": 223, "end": 272, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassProperty", "span": { "start": 257, "end": 270, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 257, "end": 261, "ctxt": 0 }, "value": "bing", "optional": false }, "value": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 261, "end": 269, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 263, "end": 269, "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": 250, "end": 254, "ctxt": 0 }, "value": "Base", "optional": false }, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 291, "end": 295, "ctxt": 0 }, "value": "foo1", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 296, "end": 326, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 296, "end": 326, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 297, "end": 326, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 299, "end": 326, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 304, "end": 313, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 305, "end": 313, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 307, "end": 313, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 315, "end": 326, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 318, "end": 326, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 318, "end": 324, "ctxt": 0 }, "kind": "number" } } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 274, "end": 338, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 327, "end": 337, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 329, "end": 337, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 336, "end": 337, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 356, "end": 360, "ctxt": 0 }, "value": "foo1", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 361, "end": 367, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 361, "end": 367, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 362, "end": 367, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 364, "end": 367, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 339, "end": 374, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 368, "end": 373, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 370, "end": 373, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 393, "end": 397, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 398, "end": 428, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 398, "end": 428, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 399, "end": 428, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 401, "end": 428, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 406, "end": 415, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 407, "end": 415, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 409, "end": 415, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 417, "end": 428, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 420, "end": 428, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 420, "end": 426, "ctxt": 0 }, "kind": "string" } } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 376, "end": 440, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 429, "end": 439, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 431, "end": 439, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 438, "end": 439, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 458, "end": 462, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 463, "end": 469, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 463, "end": 469, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 464, "end": 469, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 466, "end": 469, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 441, "end": 476, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 470, "end": 475, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 472, "end": 475, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 495, "end": 499, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 500, "end": 526, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 500, "end": 526, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 501, "end": 526, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 503, "end": 526, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 508, "end": 517, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 509, "end": 517, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 511, "end": 517, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 519, "end": 526, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 522, "end": 526, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 478, "end": 538, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 527, "end": 537, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 529, "end": 537, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 536, "end": 537, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 556, "end": 560, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 561, "end": 567, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 561, "end": 567, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 562, "end": 567, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 564, "end": 567, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 539, "end": 574, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 568, "end": 573, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 570, "end": 573, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 593, "end": 597, "ctxt": 0 }, "value": "foo4", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 598, "end": 637, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 598, "end": 637, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 599, "end": 637, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 601, "end": 637, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 606, "end": 615, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 607, "end": 615, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 609, "end": 615, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 617, "end": 626, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 618, "end": 626, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 620, "end": 626, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 628, "end": 637, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 631, "end": 637, "ctxt": 0 }, "kind": "string" } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 576, "end": 649, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 638, "end": 648, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 640, "end": 648, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 647, "end": 648, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 667, "end": 671, "ctxt": 0 }, "value": "foo4", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 672, "end": 678, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 672, "end": 678, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 673, "end": 678, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 675, "end": 678, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 650, "end": 685, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 679, "end": 684, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 681, "end": 684, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 704, "end": 708, "ctxt": 0 }, "value": "foo5", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 709, "end": 758, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 709, "end": 758, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 710, "end": 758, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 712, "end": 758, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 717, "end": 747, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 718, "end": 747, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 720, "end": 747, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 725, "end": 736, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 728, "end": 736, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 730, "end": 736, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 738, "end": 747, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 741, "end": 747, "ctxt": 0 }, "kind": "number" } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 749, "end": 758, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 752, "end": 758, "ctxt": 0 }, "kind": "string" } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 687, "end": 770, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 759, "end": 769, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 761, "end": 769, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 768, "end": 769, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 788, "end": 792, "ctxt": 0 }, "value": "foo5", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 793, "end": 799, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 793, "end": 799, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 794, "end": 799, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 796, "end": 799, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 771, "end": 806, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 800, "end": 805, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 802, "end": 805, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 825, "end": 829, "ctxt": 0 }, "value": "foo6", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 830, "end": 876, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 830, "end": 876, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 831, "end": 876, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 833, "end": 876, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 838, "end": 867, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 839, "end": 867, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 841, "end": 867, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 846, "end": 855, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 849, "end": 855, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 851, "end": 855, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 851, "end": 855, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 857, "end": 867, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 860, "end": 867, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 860, "end": 867, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 869, "end": 876, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 872, "end": 876, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 872, "end": 876, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 808, "end": 888, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 877, "end": 887, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 879, "end": 887, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 886, "end": 887, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 906, "end": 910, "ctxt": 0 }, "value": "foo6", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 911, "end": 917, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 911, "end": 917, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 912, "end": 917, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 914, "end": 917, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 889, "end": 924, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 918, "end": 923, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 920, "end": 923, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 943, "end": 947, "ctxt": 0 }, "value": "foo7", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 948, "end": 1014, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 948, "end": 1014, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 949, "end": 1014, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 951, "end": 1014, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 956, "end": 985, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 957, "end": 985, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 959, "end": 985, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 964, "end": 973, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 967, "end": 973, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 969, "end": 973, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 969, "end": 973, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 975, "end": 985, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 978, "end": 985, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 978, "end": 985, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 987, "end": 1014, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 990, "end": 1014, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 995, "end": 1002, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 996, "end": 1002, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 998, "end": 1002, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 998, "end": 1002, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1004, "end": 1014, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1007, "end": 1014, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1007, "end": 1014, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 926, "end": 1026, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1015, "end": 1025, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1017, "end": 1025, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1024, "end": 1025, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1044, "end": 1048, "ctxt": 0 }, "value": "foo7", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1049, "end": 1055, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1049, "end": 1055, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1050, "end": 1055, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1052, "end": 1055, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1027, "end": 1062, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1056, "end": 1061, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1058, "end": 1061, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1081, "end": 1085, "ctxt": 0 }, "value": "foo8", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1086, "end": 1184, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1086, "end": 1184, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1087, "end": 1184, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1089, "end": 1184, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1094, "end": 1123, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1095, "end": 1123, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1097, "end": 1123, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1102, "end": 1111, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1105, "end": 1111, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1107, "end": 1111, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1107, "end": 1111, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1113, "end": 1123, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1116, "end": 1123, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1116, "end": 1123, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 1125, "end": 1155, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1126, "end": 1155, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1128, "end": 1155, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1133, "end": 1143, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1137, "end": 1143, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1139, "end": 1143, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1139, "end": 1143, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1145, "end": 1155, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1148, "end": 1155, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1148, "end": 1155, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1157, "end": 1184, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1160, "end": 1184, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1165, "end": 1172, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1166, "end": 1172, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1168, "end": 1172, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1168, "end": 1172, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1174, "end": 1184, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1177, "end": 1184, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1177, "end": 1184, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1064, "end": 1196, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1185, "end": 1195, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1187, "end": 1195, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1194, "end": 1195, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1214, "end": 1218, "ctxt": 0 }, "value": "foo8", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1219, "end": 1225, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1219, "end": 1225, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1220, "end": 1225, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1222, "end": 1225, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1197, "end": 1232, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1226, "end": 1231, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1228, "end": 1231, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1251, "end": 1255, "ctxt": 0 }, "value": "foo9", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1256, "end": 1354, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1256, "end": 1354, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1257, "end": 1354, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1259, "end": 1354, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1264, "end": 1293, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1265, "end": 1293, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1267, "end": 1293, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1272, "end": 1281, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1275, "end": 1281, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1277, "end": 1281, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1277, "end": 1281, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1283, "end": 1293, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1286, "end": 1293, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1286, "end": 1293, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 1295, "end": 1325, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1296, "end": 1325, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1298, "end": 1325, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1303, "end": 1313, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1307, "end": 1313, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1309, "end": 1313, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1309, "end": 1313, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1315, "end": 1325, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1318, "end": 1325, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1318, "end": 1325, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1327, "end": 1354, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1330, "end": 1354, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1335, "end": 1342, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1336, "end": 1342, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1338, "end": 1342, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1338, "end": 1342, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1344, "end": 1354, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1347, "end": 1354, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1347, "end": 1354, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1234, "end": 1366, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1355, "end": 1365, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1357, "end": 1365, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1364, "end": 1365, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1384, "end": 1388, "ctxt": 0 }, "value": "foo9", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1389, "end": 1395, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1389, "end": 1395, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1390, "end": 1395, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1392, "end": 1395, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1367, "end": 1402, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1396, "end": 1401, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1398, "end": 1401, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1421, "end": 1426, "ctxt": 0 }, "value": "foo10", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1427, "end": 1462, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1427, "end": 1462, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1428, "end": 1462, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1430, "end": 1462, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 1435, "end": 1450, "ctxt": 0 }, "rest": { "start": 1435, "end": 1438, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1438, "end": 1439, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1439, "end": 1450, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 1441, "end": 1450, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 1441, "end": 1448, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1441, "end": 1448, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1452, "end": 1462, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1455, "end": 1462, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1455, "end": 1462, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1404, "end": 1474, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1463, "end": 1473, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1465, "end": 1473, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1472, "end": 1473, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1492, "end": 1497, "ctxt": 0 }, "value": "foo10", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1498, "end": 1504, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1498, "end": 1504, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1499, "end": 1504, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1501, "end": 1504, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1475, "end": 1511, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1505, "end": 1510, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1507, "end": 1510, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1530, "end": 1535, "ctxt": 0 }, "value": "foo11", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1536, "end": 1604, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1536, "end": 1604, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1537, "end": 1604, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1539, "end": 1604, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1544, "end": 1562, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1545, "end": 1562, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1547, "end": 1562, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1549, "end": 1560, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1549, "end": 1552, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1552, "end": 1560, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1554, "end": 1560, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "Identifier", "span": { "start": 1564, "end": 1595, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1565, "end": 1595, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1567, "end": 1595, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1569, "end": 1581, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1569, "end": 1572, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1572, "end": 1580, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1574, "end": 1580, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1582, "end": 1593, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1582, "end": 1585, "ctxt": 0 }, "value": "bar", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1585, "end": 1593, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1587, "end": 1593, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1597, "end": 1604, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1600, "end": 1604, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1600, "end": 1604, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1513, "end": 1616, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1605, "end": 1615, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1607, "end": 1615, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1614, "end": 1615, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1634, "end": 1639, "ctxt": 0 }, "value": "foo11", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1640, "end": 1646, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1640, "end": 1646, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1641, "end": 1646, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1643, "end": 1646, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1617, "end": 1653, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1647, "end": 1652, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1649, "end": 1652, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1672, "end": 1677, "ctxt": 0 }, "value": "foo12", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1678, "end": 1739, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1678, "end": 1739, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1679, "end": 1739, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1681, "end": 1739, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1686, "end": 1700, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1687, "end": 1700, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1689, "end": 1700, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1689, "end": 1694, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1694, "end": 1700, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1695, "end": 1699, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1695, "end": 1699, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 1702, "end": 1720, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1703, "end": 1720, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1705, "end": 1720, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1705, "end": 1710, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1710, "end": 1720, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1711, "end": 1719, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1711, "end": 1719, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1722, "end": 1739, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1725, "end": 1739, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1725, "end": 1730, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1730, "end": 1739, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1731, "end": 1738, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1731, "end": 1738, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1655, "end": 1751, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1740, "end": 1750, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1742, "end": 1750, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1749, "end": 1750, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1769, "end": 1774, "ctxt": 0 }, "value": "foo12", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1775, "end": 1781, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1775, "end": 1781, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1776, "end": 1781, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1778, "end": 1781, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1752, "end": 1788, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1782, "end": 1787, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1784, "end": 1787, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1807, "end": 1812, "ctxt": 0 }, "value": "foo13", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1813, "end": 1873, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1813, "end": 1873, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1814, "end": 1873, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1816, "end": 1873, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1821, "end": 1835, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1822, "end": 1835, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1824, "end": 1835, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1824, "end": 1829, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1829, "end": 1835, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1830, "end": 1834, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1830, "end": 1834, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 1837, "end": 1854, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1838, "end": 1854, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1840, "end": 1854, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1840, "end": 1845, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1845, "end": 1854, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1846, "end": 1853, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1846, "end": 1853, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1856, "end": 1873, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1859, "end": 1873, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1859, "end": 1864, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1864, "end": 1873, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1865, "end": 1872, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1865, "end": 1872, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1790, "end": 1885, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1874, "end": 1884, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1876, "end": 1884, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1883, "end": 1884, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1903, "end": 1908, "ctxt": 0 }, "value": "foo13", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1909, "end": 1915, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1909, "end": 1915, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1910, "end": 1915, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1912, "end": 1915, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1886, "end": 1922, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1916, "end": 1921, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1918, "end": 1921, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1941, "end": 1946, "ctxt": 0 }, "value": "foo14", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1947, "end": 1993, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1947, "end": 1993, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1948, "end": 1993, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 1950, "end": 1993, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1955, "end": 1982, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1956, "end": 1982, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1958, "end": 1982, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1960, "end": 1970, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1960, "end": 1961, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1961, "end": 1969, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1963, "end": 1969, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1971, "end": 1980, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1971, "end": 1972, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1972, "end": 1980, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1974, "end": 1980, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1984, "end": 1993, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1987, "end": 1993, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1987, "end": 1993, "ctxt": 0 }, "value": "Object", "optional": false }, "typeParams": null } }, "isAbstract": false } } } } ], "decorators": [], "span": { "start": 1924, "end": 2005, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1994, "end": 2004, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1996, "end": 2004, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2003, "end": 2004, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2023, "end": 2028, "ctxt": 0 }, "value": "foo14", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2029, "end": 2035, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2029, "end": 2035, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2030, "end": 2035, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2032, "end": 2035, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2006, "end": 2042, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2036, "end": 2041, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2038, "end": 2041, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2061, "end": 2066, "ctxt": 0 }, "value": "foo15", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2067, "end": 2137, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2067, "end": 2137, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2068, "end": 2137, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2070, "end": 2137, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2077, "end": 2103, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2082, "end": 2091, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2083, "end": 2091, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2085, "end": 2091, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2092, "end": 2102, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2094, "end": 2102, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2094, "end": 2100, "ctxt": 0 }, "kind": "number" } } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2108, "end": 2134, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2113, "end": 2122, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2114, "end": 2122, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2116, "end": 2122, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2123, "end": 2133, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2125, "end": 2133, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2125, "end": 2131, "ctxt": 0 }, "kind": "string" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 2044, "end": 2149, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2138, "end": 2148, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2140, "end": 2148, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2147, "end": 2148, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2167, "end": 2172, "ctxt": 0 }, "value": "foo15", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2173, "end": 2179, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2173, "end": 2179, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2174, "end": 2179, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2176, "end": 2179, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2150, "end": 2186, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2180, "end": 2185, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2182, "end": 2185, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2205, "end": 2210, "ctxt": 0 }, "value": "foo16", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2211, "end": 2304, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2211, "end": 2304, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2212, "end": 2304, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2214, "end": 2304, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2220, "end": 2260, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2244, "end": 2248, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2245, "end": 2248, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2247, "end": 2248, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2247, "end": 2248, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2249, "end": 2259, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2251, "end": 2259, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2251, "end": 2257, "ctxt": 0 }, "kind": "number" } } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2224, "end": 2243, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2225, "end": 2242, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2225, "end": 2226, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 2235, "end": 2242, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2235, "end": 2242, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] } }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2265, "end": 2302, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2286, "end": 2290, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2287, "end": 2290, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2289, "end": 2290, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2289, "end": 2290, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2291, "end": 2301, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2293, "end": 2301, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2293, "end": 2299, "ctxt": 0 }, "kind": "number" } } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2269, "end": 2285, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2270, "end": 2284, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2270, "end": 2271, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 2280, "end": 2284, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2280, "end": 2284, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] } } ] } } } } ], "decorators": [], "span": { "start": 2188, "end": 2316, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2305, "end": 2315, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2307, "end": 2315, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2314, "end": 2315, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2334, "end": 2339, "ctxt": 0 }, "value": "foo16", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2340, "end": 2346, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2340, "end": 2346, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2341, "end": 2346, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2343, "end": 2346, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2317, "end": 2353, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2347, "end": 2352, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2349, "end": 2352, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2372, "end": 2377, "ctxt": 0 }, "value": "foo17", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2378, "end": 2476, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2378, "end": 2476, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2379, "end": 2476, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2381, "end": 2476, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2387, "end": 2428, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2392, "end": 2416, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2393, "end": 2416, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2395, "end": 2416, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2396, "end": 2405, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2397, "end": 2405, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2399, "end": 2405, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2407, "end": 2416, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2410, "end": 2416, "ctxt": 0 }, "kind": "number" } } } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2417, "end": 2427, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2419, "end": 2427, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2419, "end": 2425, "ctxt": 0 }, "kind": "number" } } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2433, "end": 2474, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2438, "end": 2462, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2439, "end": 2462, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2441, "end": 2462, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2442, "end": 2451, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2443, "end": 2451, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2445, "end": 2451, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2453, "end": 2462, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2456, "end": 2462, "ctxt": 0 }, "kind": "string" } } } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2463, "end": 2473, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2465, "end": 2473, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2465, "end": 2471, "ctxt": 0 }, "kind": "string" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 2355, "end": 2488, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2477, "end": 2487, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2479, "end": 2487, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2486, "end": 2487, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2506, "end": 2511, "ctxt": 0 }, "value": "foo17", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2512, "end": 2518, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2512, "end": 2518, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2513, "end": 2518, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2515, "end": 2518, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2489, "end": 2525, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2519, "end": 2524, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2521, "end": 2524, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2544, "end": 2549, "ctxt": 0 }, "value": "foo18", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2550, "end": 2744, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2550, "end": 2744, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2551, "end": 2744, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2553, "end": 2744, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2559, "end": 2649, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2564, "end": 2640, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2565, "end": 2640, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2567, "end": 2640, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2577, "end": 2601, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2582, "end": 2591, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2583, "end": 2591, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2585, "end": 2591, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2592, "end": 2600, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2594, "end": 2600, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2610, "end": 2634, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2615, "end": 2624, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2616, "end": 2624, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2618, "end": 2624, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2625, "end": 2633, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2627, "end": 2633, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2641, "end": 2648, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2643, "end": 2648, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2643, "end": 2646, "ctxt": 0 }, "kind": "any" } } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2654, "end": 2742, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2659, "end": 2733, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2660, "end": 2733, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2662, "end": 2733, "ctxt": 0 }, "members": [ { "type": "TsConstructSignatureDeclaration", "span": { "start": 2672, "end": 2698, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2677, "end": 2687, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2678, "end": 2687, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2680, "end": 2687, "ctxt": 0 }, "kind": "boolean" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2688, "end": 2697, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2690, "end": 2697, "ctxt": 0 }, "kind": "boolean" } }, "typeParams": null }, { "type": "TsConstructSignatureDeclaration", "span": { "start": 2707, "end": 2727, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2712, "end": 2719, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2713, "end": 2719, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2715, "end": 2719, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2715, "end": 2719, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2720, "end": 2726, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2722, "end": 2726, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2722, "end": 2726, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2734, "end": 2741, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2736, "end": 2741, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2736, "end": 2739, "ctxt": 0 }, "kind": "any" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 2527, "end": 2756, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2745, "end": 2755, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2747, "end": 2755, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2754, "end": 2755, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2774, "end": 2779, "ctxt": 0 }, "value": "foo18", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2780, "end": 2786, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2780, "end": 2786, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2781, "end": 2786, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2783, "end": 2786, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2757, "end": 2793, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2787, "end": 2792, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2789, "end": 2792, "ctxt": 0 }, "kind": "any" } } }, { "type": "VariableDeclaration", "span": { "start": 2795, "end": 2828, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2799, "end": 2827, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2799, "end": 2805, "ctxt": 0 }, "value": "r1arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2805, "end": 2827, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 2807, "end": 2827, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2815, "end": 2819, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2816, "end": 2819, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2818, "end": 2819, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2818, "end": 2819, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2811, "end": 2814, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2812, "end": 2813, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2812, "end": 2813, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2821, "end": 2827, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2824, "end": 2827, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 2824, "end": 2825, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2824, "end": 2825, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2829, "end": 2869, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2833, "end": 2868, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2833, "end": 2839, "ctxt": 0 }, "value": "r1arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2839, "end": 2868, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 2841, "end": 2868, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2846, "end": 2855, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2847, "end": 2855, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2849, "end": 2855, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2857, "end": 2868, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2860, "end": 2868, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2860, "end": 2866, "ctxt": 0 }, "kind": "number" } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2870, "end": 2892, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2874, "end": 2891, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2874, "end": 2876, "ctxt": 0 }, "value": "r1", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2879, "end": 2891, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2879, "end": 2883, "ctxt": 0 }, "value": "foo1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2884, "end": 2890, "ctxt": 0 }, "value": "r1arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2948, "end": 2975, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2952, "end": 2974, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2952, "end": 2955, "ctxt": 0 }, "value": "r1a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 2958, "end": 2974, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2959, "end": 2965, "ctxt": 0 }, "value": "r1arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2967, "end": 2973, "ctxt": 0 }, "value": "r1arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3025, "end": 3052, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3029, "end": 3051, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3029, "end": 3032, "ctxt": 0 }, "value": "r1b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3035, "end": 3051, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3036, "end": 3042, "ctxt": 0 }, "value": "r1arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3044, "end": 3050, "ctxt": 0 }, "value": "r1arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3103, "end": 3141, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3107, "end": 3140, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3107, "end": 3113, "ctxt": 0 }, "value": "r2arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3113, "end": 3140, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3115, "end": 3140, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3123, "end": 3127, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3124, "end": 3127, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3126, "end": 3127, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3126, "end": 3127, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 3119, "end": 3122, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3120, "end": 3121, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3120, "end": 3121, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3129, "end": 3140, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 3132, "end": 3140, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 3132, "end": 3138, "ctxt": 0 }, "kind": "string" } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3142, "end": 3182, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3146, "end": 3181, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3146, "end": 3152, "ctxt": 0 }, "value": "r2arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3152, "end": 3181, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3154, "end": 3181, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3159, "end": 3168, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3160, "end": 3168, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3162, "end": 3168, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3170, "end": 3181, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 3173, "end": 3181, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 3173, "end": 3179, "ctxt": 0 }, "kind": "string" } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3183, "end": 3205, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3187, "end": 3204, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3187, "end": 3189, "ctxt": 0 }, "value": "r2", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3192, "end": 3204, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3192, "end": 3196, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3197, "end": 3203, "ctxt": 0 }, "value": "r2arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3206, "end": 3233, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3210, "end": 3232, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3210, "end": 3213, "ctxt": 0 }, "value": "r2a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3216, "end": 3232, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3217, "end": 3223, "ctxt": 0 }, "value": "r2arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3225, "end": 3231, "ctxt": 0 }, "value": "r2arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3234, "end": 3261, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3238, "end": 3260, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3238, "end": 3241, "ctxt": 0 }, "value": "r2b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3244, "end": 3260, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3245, "end": 3251, "ctxt": 0 }, "value": "r2arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3253, "end": 3259, "ctxt": 0 }, "value": "r2arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3263, "end": 3294, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3267, "end": 3293, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3267, "end": 3273, "ctxt": 0 }, "value": "r3arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3273, "end": 3293, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3275, "end": 3293, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3283, "end": 3287, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3284, "end": 3287, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3286, "end": 3287, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3286, "end": 3287, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 3279, "end": 3282, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3280, "end": 3281, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3280, "end": 3281, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3289, "end": 3293, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3292, "end": 3293, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3292, "end": 3293, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3295, "end": 3331, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3299, "end": 3330, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3299, "end": 3305, "ctxt": 0 }, "value": "r3arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3305, "end": 3330, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3307, "end": 3330, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3312, "end": 3321, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3313, "end": 3321, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3315, "end": 3321, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3323, "end": 3330, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3326, "end": 3330, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3332, "end": 3354, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3336, "end": 3353, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3336, "end": 3338, "ctxt": 0 }, "value": "r3", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3341, "end": 3353, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3341, "end": 3345, "ctxt": 0 }, "value": "foo3", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3346, "end": 3352, "ctxt": 0 }, "value": "r3arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3355, "end": 3382, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3359, "end": 3381, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3359, "end": 3362, "ctxt": 0 }, "value": "r3a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3365, "end": 3381, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3366, "end": 3372, "ctxt": 0 }, "value": "r3arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3374, "end": 3380, "ctxt": 0 }, "value": "r3arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3383, "end": 3410, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3387, "end": 3409, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3387, "end": 3390, "ctxt": 0 }, "value": "r3b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3393, "end": 3409, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3394, "end": 3400, "ctxt": 0 }, "value": "r3arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3402, "end": 3408, "ctxt": 0 }, "value": "r3arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3412, "end": 3452, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3416, "end": 3451, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3416, "end": 3422, "ctxt": 0 }, "value": "r4arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3422, "end": 3451, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3424, "end": 3451, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3435, "end": 3439, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3436, "end": 3439, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3438, "end": 3439, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3438, "end": 3439, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "Identifier", "span": { "start": 3441, "end": 3445, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3442, "end": 3445, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3444, "end": 3445, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3444, "end": 3445, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 3428, "end": 3434, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3429, "end": 3430, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3429, "end": 3430, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3432, "end": 3433, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3432, "end": 3433, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3447, "end": 3451, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3450, "end": 3451, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3450, "end": 3451, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3453, "end": 3502, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3457, "end": 3501, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3457, "end": 3463, "ctxt": 0 }, "value": "r4arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3463, "end": 3501, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3465, "end": 3501, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3470, "end": 3479, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3471, "end": 3479, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3473, "end": 3479, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 3481, "end": 3490, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3482, "end": 3490, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3484, "end": 3490, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3492, "end": 3501, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3495, "end": 3501, "ctxt": 0 }, "kind": "string" } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3503, "end": 3525, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3507, "end": 3524, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3507, "end": 3509, "ctxt": 0 }, "value": "r4", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3512, "end": 3524, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3512, "end": 3516, "ctxt": 0 }, "value": "foo4", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3517, "end": 3523, "ctxt": 0 }, "value": "r4arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3533, "end": 3560, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3537, "end": 3559, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3537, "end": 3540, "ctxt": 0 }, "value": "r4a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3543, "end": 3559, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3544, "end": 3550, "ctxt": 0 }, "value": "r4arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3552, "end": 3558, "ctxt": 0 }, "value": "r4arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3561, "end": 3588, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3565, "end": 3587, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3565, "end": 3568, "ctxt": 0 }, "value": "r4b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3571, "end": 3587, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3572, "end": 3578, "ctxt": 0 }, "value": "r4arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3580, "end": 3586, "ctxt": 0 }, "value": "r4arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3590, "end": 3640, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3594, "end": 3639, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3594, "end": 3600, "ctxt": 0 }, "value": "r5arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3600, "end": 3639, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3602, "end": 3639, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3613, "end": 3633, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3614, "end": 3633, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3616, "end": 3633, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3621, "end": 3627, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3624, "end": 3627, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3626, "end": 3627, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3626, "end": 3627, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3629, "end": 3633, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3632, "end": 3633, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3632, "end": 3633, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 3606, "end": 3612, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3607, "end": 3608, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3607, "end": 3608, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3610, "end": 3611, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3610, "end": 3611, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3635, "end": 3639, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3638, "end": 3639, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3638, "end": 3639, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3641, "end": 3700, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3645, "end": 3699, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3645, "end": 3651, "ctxt": 0 }, "value": "r5arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3651, "end": 3699, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3653, "end": 3699, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3658, "end": 3688, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3659, "end": 3688, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3661, "end": 3688, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3666, "end": 3677, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3669, "end": 3677, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3671, "end": 3677, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3679, "end": 3688, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3682, "end": 3688, "ctxt": 0 }, "kind": "number" } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3690, "end": 3699, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3693, "end": 3699, "ctxt": 0 }, "kind": "string" } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3701, "end": 3723, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3705, "end": 3722, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3705, "end": 3707, "ctxt": 0 }, "value": "r5", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3710, "end": 3722, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3710, "end": 3714, "ctxt": 0 }, "value": "foo5", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3715, "end": 3721, "ctxt": 0 }, "value": "r5arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3731, "end": 3758, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3735, "end": 3757, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3735, "end": 3738, "ctxt": 0 }, "value": "r5a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3741, "end": 3757, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3742, "end": 3748, "ctxt": 0 }, "value": "r5arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3750, "end": 3756, "ctxt": 0 }, "value": "r5arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3759, "end": 3786, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3763, "end": 3785, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3763, "end": 3766, "ctxt": 0 }, "value": "r5b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3769, "end": 3785, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3770, "end": 3776, "ctxt": 0 }, "value": "r5arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3778, "end": 3784, "ctxt": 0 }, "value": "r5arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3788, "end": 3867, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3792, "end": 3866, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3792, "end": 3798, "ctxt": 0 }, "value": "r6arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3798, "end": 3866, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3800, "end": 3866, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3840, "end": 3860, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3841, "end": 3860, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3843, "end": 3860, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3848, "end": 3854, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3851, "end": 3854, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3853, "end": 3854, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3853, "end": 3854, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3856, "end": 3860, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3859, "end": 3860, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3859, "end": 3860, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 3804, "end": 3839, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3805, "end": 3819, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3805, "end": 3806, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3815, "end": 3819, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3815, "end": 3819, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3821, "end": 3838, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3821, "end": 3822, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3831, "end": 3838, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3831, "end": 3838, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3862, "end": 3866, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3865, "end": 3866, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3865, "end": 3866, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3868, "end": 3924, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3872, "end": 3923, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3872, "end": 3878, "ctxt": 0 }, "value": "r6arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3878, "end": 3923, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3880, "end": 3923, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3885, "end": 3914, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3886, "end": 3914, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 3888, "end": 3914, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3893, "end": 3902, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3896, "end": 3902, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3898, "end": 3902, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3898, "end": 3902, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3904, "end": 3914, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3907, "end": 3914, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3907, "end": 3914, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3916, "end": 3923, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3919, "end": 3923, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3919, "end": 3923, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3925, "end": 3947, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3929, "end": 3946, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3929, "end": 3931, "ctxt": 0 }, "value": "r6", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3934, "end": 3946, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3934, "end": 3938, "ctxt": 0 }, "value": "foo6", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3939, "end": 3945, "ctxt": 0 }, "value": "r6arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3955, "end": 3982, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3959, "end": 3981, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3959, "end": 3962, "ctxt": 0 }, "value": "r6a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3965, "end": 3981, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3966, "end": 3972, "ctxt": 0 }, "value": "r6arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3974, "end": 3980, "ctxt": 0 }, "value": "r6arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3983, "end": 4010, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3987, "end": 4009, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3987, "end": 3990, "ctxt": 0 }, "value": "r6b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3993, "end": 4009, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3994, "end": 4000, "ctxt": 0 }, "value": "r6arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4002, "end": 4008, "ctxt": 0 }, "value": "r6arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4012, "end": 4105, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4016, "end": 4104, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4016, "end": 4022, "ctxt": 0 }, "value": "r7arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4022, "end": 4104, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4024, "end": 4104, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4064, "end": 4084, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4065, "end": 4084, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4067, "end": 4084, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4072, "end": 4078, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4075, "end": 4078, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4077, "end": 4078, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4077, "end": 4078, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4080, "end": 4084, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4083, "end": 4084, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4083, "end": 4084, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4028, "end": 4063, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4029, "end": 4043, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4029, "end": 4030, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4039, "end": 4043, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4039, "end": 4043, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4045, "end": 4062, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4045, "end": 4046, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4055, "end": 4062, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4055, "end": 4062, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4086, "end": 4104, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4089, "end": 4104, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4094, "end": 4098, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4095, "end": 4098, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4097, "end": 4098, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4097, "end": 4098, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4100, "end": 4104, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4103, "end": 4104, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4103, "end": 4104, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4106, "end": 4182, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4110, "end": 4181, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4110, "end": 4116, "ctxt": 0 }, "value": "r7arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4116, "end": 4181, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4118, "end": 4181, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4123, "end": 4152, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4124, "end": 4152, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4126, "end": 4152, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4131, "end": 4140, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4134, "end": 4140, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4136, "end": 4140, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4136, "end": 4140, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4142, "end": 4152, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4145, "end": 4152, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4145, "end": 4152, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4154, "end": 4181, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4157, "end": 4181, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4162, "end": 4169, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4163, "end": 4169, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4165, "end": 4169, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4165, "end": 4169, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4171, "end": 4181, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4174, "end": 4181, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4174, "end": 4181, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4183, "end": 4205, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4187, "end": 4204, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4187, "end": 4189, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4192, "end": 4204, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4192, "end": 4196, "ctxt": 0 }, "value": "foo7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4197, "end": 4203, "ctxt": 0 }, "value": "r7arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4213, "end": 4240, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4217, "end": 4239, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4217, "end": 4220, "ctxt": 0 }, "value": "r7a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4223, "end": 4239, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4224, "end": 4230, "ctxt": 0 }, "value": "r7arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4232, "end": 4238, "ctxt": 0 }, "value": "r7arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4241, "end": 4268, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4245, "end": 4267, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4245, "end": 4248, "ctxt": 0 }, "value": "r7b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4251, "end": 4267, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4252, "end": 4258, "ctxt": 0 }, "value": "r7arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4260, "end": 4266, "ctxt": 0 }, "value": "r7arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4270, "end": 4386, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4274, "end": 4385, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4274, "end": 4280, "ctxt": 0 }, "value": "r8arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4280, "end": 4385, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4282, "end": 4385, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4322, "end": 4342, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4323, "end": 4342, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4325, "end": 4342, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4330, "end": 4336, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4333, "end": 4336, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4335, "end": 4336, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4335, "end": 4336, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4338, "end": 4342, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4341, "end": 4342, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4341, "end": 4342, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 4344, "end": 4365, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4345, "end": 4365, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4347, "end": 4365, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4352, "end": 4359, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4356, "end": 4359, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4358, "end": 4359, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4358, "end": 4359, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4361, "end": 4365, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4364, "end": 4365, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4364, "end": 4365, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4286, "end": 4321, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4287, "end": 4301, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4287, "end": 4288, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4297, "end": 4301, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4297, "end": 4301, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4303, "end": 4320, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4303, "end": 4304, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4313, "end": 4320, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4313, "end": 4320, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4367, "end": 4385, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4370, "end": 4385, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4375, "end": 4379, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4376, "end": 4379, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4378, "end": 4379, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4378, "end": 4379, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4381, "end": 4385, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4384, "end": 4385, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4384, "end": 4385, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4387, "end": 4495, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4391, "end": 4494, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4391, "end": 4397, "ctxt": 0 }, "value": "r8arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4397, "end": 4494, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4399, "end": 4494, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4404, "end": 4433, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4405, "end": 4433, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4407, "end": 4433, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4412, "end": 4421, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4415, "end": 4421, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4417, "end": 4421, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4417, "end": 4421, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4423, "end": 4433, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4426, "end": 4433, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4426, "end": 4433, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 4435, "end": 4465, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4436, "end": 4465, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4438, "end": 4465, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4443, "end": 4453, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4447, "end": 4453, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4449, "end": 4453, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4449, "end": 4453, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4455, "end": 4465, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4458, "end": 4465, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4458, "end": 4465, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4467, "end": 4494, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4470, "end": 4494, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4475, "end": 4482, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4476, "end": 4482, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4478, "end": 4482, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4478, "end": 4482, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4484, "end": 4494, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4487, "end": 4494, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4487, "end": 4494, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4496, "end": 4518, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4500, "end": 4517, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4500, "end": 4502, "ctxt": 0 }, "value": "r8", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4505, "end": 4517, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4505, "end": 4509, "ctxt": 0 }, "value": "foo8", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4510, "end": 4516, "ctxt": 0 }, "value": "r8arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4526, "end": 4553, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4530, "end": 4552, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4530, "end": 4533, "ctxt": 0 }, "value": "r8a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4536, "end": 4552, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4537, "end": 4543, "ctxt": 0 }, "value": "r8arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4545, "end": 4551, "ctxt": 0 }, "value": "r8arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4554, "end": 4581, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4558, "end": 4580, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4558, "end": 4561, "ctxt": 0 }, "value": "r8b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4564, "end": 4580, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4565, "end": 4571, "ctxt": 0 }, "value": "r8arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4573, "end": 4579, "ctxt": 0 }, "value": "r8arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4583, "end": 4723, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4587, "end": 4722, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4587, "end": 4593, "ctxt": 0 }, "value": "r9arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4593, "end": 4722, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4595, "end": 4722, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4635, "end": 4655, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4636, "end": 4655, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4638, "end": 4655, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4643, "end": 4649, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4646, "end": 4649, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4648, "end": 4649, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4648, "end": 4649, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4651, "end": 4655, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4654, "end": 4655, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4654, "end": 4655, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 4657, "end": 4702, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4658, "end": 4702, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4660, "end": 4702, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4661, "end": 4696, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4665, "end": 4696, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4667, "end": 4696, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 4669, "end": 4681, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4669, "end": 4672, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4672, "end": 4680, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4674, "end": 4680, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4682, "end": 4694, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4682, "end": 4686, "ctxt": 0 }, "value": "bing", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4686, "end": 4694, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4688, "end": 4694, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4698, "end": 4702, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4701, "end": 4702, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4701, "end": 4702, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4599, "end": 4634, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4600, "end": 4614, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4600, "end": 4601, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4610, "end": 4614, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4610, "end": 4614, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4616, "end": 4633, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4616, "end": 4617, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4626, "end": 4633, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4626, "end": 4633, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4704, "end": 4722, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4707, "end": 4722, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4712, "end": 4716, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4713, "end": 4716, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4715, "end": 4716, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4715, "end": 4716, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4718, "end": 4722, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4721, "end": 4722, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4721, "end": 4722, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4724, "end": 4832, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4728, "end": 4831, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4728, "end": 4734, "ctxt": 0 }, "value": "r9arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4734, "end": 4831, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4736, "end": 4831, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4741, "end": 4770, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4742, "end": 4770, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4744, "end": 4770, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4749, "end": 4758, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4752, "end": 4758, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4754, "end": 4758, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4754, "end": 4758, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4760, "end": 4770, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4763, "end": 4770, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4763, "end": 4770, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, { "type": "Identifier", "span": { "start": 4772, "end": 4802, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4773, "end": 4802, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4775, "end": 4802, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4780, "end": 4790, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4784, "end": 4790, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4786, "end": 4790, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4786, "end": 4790, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4792, "end": 4802, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4795, "end": 4802, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4795, "end": 4802, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4804, "end": 4831, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4807, "end": 4831, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4812, "end": 4819, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4813, "end": 4819, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4815, "end": 4819, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4815, "end": 4819, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4821, "end": 4831, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4824, "end": 4831, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4824, "end": 4831, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4833, "end": 4855, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4837, "end": 4854, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4837, "end": 4839, "ctxt": 0 }, "value": "r9", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4842, "end": 4854, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4842, "end": 4846, "ctxt": 0 }, "value": "foo9", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4847, "end": 4853, "ctxt": 0 }, "value": "r9arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4863, "end": 4890, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4867, "end": 4889, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4867, "end": 4870, "ctxt": 0 }, "value": "r9a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4873, "end": 4889, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4874, "end": 4880, "ctxt": 0 }, "value": "r9arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4882, "end": 4888, "ctxt": 0 }, "value": "r9arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4891, "end": 4918, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4895, "end": 4917, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4895, "end": 4898, "ctxt": 0 }, "value": "r9b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4901, "end": 4917, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4902, "end": 4908, "ctxt": 0 }, "value": "r9arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4910, "end": 4916, "ctxt": 0 }, "value": "r9arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4920, "end": 4973, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4924, "end": 4972, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4924, "end": 4931, "ctxt": 0 }, "value": "r10arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4931, "end": 4972, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4933, "end": 4972, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4957, "end": 4966, "ctxt": 0 }, "rest": { "start": 4957, "end": 4960, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4960, "end": 4961, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4961, "end": 4966, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 4963, "end": 4966, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 4963, "end": 4964, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4963, "end": 4964, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4937, "end": 4956, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4938, "end": 4955, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4938, "end": 4939, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4948, "end": 4955, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4948, "end": 4955, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4968, "end": 4972, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4971, "end": 4972, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4971, "end": 4972, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4974, "end": 5020, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4978, "end": 5019, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4978, "end": 4985, "ctxt": 0 }, "value": "r10arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4985, "end": 5019, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 4987, "end": 5019, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4992, "end": 5007, "ctxt": 0 }, "rest": { "start": 4992, "end": 4995, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4995, "end": 4996, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4996, "end": 5007, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 4998, "end": 5007, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 4998, "end": 5005, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4998, "end": 5005, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5009, "end": 5019, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5012, "end": 5019, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5012, "end": 5019, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5021, "end": 5046, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5025, "end": 5045, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5025, "end": 5028, "ctxt": 0 }, "value": "r10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5031, "end": 5045, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5031, "end": 5036, "ctxt": 0 }, "value": "foo10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5037, "end": 5044, "ctxt": 0 }, "value": "r10arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5054, "end": 5084, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5058, "end": 5083, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5058, "end": 5062, "ctxt": 0 }, "value": "r10a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5065, "end": 5083, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5066, "end": 5073, "ctxt": 0 }, "value": "r10arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5075, "end": 5082, "ctxt": 0 }, "value": "r10arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5085, "end": 5115, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5089, "end": 5114, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5089, "end": 5093, "ctxt": 0 }, "value": "r10b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5096, "end": 5114, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5097, "end": 5104, "ctxt": 0 }, "value": "r10arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5106, "end": 5113, "ctxt": 0 }, "value": "r10arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5117, "end": 5168, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5121, "end": 5167, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5121, "end": 5128, "ctxt": 0 }, "value": "r11arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5128, "end": 5167, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5130, "end": 5167, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5151, "end": 5155, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5152, "end": 5155, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5154, "end": 5155, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5154, "end": 5155, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "Identifier", "span": { "start": 5157, "end": 5161, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5158, "end": 5161, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5160, "end": 5161, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5160, "end": 5161, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 5134, "end": 5150, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5135, "end": 5149, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5135, "end": 5136, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5145, "end": 5149, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5145, "end": 5149, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5163, "end": 5167, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5166, "end": 5167, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5166, "end": 5167, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5169, "end": 5248, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5173, "end": 5247, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5173, "end": 5180, "ctxt": 0 }, "value": "r11arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5180, "end": 5247, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5182, "end": 5247, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5187, "end": 5205, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5188, "end": 5205, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5190, "end": 5205, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5192, "end": 5203, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5192, "end": 5195, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5195, "end": 5203, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5197, "end": 5203, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "Identifier", "span": { "start": 5207, "end": 5238, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5208, "end": 5238, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5210, "end": 5238, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5212, "end": 5224, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5212, "end": 5215, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5215, "end": 5223, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5217, "end": 5223, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 5225, "end": 5236, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5225, "end": 5228, "ctxt": 0 }, "value": "bar", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5228, "end": 5236, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5230, "end": 5236, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5240, "end": 5247, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5243, "end": 5247, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5243, "end": 5247, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5249, "end": 5274, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5253, "end": 5273, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5253, "end": 5256, "ctxt": 0 }, "value": "r11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5259, "end": 5273, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5259, "end": 5264, "ctxt": 0 }, "value": "foo11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5265, "end": 5272, "ctxt": 0 }, "value": "r11arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5282, "end": 5312, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5286, "end": 5311, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5286, "end": 5290, "ctxt": 0 }, "value": "r11a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5293, "end": 5311, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5294, "end": 5301, "ctxt": 0 }, "value": "r11arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5303, "end": 5310, "ctxt": 0 }, "value": "r11arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5313, "end": 5343, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5317, "end": 5342, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5317, "end": 5321, "ctxt": 0 }, "value": "r11b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5324, "end": 5342, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5325, "end": 5332, "ctxt": 0 }, "value": "r11arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5334, "end": 5341, "ctxt": 0 }, "value": "r11arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5345, "end": 5426, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5349, "end": 5425, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5349, "end": 5356, "ctxt": 0 }, "value": "r12arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5356, "end": 5425, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5358, "end": 5425, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5386, "end": 5400, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5387, "end": 5400, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5389, "end": 5400, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5389, "end": 5394, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5394, "end": 5400, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5395, "end": 5399, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5395, "end": 5399, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5402, "end": 5406, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5403, "end": 5406, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5405, "end": 5406, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5405, "end": 5406, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 5362, "end": 5385, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5363, "end": 5384, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5363, "end": 5364, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5373, "end": 5384, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5373, "end": 5378, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5378, "end": 5384, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5379, "end": 5383, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5379, "end": 5383, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5408, "end": 5425, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5411, "end": 5425, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5411, "end": 5416, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5416, "end": 5425, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5417, "end": 5424, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5417, "end": 5424, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5427, "end": 5499, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5431, "end": 5498, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5431, "end": 5438, "ctxt": 0 }, "value": "r12arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5438, "end": 5498, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5440, "end": 5498, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5445, "end": 5459, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5446, "end": 5459, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5448, "end": 5459, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5448, "end": 5453, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5453, "end": 5459, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5454, "end": 5458, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5454, "end": 5458, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5461, "end": 5479, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5462, "end": 5479, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5464, "end": 5479, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5464, "end": 5469, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5469, "end": 5479, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5470, "end": 5478, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5470, "end": 5478, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5481, "end": 5498, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5484, "end": 5498, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5484, "end": 5489, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5489, "end": 5498, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5490, "end": 5497, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5490, "end": 5497, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5500, "end": 5525, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5504, "end": 5524, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5504, "end": 5507, "ctxt": 0 }, "value": "r12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5510, "end": 5524, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5510, "end": 5515, "ctxt": 0 }, "value": "foo12", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5516, "end": 5523, "ctxt": 0 }, "value": "r12arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5533, "end": 5563, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5537, "end": 5562, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5537, "end": 5541, "ctxt": 0 }, "value": "r12a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5544, "end": 5562, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5545, "end": 5552, "ctxt": 0 }, "value": "r12arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5554, "end": 5561, "ctxt": 0 }, "value": "r12arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5564, "end": 5594, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5568, "end": 5593, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5568, "end": 5572, "ctxt": 0 }, "value": "r12b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5575, "end": 5593, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5576, "end": 5583, "ctxt": 0 }, "value": "r12arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5585, "end": 5592, "ctxt": 0 }, "value": "r12arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5596, "end": 5667, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5600, "end": 5666, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5600, "end": 5607, "ctxt": 0 }, "value": "r13arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5607, "end": 5666, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5609, "end": 5666, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5640, "end": 5654, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5641, "end": 5654, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5643, "end": 5654, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5643, "end": 5648, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5648, "end": 5654, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5649, "end": 5653, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5649, "end": 5653, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5656, "end": 5660, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5657, "end": 5660, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5659, "end": 5660, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5659, "end": 5660, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 5613, "end": 5639, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5614, "end": 5638, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5614, "end": 5615, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5624, "end": 5638, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5624, "end": 5629, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5629, "end": 5638, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5630, "end": 5637, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5630, "end": 5637, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5662, "end": 5666, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5665, "end": 5666, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5665, "end": 5666, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5668, "end": 5739, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5672, "end": 5738, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5672, "end": 5679, "ctxt": 0 }, "value": "r13arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5679, "end": 5738, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5681, "end": 5738, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5686, "end": 5700, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5687, "end": 5700, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5689, "end": 5700, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5689, "end": 5694, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5694, "end": 5700, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5695, "end": 5699, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5695, "end": 5699, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5702, "end": 5719, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5703, "end": 5719, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5705, "end": 5719, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5705, "end": 5710, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5710, "end": 5719, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5711, "end": 5718, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5711, "end": 5718, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5721, "end": 5738, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5724, "end": 5738, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5724, "end": 5729, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5729, "end": 5738, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5730, "end": 5737, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5730, "end": 5737, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5740, "end": 5765, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5744, "end": 5764, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5744, "end": 5747, "ctxt": 0 }, "value": "r13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5750, "end": 5764, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5750, "end": 5755, "ctxt": 0 }, "value": "foo13", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5756, "end": 5763, "ctxt": 0 }, "value": "r13arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5773, "end": 5803, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5777, "end": 5802, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5777, "end": 5781, "ctxt": 0 }, "value": "r13a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5784, "end": 5802, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5785, "end": 5792, "ctxt": 0 }, "value": "r13arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5794, "end": 5801, "ctxt": 0 }, "value": "r13arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5804, "end": 5834, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5808, "end": 5833, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5808, "end": 5812, "ctxt": 0 }, "value": "r13b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5815, "end": 5833, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5816, "end": 5823, "ctxt": 0 }, "value": "r13arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5825, "end": 5832, "ctxt": 0 }, "value": "r13arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5836, "end": 5881, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5840, "end": 5880, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5840, "end": 5847, "ctxt": 0 }, "value": "r14arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5847, "end": 5880, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5849, "end": 5880, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5857, "end": 5874, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5858, "end": 5874, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5860, "end": 5874, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5862, "end": 5867, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5862, "end": 5863, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5863, "end": 5866, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5865, "end": 5866, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5865, "end": 5866, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 5868, "end": 5872, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5868, "end": 5869, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5869, "end": 5872, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5871, "end": 5872, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5871, "end": 5872, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 5853, "end": 5856, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5854, "end": 5855, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5854, "end": 5855, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5876, "end": 5880, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5879, "end": 5880, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5879, "end": 5880, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5882, "end": 5939, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5886, "end": 5938, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5886, "end": 5893, "ctxt": 0 }, "value": "r14arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5893, "end": 5938, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 5895, "end": 5938, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5900, "end": 5927, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5901, "end": 5927, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5903, "end": 5927, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5905, "end": 5915, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5905, "end": 5906, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5906, "end": 5914, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5908, "end": 5914, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 5916, "end": 5925, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5916, "end": 5917, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5917, "end": 5925, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5919, "end": 5925, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5929, "end": 5938, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5932, "end": 5938, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5932, "end": 5938, "ctxt": 0 }, "value": "Object", "optional": false }, "typeParams": null } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5940, "end": 5965, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5944, "end": 5964, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5944, "end": 5947, "ctxt": 0 }, "value": "r14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5950, "end": 5964, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5950, "end": 5955, "ctxt": 0 }, "value": "foo14", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5956, "end": 5963, "ctxt": 0 }, "value": "r14arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5973, "end": 6003, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5977, "end": 6002, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5977, "end": 5981, "ctxt": 0 }, "value": "r14a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5984, "end": 6002, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5985, "end": 5992, "ctxt": 0 }, "value": "r14arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5994, "end": 6001, "ctxt": 0 }, "value": "r14arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6004, "end": 6034, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6008, "end": 6033, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6008, "end": 6012, "ctxt": 0 }, "value": "r14b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 6015, "end": 6033, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6016, "end": 6023, "ctxt": 0 }, "value": "r14arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6025, "end": 6032, "ctxt": 0 }, "value": "r14arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6036, "end": 6070, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6040, "end": 6069, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6040, "end": 6047, "ctxt": 0 }, "value": "r15arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6047, "end": 6069, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 6049, "end": 6069, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6057, "end": 6061, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6058, "end": 6061, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6060, "end": 6061, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6060, "end": 6061, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 6053, "end": 6056, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 6054, "end": 6055, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 6054, "end": 6055, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6063, "end": 6069, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 6066, "end": 6069, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 6066, "end": 6067, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6066, "end": 6067, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6071, "end": 6096, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6075, "end": 6095, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6075, "end": 6078, "ctxt": 0 }, "value": "r15", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6081, "end": 6095, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6081, "end": 6086, "ctxt": 0 }, "value": "foo15", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6087, "end": 6094, "ctxt": 0 }, "value": "r15arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6104, "end": 6156, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6108, "end": 6155, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6108, "end": 6115, "ctxt": 0 }, "value": "r16arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6115, "end": 6155, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 6117, "end": 6155, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6138, "end": 6142, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6139, "end": 6142, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6141, "end": 6142, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6141, "end": 6142, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 6121, "end": 6137, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 6122, "end": 6136, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 6122, "end": 6123, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 6132, "end": 6136, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6132, "end": 6136, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6144, "end": 6155, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 6147, "end": 6155, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 6147, "end": 6153, "ctxt": 0 }, "kind": "number" } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6157, "end": 6182, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6161, "end": 6181, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6161, "end": 6164, "ctxt": 0 }, "value": "r16", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6167, "end": 6181, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6167, "end": 6172, "ctxt": 0 }, "value": "foo16", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6173, "end": 6180, "ctxt": 0 }, "value": "r16arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6183, "end": 6227, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6187, "end": 6226, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6187, "end": 6194, "ctxt": 0 }, "value": "r17arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6194, "end": 6226, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 6196, "end": 6226, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6204, "end": 6218, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6205, "end": 6218, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 6207, "end": 6218, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6208, "end": 6212, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6209, "end": 6212, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6211, "end": 6212, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6211, "end": 6212, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6214, "end": 6218, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6217, "end": 6218, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6217, "end": 6218, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 6200, "end": 6203, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 6201, "end": 6202, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 6201, "end": 6202, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6220, "end": 6226, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 6223, "end": 6226, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 6223, "end": 6224, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6223, "end": 6224, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6228, "end": 6253, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6232, "end": 6252, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6232, "end": 6235, "ctxt": 0 }, "value": "r17", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6238, "end": 6252, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6238, "end": 6243, "ctxt": 0 }, "value": "foo17", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6244, "end": 6251, "ctxt": 0 }, "value": "r17arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6261, "end": 6305, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6265, "end": 6304, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6265, "end": 6272, "ctxt": 0 }, "value": "r18arg1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6272, "end": 6304, "ctxt": 0 }, "typeAnnotation": { "type": "TsConstructorType", "span": { "start": 6274, "end": 6304, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6282, "end": 6296, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6283, "end": 6296, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 6285, "end": 6296, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6286, "end": 6290, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6287, "end": 6290, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6289, "end": 6290, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6289, "end": 6290, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6292, "end": 6296, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6295, "end": 6296, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6295, "end": 6296, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } ], "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 6278, "end": 6281, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 6279, "end": 6280, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 6279, "end": 6280, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6298, "end": 6304, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 6301, "end": 6304, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 6301, "end": 6302, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6301, "end": 6302, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "isAbstract": false } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6306, "end": 6331, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6310, "end": 6330, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6310, "end": 6313, "ctxt": 0 }, "value": "r18", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6316, "end": 6330, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6316, "end": 6321, "ctxt": 0 }, "value": "foo18", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6322, "end": 6329, "ctxt": 0 }, "value": "r18arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] } ], "interpreter": null }