{ "type": "Script", "span": { "start": 103, "end": 6103, "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": 322, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 296, "end": 322, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 297, "end": 322, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 299, "end": 322, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 300, "end": 309, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 301, "end": 309, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 303, "end": 309, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 311, "end": 322, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 314, "end": 322, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 314, "end": 320, "ctxt": 0 }, "kind": "number" } } } } } } } ], "decorators": [], "span": { "start": 274, "end": 334, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 323, "end": 333, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 325, "end": 333, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 332, "end": 333, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 352, "end": 356, "ctxt": 0 }, "value": "foo1", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 357, "end": 363, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 357, "end": 363, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 358, "end": 363, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 360, "end": 363, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 335, "end": 370, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 364, "end": 369, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 366, "end": 369, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 389, "end": 393, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 394, "end": 420, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 394, "end": 420, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 395, "end": 420, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 397, "end": 420, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 398, "end": 407, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 399, "end": 407, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 401, "end": 407, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 409, "end": 420, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 412, "end": 420, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 412, "end": 418, "ctxt": 0 }, "kind": "string" } } } } } } } ], "decorators": [], "span": { "start": 372, "end": 432, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 421, "end": 431, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 423, "end": 431, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 430, "end": 431, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 450, "end": 454, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 455, "end": 461, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 455, "end": 461, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 456, "end": 461, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 458, "end": 461, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 433, "end": 468, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 462, "end": 467, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 464, "end": 467, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 487, "end": 491, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 492, "end": 514, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 492, "end": 514, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 493, "end": 514, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 495, "end": 514, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 496, "end": 505, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 497, "end": 505, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 499, "end": 505, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 507, "end": 514, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 510, "end": 514, "ctxt": 0 }, "kind": "void" } } } } } } ], "decorators": [], "span": { "start": 470, "end": 526, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 515, "end": 525, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 517, "end": 525, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 524, "end": 525, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 544, "end": 548, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 549, "end": 555, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 549, "end": 555, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 550, "end": 555, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 552, "end": 555, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 527, "end": 562, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 556, "end": 561, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 558, "end": 561, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 581, "end": 585, "ctxt": 0 }, "value": "foo4", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 586, "end": 621, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 586, "end": 621, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 587, "end": 621, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 589, "end": 621, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 590, "end": 599, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 591, "end": 599, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 593, "end": 599, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 601, "end": 610, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 602, "end": 610, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 604, "end": 610, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 612, "end": 621, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 615, "end": 621, "ctxt": 0 }, "kind": "string" } } } } } } ], "decorators": [], "span": { "start": 564, "end": 633, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 622, "end": 632, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 624, "end": 632, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 631, "end": 632, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 651, "end": 655, "ctxt": 0 }, "value": "foo4", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 656, "end": 662, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 656, "end": 662, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 657, "end": 662, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 659, "end": 662, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 634, "end": 669, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 663, "end": 668, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 665, "end": 668, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 688, "end": 692, "ctxt": 0 }, "value": "foo5", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 693, "end": 734, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 693, "end": 734, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 694, "end": 734, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 696, "end": 734, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 697, "end": 723, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 698, "end": 723, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 700, "end": 723, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 701, "end": 712, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 704, "end": 712, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 706, "end": 712, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 714, "end": 723, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 717, "end": 723, "ctxt": 0 }, "kind": "number" } } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 725, "end": 734, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 728, "end": 734, "ctxt": 0 }, "kind": "string" } } } } } } ], "decorators": [], "span": { "start": 671, "end": 746, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 735, "end": 745, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 737, "end": 745, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 744, "end": 745, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 764, "end": 768, "ctxt": 0 }, "value": "foo5", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 769, "end": 775, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 769, "end": 775, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 770, "end": 775, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 772, "end": 775, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 747, "end": 782, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 776, "end": 781, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 778, "end": 781, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 801, "end": 805, "ctxt": 0 }, "value": "foo6", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 806, "end": 844, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 806, "end": 844, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 807, "end": 844, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 809, "end": 844, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 810, "end": 835, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 811, "end": 835, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 813, "end": 835, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 814, "end": 823, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 817, "end": 823, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 819, "end": 823, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 819, "end": 823, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 825, "end": 835, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 828, "end": 835, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 828, "end": 835, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 837, "end": 844, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 840, "end": 844, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 840, "end": 844, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 784, "end": 856, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 845, "end": 855, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 847, "end": 855, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 854, "end": 855, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 874, "end": 878, "ctxt": 0 }, "value": "foo6", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 879, "end": 885, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 879, "end": 885, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 880, "end": 885, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 882, "end": 885, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 857, "end": 892, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 886, "end": 891, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 888, "end": 891, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 911, "end": 915, "ctxt": 0 }, "value": "foo7", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 916, "end": 970, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 916, "end": 970, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 917, "end": 970, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 919, "end": 970, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 920, "end": 945, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 921, "end": 945, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 923, "end": 945, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 924, "end": 933, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 927, "end": 933, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 929, "end": 933, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 929, "end": 933, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 935, "end": 945, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 938, "end": 945, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 938, "end": 945, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 947, "end": 970, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 950, "end": 970, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 951, "end": 958, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 952, "end": 958, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 954, "end": 958, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 954, "end": 958, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 960, "end": 970, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 963, "end": 970, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 963, "end": 970, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } } } } ], "decorators": [], "span": { "start": 894, "end": 982, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 971, "end": 981, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 973, "end": 981, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 980, "end": 981, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1000, "end": 1004, "ctxt": 0 }, "value": "foo7", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1005, "end": 1011, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1005, "end": 1011, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1006, "end": 1011, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1008, "end": 1011, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 983, "end": 1018, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1012, "end": 1017, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1014, "end": 1017, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1037, "end": 1041, "ctxt": 0 }, "value": "foo8", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1042, "end": 1124, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1042, "end": 1124, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1043, "end": 1124, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1045, "end": 1124, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1046, "end": 1071, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1047, "end": 1071, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1049, "end": 1071, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1050, "end": 1059, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1053, "end": 1059, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1055, "end": 1059, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1055, "end": 1059, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1061, "end": 1071, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1064, "end": 1071, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1064, "end": 1071, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 1073, "end": 1099, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1074, "end": 1099, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1076, "end": 1099, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1077, "end": 1087, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1081, "end": 1087, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1083, "end": 1087, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1083, "end": 1087, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1089, "end": 1099, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1092, "end": 1099, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1092, "end": 1099, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1101, "end": 1124, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1104, "end": 1124, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1105, "end": 1112, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1106, "end": 1112, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1108, "end": 1112, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1108, "end": 1112, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1114, "end": 1124, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1117, "end": 1124, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1117, "end": 1124, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } } } } ], "decorators": [], "span": { "start": 1020, "end": 1136, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1125, "end": 1135, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1127, "end": 1135, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1134, "end": 1135, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1154, "end": 1158, "ctxt": 0 }, "value": "foo8", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1159, "end": 1165, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1159, "end": 1165, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1160, "end": 1165, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1162, "end": 1165, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1137, "end": 1172, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1166, "end": 1171, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1168, "end": 1171, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1191, "end": 1195, "ctxt": 0 }, "value": "foo9", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1196, "end": 1278, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1196, "end": 1278, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1197, "end": 1278, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1199, "end": 1278, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1200, "end": 1225, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1201, "end": 1225, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1203, "end": 1225, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1204, "end": 1213, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1207, "end": 1213, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1209, "end": 1213, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1209, "end": 1213, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1215, "end": 1225, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1218, "end": 1225, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1218, "end": 1225, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 1227, "end": 1253, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1228, "end": 1253, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1230, "end": 1253, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1231, "end": 1241, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1235, "end": 1241, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1237, "end": 1241, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1237, "end": 1241, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1243, "end": 1253, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1246, "end": 1253, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1246, "end": 1253, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1255, "end": 1278, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1258, "end": 1278, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1259, "end": 1266, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1260, "end": 1266, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1262, "end": 1266, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1262, "end": 1266, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1268, "end": 1278, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1271, "end": 1278, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1271, "end": 1278, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } } } } ], "decorators": [], "span": { "start": 1174, "end": 1290, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1279, "end": 1289, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1281, "end": 1289, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1288, "end": 1289, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1308, "end": 1312, "ctxt": 0 }, "value": "foo9", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1313, "end": 1319, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1313, "end": 1319, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1314, "end": 1319, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1316, "end": 1319, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1291, "end": 1326, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1320, "end": 1325, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1322, "end": 1325, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1345, "end": 1350, "ctxt": 0 }, "value": "foo10", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1351, "end": 1382, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1351, "end": 1382, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1352, "end": 1382, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1354, "end": 1382, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 1355, "end": 1370, "ctxt": 0 }, "rest": { "start": 1355, "end": 1358, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1358, "end": 1359, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1359, "end": 1370, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 1361, "end": 1370, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 1361, "end": 1368, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1361, "end": 1368, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1372, "end": 1382, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1375, "end": 1382, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1375, "end": 1382, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1328, "end": 1394, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1383, "end": 1393, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1385, "end": 1393, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1392, "end": 1393, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1412, "end": 1417, "ctxt": 0 }, "value": "foo10", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1418, "end": 1424, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1418, "end": 1424, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1419, "end": 1424, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1421, "end": 1424, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1395, "end": 1431, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1425, "end": 1430, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1427, "end": 1430, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1450, "end": 1455, "ctxt": 0 }, "value": "foo11", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1456, "end": 1520, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1456, "end": 1520, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1457, "end": 1520, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1459, "end": 1520, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1460, "end": 1478, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1461, "end": 1478, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1463, "end": 1478, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1465, "end": 1476, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1465, "end": 1468, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1468, "end": 1476, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1470, "end": 1476, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "Identifier", "span": { "start": 1480, "end": 1511, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1481, "end": 1511, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1483, "end": 1511, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1485, "end": 1497, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1485, "end": 1488, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1488, "end": 1496, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1490, "end": 1496, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1498, "end": 1509, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1498, "end": 1501, "ctxt": 0 }, "value": "bar", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1501, "end": 1509, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1503, "end": 1509, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1513, "end": 1520, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1516, "end": 1520, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1516, "end": 1520, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1433, "end": 1532, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1521, "end": 1531, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1523, "end": 1531, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1530, "end": 1531, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1550, "end": 1555, "ctxt": 0 }, "value": "foo11", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1556, "end": 1562, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1556, "end": 1562, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1557, "end": 1562, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1559, "end": 1562, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1533, "end": 1569, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1563, "end": 1568, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1565, "end": 1568, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1588, "end": 1593, "ctxt": 0 }, "value": "foo12", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1594, "end": 1651, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1594, "end": 1651, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1595, "end": 1651, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1597, "end": 1651, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1598, "end": 1612, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1599, "end": 1612, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1601, "end": 1612, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1601, "end": 1606, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1606, "end": 1612, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1607, "end": 1611, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1607, "end": 1611, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 1614, "end": 1632, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1615, "end": 1632, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1617, "end": 1632, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1617, "end": 1622, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1622, "end": 1632, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1623, "end": 1631, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1623, "end": 1631, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1634, "end": 1651, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1637, "end": 1651, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1637, "end": 1642, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1642, "end": 1651, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1643, "end": 1650, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1643, "end": 1650, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } } } } ], "decorators": [], "span": { "start": 1571, "end": 1663, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1652, "end": 1662, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1654, "end": 1662, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1661, "end": 1662, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1681, "end": 1686, "ctxt": 0 }, "value": "foo12", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1687, "end": 1693, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1687, "end": 1693, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1688, "end": 1693, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1690, "end": 1693, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1664, "end": 1700, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1694, "end": 1699, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1696, "end": 1699, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1719, "end": 1724, "ctxt": 0 }, "value": "foo13", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1725, "end": 1781, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1725, "end": 1781, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1726, "end": 1781, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1728, "end": 1781, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1729, "end": 1743, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1730, "end": 1743, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1732, "end": 1743, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1732, "end": 1737, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1737, "end": 1743, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1738, "end": 1742, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1738, "end": 1742, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 1745, "end": 1762, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1746, "end": 1762, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1748, "end": 1762, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1748, "end": 1753, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1753, "end": 1762, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1754, "end": 1761, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1754, "end": 1761, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1764, "end": 1781, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1767, "end": 1781, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1767, "end": 1772, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 1772, "end": 1781, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 1773, "end": 1780, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1773, "end": 1780, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } } } } ], "decorators": [], "span": { "start": 1702, "end": 1793, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1782, "end": 1792, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1784, "end": 1792, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1791, "end": 1792, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1811, "end": 1816, "ctxt": 0 }, "value": "foo13", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1817, "end": 1823, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1817, "end": 1823, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1818, "end": 1823, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1820, "end": 1823, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1794, "end": 1830, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1824, "end": 1829, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1826, "end": 1829, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1849, "end": 1854, "ctxt": 0 }, "value": "foo14", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1855, "end": 1897, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1855, "end": 1897, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1856, "end": 1897, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1858, "end": 1897, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1859, "end": 1886, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1860, "end": 1886, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1862, "end": 1886, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 1864, "end": 1874, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1864, "end": 1865, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1865, "end": 1873, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1867, "end": 1873, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 1875, "end": 1884, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 1875, "end": 1876, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1876, "end": 1884, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1878, "end": 1884, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1888, "end": 1897, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1891, "end": 1897, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1891, "end": 1897, "ctxt": 0 }, "value": "Object", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1832, "end": 1909, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1898, "end": 1908, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 1900, "end": 1908, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1907, "end": 1908, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1927, "end": 1932, "ctxt": 0 }, "value": "foo14", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1933, "end": 1939, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1933, "end": 1939, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1934, "end": 1939, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1936, "end": 1939, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1910, "end": 1946, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1940, "end": 1945, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1942, "end": 1945, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1965, "end": 1970, "ctxt": 0 }, "value": "foo15", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1971, "end": 2033, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1971, "end": 2033, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1972, "end": 2033, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1974, "end": 2033, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 1981, "end": 2003, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1982, "end": 1991, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1983, "end": 1991, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1985, "end": 1991, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1992, "end": 2002, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 1994, "end": 2002, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 1994, "end": 2000, "ctxt": 0 }, "kind": "number" } } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2008, "end": 2030, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2009, "end": 2018, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2010, "end": 2018, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2012, "end": 2018, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2019, "end": 2029, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2021, "end": 2029, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2021, "end": 2027, "ctxt": 0 }, "kind": "string" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 1948, "end": 2045, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2034, "end": 2044, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2036, "end": 2044, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2043, "end": 2044, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2063, "end": 2068, "ctxt": 0 }, "value": "foo15", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2069, "end": 2075, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2069, "end": 2075, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2070, "end": 2075, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2072, "end": 2075, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2046, "end": 2082, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2076, "end": 2081, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2078, "end": 2081, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2101, "end": 2106, "ctxt": 0 }, "value": "foo16", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2107, "end": 2192, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2107, "end": 2192, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2108, "end": 2192, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2110, "end": 2192, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 2116, "end": 2152, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2136, "end": 2140, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2137, "end": 2140, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2139, "end": 2140, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2139, "end": 2140, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2141, "end": 2151, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2143, "end": 2151, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2143, "end": 2149, "ctxt": 0 }, "kind": "number" } } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2116, "end": 2135, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2117, "end": 2134, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2117, "end": 2118, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 2127, "end": 2134, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2127, "end": 2134, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] } }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2157, "end": 2190, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2174, "end": 2178, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2175, "end": 2178, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2177, "end": 2178, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2177, "end": 2178, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2179, "end": 2189, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2181, "end": 2189, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2181, "end": 2187, "ctxt": 0 }, "kind": "number" } } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2157, "end": 2173, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2158, "end": 2172, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2158, "end": 2159, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 2168, "end": 2172, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2168, "end": 2172, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] } } ] } } } } ], "decorators": [], "span": { "start": 2084, "end": 2204, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2193, "end": 2203, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2195, "end": 2203, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2202, "end": 2203, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2222, "end": 2227, "ctxt": 0 }, "value": "foo16", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2228, "end": 2234, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2228, "end": 2234, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2229, "end": 2234, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2231, "end": 2234, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2205, "end": 2241, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2235, "end": 2240, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2237, "end": 2240, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2260, "end": 2265, "ctxt": 0 }, "value": "foo17", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2266, "end": 2356, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2266, "end": 2356, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2267, "end": 2356, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2269, "end": 2356, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 2275, "end": 2312, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2276, "end": 2300, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2277, "end": 2300, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2279, "end": 2300, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2280, "end": 2289, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2281, "end": 2289, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2283, "end": 2289, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2291, "end": 2300, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2294, "end": 2300, "ctxt": 0 }, "kind": "number" } } } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2301, "end": 2311, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2303, "end": 2311, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2303, "end": 2309, "ctxt": 0 }, "kind": "number" } } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2317, "end": 2354, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2318, "end": 2342, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2319, "end": 2342, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2321, "end": 2342, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2322, "end": 2331, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2323, "end": 2331, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2325, "end": 2331, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2333, "end": 2342, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2336, "end": 2342, "ctxt": 0 }, "kind": "string" } } } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2343, "end": 2353, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2345, "end": 2353, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2345, "end": 2351, "ctxt": 0 }, "kind": "string" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 2243, "end": 2368, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2357, "end": 2367, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2359, "end": 2367, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2366, "end": 2367, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2386, "end": 2391, "ctxt": 0 }, "value": "foo17", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2392, "end": 2398, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2392, "end": 2398, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2393, "end": 2398, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2395, "end": 2398, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2369, "end": 2405, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2399, "end": 2404, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2401, "end": 2404, "ctxt": 0 }, "kind": "any" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2424, "end": 2429, "ctxt": 0 }, "value": "foo18", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2430, "end": 2600, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2430, "end": 2600, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2431, "end": 2600, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2433, "end": 2600, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 2439, "end": 2517, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2440, "end": 2508, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2441, "end": 2508, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2443, "end": 2508, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 2453, "end": 2473, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2454, "end": 2463, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2455, "end": 2463, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2457, "end": 2463, "ctxt": 0 }, "kind": "number" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2464, "end": 2472, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2466, "end": 2472, "ctxt": 0 }, "kind": "number" } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2482, "end": 2502, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2483, "end": 2492, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2484, "end": 2492, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2486, "end": 2492, "ctxt": 0 }, "kind": "string" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2493, "end": 2501, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2495, "end": 2501, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2509, "end": 2516, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2511, "end": 2516, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2511, "end": 2514, "ctxt": 0 }, "kind": "any" } } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2522, "end": 2598, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2523, "end": 2589, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2524, "end": 2589, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 2526, "end": 2589, "ctxt": 0 }, "members": [ { "type": "TsCallSignatureDeclaration", "span": { "start": 2536, "end": 2558, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2537, "end": 2547, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2538, "end": 2547, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2540, "end": 2547, "ctxt": 0 }, "kind": "boolean" } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2548, "end": 2557, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2550, "end": 2557, "ctxt": 0 }, "kind": "boolean" } }, "typeParams": null }, { "type": "TsCallSignatureDeclaration", "span": { "start": 2567, "end": 2583, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2568, "end": 2575, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2569, "end": 2575, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2571, "end": 2575, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2571, "end": 2575, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2576, "end": 2582, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2578, "end": 2582, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2578, "end": 2582, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } } ], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2590, "end": 2597, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2592, "end": 2597, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2592, "end": 2595, "ctxt": 0 }, "kind": "any" } } }, "typeParams": null } ] } } } } ], "decorators": [], "span": { "start": 2407, "end": 2612, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2601, "end": 2611, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeQuery", "span": { "start": 2603, "end": 2611, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 2610, "end": 2611, "ctxt": 0 }, "value": "a", "optional": false }, "typeArguments": null } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2630, "end": 2635, "ctxt": 0 }, "value": "foo18", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2636, "end": 2642, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2636, "end": 2642, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2637, "end": 2642, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2639, "end": 2642, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 2613, "end": 2649, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2643, "end": 2648, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2645, "end": 2648, "ctxt": 0 }, "kind": "any" } } }, { "type": "VariableDeclaration", "span": { "start": 2651, "end": 2681, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2655, "end": 2680, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2655, "end": 2661, "ctxt": 0 }, "value": "r1arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 2664, "end": 2680, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2668, "end": 2672, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2669, "end": 2672, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2671, "end": 2672, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2671, "end": 2672, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "ArrayExpression", "span": { "start": 2677, "end": 2680, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2678, "end": 2679, "ctxt": 0 }, "value": "x", "optional": false } } ] }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2664, "end": 2667, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2665, "end": 2666, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2665, "end": 2666, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2682, "end": 2714, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2686, "end": 2713, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2686, "end": 2692, "ctxt": 0 }, "value": "r1arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 2695, "end": 2713, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2696, "end": 2705, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2697, "end": 2705, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2699, "end": 2705, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "ArrayExpression", "span": { "start": 2710, "end": 2713, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2711, "end": 2712, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2715, "end": 2737, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2719, "end": 2736, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2719, "end": 2721, "ctxt": 0 }, "value": "r1", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2724, "end": 2736, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2724, "end": 2728, "ctxt": 0 }, "value": "foo1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2729, "end": 2735, "ctxt": 0 }, "value": "r1arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2793, "end": 2820, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2797, "end": 2819, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2797, "end": 2800, "ctxt": 0 }, "value": "r1a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 2803, "end": 2819, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2804, "end": 2810, "ctxt": 0 }, "value": "r1arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2812, "end": 2818, "ctxt": 0 }, "value": "r1arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2870, "end": 2897, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2874, "end": 2896, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2874, "end": 2877, "ctxt": 0 }, "value": "r1b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 2880, "end": 2896, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2881, "end": 2887, "ctxt": 0 }, "value": "r1arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2889, "end": 2895, "ctxt": 0 }, "value": "r1arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2948, "end": 2979, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2952, "end": 2978, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2952, "end": 2958, "ctxt": 0 }, "value": "r2arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 2961, "end": 2978, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2965, "end": 2969, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2966, "end": 2969, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2968, "end": 2969, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2968, "end": 2969, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "ArrayExpression", "span": { "start": 2974, "end": 2978, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2975, "end": 2977, "ctxt": 0 }, "value": "", "raw": "''" } } ] }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2961, "end": 2964, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2962, "end": 2963, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2962, "end": 2963, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2980, "end": 3013, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2984, "end": 3012, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2984, "end": 2990, "ctxt": 0 }, "value": "r2arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 2993, "end": 3012, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2994, "end": 3003, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2995, "end": 3003, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2997, "end": 3003, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "ArrayExpression", "span": { "start": 3008, "end": 3012, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3009, "end": 3011, "ctxt": 0 }, "value": "", "raw": "''" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3014, "end": 3036, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3018, "end": 3035, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3018, "end": 3020, "ctxt": 0 }, "value": "r2", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3023, "end": 3035, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3023, "end": 3027, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3028, "end": 3034, "ctxt": 0 }, "value": "r2arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3038, "end": 3065, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3042, "end": 3064, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3042, "end": 3045, "ctxt": 0 }, "value": "r2a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3048, "end": 3064, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3049, "end": 3055, "ctxt": 0 }, "value": "r2arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3057, "end": 3063, "ctxt": 0 }, "value": "r2arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3066, "end": 3093, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3070, "end": 3092, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3070, "end": 3073, "ctxt": 0 }, "value": "r2b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3076, "end": 3092, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3077, "end": 3083, "ctxt": 0 }, "value": "r2arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3085, "end": 3091, "ctxt": 0 }, "value": "r2arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3095, "end": 3123, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3099, "end": 3122, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3099, "end": 3105, "ctxt": 0 }, "value": "r3arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3108, "end": 3122, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3112, "end": 3116, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3113, "end": 3116, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3115, "end": 3116, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3115, "end": 3116, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 3121, "end": 3122, "ctxt": 0 }, "value": "x", "optional": false }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3108, "end": 3111, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3109, "end": 3110, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3109, "end": 3110, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3124, "end": 3156, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3128, "end": 3155, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3128, "end": 3134, "ctxt": 0 }, "value": "r3arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3137, "end": 3155, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3138, "end": 3147, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3139, "end": 3147, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3141, "end": 3147, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "BlockStatement", "span": { "start": 3152, "end": 3155, "ctxt": 0 }, "stmts": [] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3157, "end": 3179, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3161, "end": 3178, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3161, "end": 3163, "ctxt": 0 }, "value": "r3", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3166, "end": 3178, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3166, "end": 3170, "ctxt": 0 }, "value": "foo3", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3171, "end": 3177, "ctxt": 0 }, "value": "r3arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3181, "end": 3208, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3185, "end": 3207, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3185, "end": 3188, "ctxt": 0 }, "value": "r3a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3191, "end": 3207, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3192, "end": 3198, "ctxt": 0 }, "value": "r3arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3200, "end": 3206, "ctxt": 0 }, "value": "r3arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3209, "end": 3236, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3213, "end": 3235, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3213, "end": 3216, "ctxt": 0 }, "value": "r3b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3219, "end": 3235, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3220, "end": 3226, "ctxt": 0 }, "value": "r3arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3228, "end": 3234, "ctxt": 0 }, "value": "r3arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3238, "end": 3275, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3242, "end": 3274, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3242, "end": 3248, "ctxt": 0 }, "value": "r4arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3251, "end": 3274, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3258, "end": 3262, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3259, "end": 3262, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3261, "end": 3262, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3261, "end": 3262, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "Identifier", "span": { "start": 3264, "end": 3268, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3265, "end": 3268, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3267, "end": 3268, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3267, "end": 3268, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 3273, "end": 3274, "ctxt": 0 }, "value": "x", "optional": false }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3251, "end": 3257, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3252, "end": 3253, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3252, "end": 3253, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3255, "end": 3256, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3255, "end": 3256, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3276, "end": 3318, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3280, "end": 3317, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3280, "end": 3286, "ctxt": 0 }, "value": "r4arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3289, "end": 3317, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3290, "end": 3299, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3291, "end": 3299, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3293, "end": 3299, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 3301, "end": 3310, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3302, "end": 3310, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3304, "end": 3310, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "StringLiteral", "span": { "start": 3315, "end": 3317, "ctxt": 0 }, "value": "", "raw": "''" }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3319, "end": 3341, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3323, "end": 3340, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3323, "end": 3325, "ctxt": 0 }, "value": "r4", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3328, "end": 3340, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3328, "end": 3332, "ctxt": 0 }, "value": "foo4", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3333, "end": 3339, "ctxt": 0 }, "value": "r4arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3349, "end": 3376, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3353, "end": 3375, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3353, "end": 3356, "ctxt": 0 }, "value": "r4a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3359, "end": 3375, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3360, "end": 3366, "ctxt": 0 }, "value": "r4arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3368, "end": 3374, "ctxt": 0 }, "value": "r4arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3377, "end": 3404, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3381, "end": 3403, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3381, "end": 3384, "ctxt": 0 }, "value": "r4b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3387, "end": 3403, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3388, "end": 3394, "ctxt": 0 }, "value": "r4arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3396, "end": 3402, "ctxt": 0 }, "value": "r4arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3406, "end": 3455, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3410, "end": 3454, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3410, "end": 3416, "ctxt": 0 }, "value": "r5arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3419, "end": 3454, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3426, "end": 3442, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3427, "end": 3442, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3429, "end": 3442, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3430, "end": 3436, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3433, "end": 3436, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3435, "end": 3436, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3435, "end": 3436, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3438, "end": 3442, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3441, "end": 3442, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3441, "end": 3442, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 3447, "end": 3454, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 3450, "end": 3454, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3448, "end": 3449, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3448, "end": 3449, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3419, "end": 3425, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3420, "end": 3421, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3420, "end": 3421, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3423, "end": 3424, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3423, "end": 3424, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3456, "end": 3504, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3460, "end": 3503, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3460, "end": 3466, "ctxt": 0 }, "value": "r5arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3469, "end": 3503, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3470, "end": 3496, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3471, "end": 3496, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3473, "end": 3496, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3474, "end": 3485, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3477, "end": 3485, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3479, "end": 3485, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3487, "end": 3496, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3490, "end": 3496, "ctxt": 0 }, "kind": "number" } } } } } ], "body": { "type": "StringLiteral", "span": { "start": 3501, "end": 3503, "ctxt": 0 }, "value": "", "raw": "''" }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3505, "end": 3527, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3509, "end": 3526, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3509, "end": 3511, "ctxt": 0 }, "value": "r5", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3514, "end": 3526, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3514, "end": 3518, "ctxt": 0 }, "value": "foo5", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3519, "end": 3525, "ctxt": 0 }, "value": "r5arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3535, "end": 3562, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3539, "end": 3561, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3539, "end": 3542, "ctxt": 0 }, "value": "r5a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3545, "end": 3561, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3546, "end": 3552, "ctxt": 0 }, "value": "r5arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3554, "end": 3560, "ctxt": 0 }, "value": "r5arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3563, "end": 3590, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3567, "end": 3589, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3567, "end": 3570, "ctxt": 0 }, "value": "r5b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3573, "end": 3589, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3574, "end": 3580, "ctxt": 0 }, "value": "r5arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3582, "end": 3588, "ctxt": 0 }, "value": "r5arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3592, "end": 3670, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3596, "end": 3669, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3596, "end": 3602, "ctxt": 0 }, "value": "r6arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3605, "end": 3669, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3641, "end": 3657, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3642, "end": 3657, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3644, "end": 3657, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3645, "end": 3651, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3648, "end": 3651, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3650, "end": 3651, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3650, "end": 3651, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3653, "end": 3657, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3656, "end": 3657, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3656, "end": 3657, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 3662, "end": 3669, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 3665, "end": 3669, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3663, "end": 3664, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3663, "end": 3664, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3605, "end": 3640, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3606, "end": 3620, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3606, "end": 3607, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3616, "end": 3620, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3616, "end": 3620, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3622, "end": 3639, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3622, "end": 3623, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3632, "end": 3639, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3632, "end": 3639, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3671, "end": 3726, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3675, "end": 3725, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3675, "end": 3681, "ctxt": 0 }, "value": "r6arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3684, "end": 3725, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3685, "end": 3710, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3686, "end": 3710, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3688, "end": 3710, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3689, "end": 3698, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3692, "end": 3698, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3694, "end": 3698, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3694, "end": 3698, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3700, "end": 3710, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3703, "end": 3710, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3703, "end": 3710, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 3715, "end": 3725, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 3721, "end": 3725, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3716, "end": 3720, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3716, "end": 3720, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3727, "end": 3749, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3731, "end": 3748, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3731, "end": 3733, "ctxt": 0 }, "value": "r6", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3736, "end": 3748, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3736, "end": 3740, "ctxt": 0 }, "value": "foo6", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3741, "end": 3747, "ctxt": 0 }, "value": "r6arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3757, "end": 3784, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3761, "end": 3783, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3761, "end": 3764, "ctxt": 0 }, "value": "r6a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3767, "end": 3783, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3768, "end": 3774, "ctxt": 0 }, "value": "r6arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3776, "end": 3782, "ctxt": 0 }, "value": "r6arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3785, "end": 3812, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3789, "end": 3811, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3789, "end": 3792, "ctxt": 0 }, "value": "r6b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 3795, "end": 3811, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3796, "end": 3802, "ctxt": 0 }, "value": "r6arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3804, "end": 3810, "ctxt": 0 }, "value": "r6arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3814, "end": 3902, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3818, "end": 3901, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3818, "end": 3824, "ctxt": 0 }, "value": "r7arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3827, "end": 3901, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3863, "end": 3879, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3864, "end": 3879, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3866, "end": 3879, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3867, "end": 3873, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3870, "end": 3873, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3872, "end": 3873, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3872, "end": 3873, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3875, "end": 3879, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3878, "end": 3879, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3878, "end": 3879, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 3884, "end": 3901, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3885, "end": 3889, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3886, "end": 3889, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3888, "end": 3889, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3888, "end": 3889, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 3894, "end": 3901, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 3897, "end": 3901, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3895, "end": 3896, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3895, "end": 3896, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3827, "end": 3862, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3828, "end": 3842, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3828, "end": 3829, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3838, "end": 3842, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3838, "end": 3842, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3844, "end": 3861, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3844, "end": 3845, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 3854, "end": 3861, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3854, "end": 3861, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3903, "end": 3974, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3907, "end": 3973, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3907, "end": 3913, "ctxt": 0 }, "value": "r7arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 3916, "end": 3973, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3917, "end": 3942, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3918, "end": 3942, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3920, "end": 3942, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3921, "end": 3930, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3924, "end": 3930, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3926, "end": 3930, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3926, "end": 3930, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3932, "end": 3942, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3935, "end": 3942, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3935, "end": 3942, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 3947, "end": 3973, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3948, "end": 3955, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3949, "end": 3955, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3951, "end": 3955, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3951, "end": 3955, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 3960, "end": 3973, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 3969, "end": 3973, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3961, "end": 3968, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3961, "end": 3968, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3975, "end": 3997, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3979, "end": 3996, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3979, "end": 3981, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3984, "end": 3996, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3984, "end": 3988, "ctxt": 0 }, "value": "foo7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3989, "end": 3995, "ctxt": 0 }, "value": "r7arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4005, "end": 4032, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4009, "end": 4031, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4009, "end": 4012, "ctxt": 0 }, "value": "r7a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4015, "end": 4031, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4016, "end": 4022, "ctxt": 0 }, "value": "r7arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4024, "end": 4030, "ctxt": 0 }, "value": "r7arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4033, "end": 4060, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4037, "end": 4059, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4037, "end": 4040, "ctxt": 0 }, "value": "r7b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4043, "end": 4059, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4044, "end": 4050, "ctxt": 0 }, "value": "r7arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4052, "end": 4058, "ctxt": 0 }, "value": "r7arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4062, "end": 4169, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4066, "end": 4168, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4066, "end": 4072, "ctxt": 0 }, "value": "r8arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4075, "end": 4168, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4111, "end": 4127, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4112, "end": 4127, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4114, "end": 4127, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4115, "end": 4121, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4118, "end": 4121, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4120, "end": 4121, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4120, "end": 4121, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4123, "end": 4127, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4126, "end": 4127, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4126, "end": 4127, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 4129, "end": 4146, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4130, "end": 4146, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4132, "end": 4146, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4133, "end": 4140, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4137, "end": 4140, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4139, "end": 4140, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4139, "end": 4140, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4142, "end": 4146, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4145, "end": 4146, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4145, "end": 4146, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 4151, "end": 4168, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4152, "end": 4156, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4153, "end": 4156, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4155, "end": 4156, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4155, "end": 4156, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 4161, "end": 4168, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 4164, "end": 4168, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4162, "end": 4163, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4162, "end": 4163, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 4075, "end": 4110, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4076, "end": 4090, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4076, "end": 4077, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4086, "end": 4090, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4086, "end": 4090, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4092, "end": 4109, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4092, "end": 4093, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4102, "end": 4109, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4102, "end": 4109, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4170, "end": 4269, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4174, "end": 4268, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4174, "end": 4180, "ctxt": 0 }, "value": "r8arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4183, "end": 4268, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4184, "end": 4209, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4185, "end": 4209, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4187, "end": 4209, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4188, "end": 4197, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4191, "end": 4197, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4193, "end": 4197, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4193, "end": 4197, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4199, "end": 4209, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4202, "end": 4209, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4202, "end": 4209, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 4211, "end": 4237, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4212, "end": 4237, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4214, "end": 4237, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4215, "end": 4225, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4219, "end": 4225, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4221, "end": 4225, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4221, "end": 4225, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4227, "end": 4237, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4230, "end": 4237, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4230, "end": 4237, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 4242, "end": 4268, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4243, "end": 4250, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4244, "end": 4250, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4246, "end": 4250, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4246, "end": 4250, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 4255, "end": 4268, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 4264, "end": 4268, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4256, "end": 4263, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4256, "end": 4263, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4270, "end": 4292, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4274, "end": 4291, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4274, "end": 4276, "ctxt": 0 }, "value": "r8", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4279, "end": 4291, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4279, "end": 4283, "ctxt": 0 }, "value": "foo8", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4284, "end": 4290, "ctxt": 0 }, "value": "r8arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4300, "end": 4327, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4304, "end": 4326, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4304, "end": 4307, "ctxt": 0 }, "value": "r8a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4310, "end": 4326, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4311, "end": 4317, "ctxt": 0 }, "value": "r8arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4319, "end": 4325, "ctxt": 0 }, "value": "r8arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4328, "end": 4355, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4332, "end": 4354, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4332, "end": 4335, "ctxt": 0 }, "value": "r8b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4338, "end": 4354, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4339, "end": 4345, "ctxt": 0 }, "value": "r8arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4347, "end": 4353, "ctxt": 0 }, "value": "r8arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4357, "end": 4492, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4361, "end": 4491, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4361, "end": 4367, "ctxt": 0 }, "value": "r9arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4370, "end": 4491, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4406, "end": 4422, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4407, "end": 4422, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4409, "end": 4422, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4410, "end": 4416, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4413, "end": 4416, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4415, "end": 4416, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4415, "end": 4416, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4418, "end": 4422, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4421, "end": 4422, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4421, "end": 4422, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 4424, "end": 4469, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4425, "end": 4469, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4427, "end": 4469, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4428, "end": 4463, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4432, "end": 4463, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4434, "end": 4463, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 4436, "end": 4448, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4436, "end": 4439, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4439, "end": 4447, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4441, "end": 4447, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4449, "end": 4461, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4449, "end": 4453, "ctxt": 0 }, "value": "bing", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4453, "end": 4461, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4455, "end": 4461, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4465, "end": 4469, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4468, "end": 4469, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4468, "end": 4469, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 4474, "end": 4491, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4475, "end": 4479, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4476, "end": 4479, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4478, "end": 4479, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4478, "end": 4479, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 4484, "end": 4491, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 4487, "end": 4491, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4485, "end": 4486, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4485, "end": 4486, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 4370, "end": 4405, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4371, "end": 4385, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4371, "end": 4372, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4381, "end": 4385, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4381, "end": 4385, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4387, "end": 4404, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4387, "end": 4388, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4397, "end": 4404, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4397, "end": 4404, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4493, "end": 4592, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4497, "end": 4591, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4497, "end": 4503, "ctxt": 0 }, "value": "r9arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4506, "end": 4591, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4507, "end": 4532, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4508, "end": 4532, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4510, "end": 4532, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4511, "end": 4520, "ctxt": 0 }, "value": "arg", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4514, "end": 4520, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4516, "end": 4520, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4516, "end": 4520, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4522, "end": 4532, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4525, "end": 4532, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4525, "end": 4532, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } }, { "type": "Identifier", "span": { "start": 4534, "end": 4560, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4535, "end": 4560, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4537, "end": 4560, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4538, "end": 4548, "ctxt": 0 }, "value": "arg2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4542, "end": 4548, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4544, "end": 4548, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4544, "end": 4548, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4550, "end": 4560, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4553, "end": 4560, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4553, "end": 4560, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "ArrowFunctionExpression", "span": { "start": 4565, "end": 4591, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4566, "end": 4573, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4567, "end": 4573, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4569, "end": 4573, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4569, "end": 4573, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 4578, "end": 4591, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 4587, "end": 4591, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4579, "end": 4586, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4579, "end": 4586, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4593, "end": 4615, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4597, "end": 4614, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4597, "end": 4599, "ctxt": 0 }, "value": "r9", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4602, "end": 4614, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4602, "end": 4606, "ctxt": 0 }, "value": "foo9", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4607, "end": 4613, "ctxt": 0 }, "value": "r9arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4623, "end": 4650, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4627, "end": 4649, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4627, "end": 4630, "ctxt": 0 }, "value": "r9a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4633, "end": 4649, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4634, "end": 4640, "ctxt": 0 }, "value": "r9arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4642, "end": 4648, "ctxt": 0 }, "value": "r9arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4651, "end": 4678, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4655, "end": 4677, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4655, "end": 4658, "ctxt": 0 }, "value": "r9b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4661, "end": 4677, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4662, "end": 4668, "ctxt": 0 }, "value": "r9arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4670, "end": 4676, "ctxt": 0 }, "value": "r9arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4680, "end": 4733, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4684, "end": 4732, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4684, "end": 4691, "ctxt": 0 }, "value": "r10arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4694, "end": 4732, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4714, "end": 4723, "ctxt": 0 }, "rest": { "start": 4714, "end": 4717, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4717, "end": 4718, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4718, "end": 4723, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 4720, "end": 4723, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 4720, "end": 4721, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4720, "end": 4721, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "body": { "type": "MemberExpression", "span": { "start": 4728, "end": 4732, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 4728, "end": 4729, "ctxt": 0 }, "value": "x", "optional": false }, "property": { "type": "Computed", "span": { "start": 4729, "end": 4732, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 4730, "end": 4731, "ctxt": 0 }, "value": 0.0, "raw": "0" } } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 4694, "end": 4713, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4695, "end": 4712, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4695, "end": 4696, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4705, "end": 4712, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4705, "end": 4712, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4734, "end": 4783, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4738, "end": 4782, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4738, "end": 4745, "ctxt": 0 }, "value": "r10arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4748, "end": 4782, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4749, "end": 4764, "ctxt": 0 }, "rest": { "start": 4749, "end": 4752, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4752, "end": 4753, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4753, "end": 4764, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 4755, "end": 4764, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 4755, "end": 4762, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4755, "end": 4762, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 4769, "end": 4782, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 4778, "end": 4782, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4770, "end": 4777, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4770, "end": 4777, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4784, "end": 4809, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4788, "end": 4808, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4788, "end": 4791, "ctxt": 0 }, "value": "r10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4794, "end": 4808, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4794, "end": 4799, "ctxt": 0 }, "value": "foo10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4800, "end": 4807, "ctxt": 0 }, "value": "r10arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4817, "end": 4847, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4821, "end": 4846, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4821, "end": 4825, "ctxt": 0 }, "value": "r10a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4828, "end": 4846, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4829, "end": 4836, "ctxt": 0 }, "value": "r10arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4838, "end": 4845, "ctxt": 0 }, "value": "r10arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4848, "end": 4878, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4852, "end": 4877, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4852, "end": 4856, "ctxt": 0 }, "value": "r10b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 4859, "end": 4877, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4860, "end": 4867, "ctxt": 0 }, "value": "r10arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 4869, "end": 4876, "ctxt": 0 }, "value": "r10arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4880, "end": 4928, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4884, "end": 4927, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4884, "end": 4891, "ctxt": 0 }, "value": "r11arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4894, "end": 4927, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4911, "end": 4915, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4912, "end": 4915, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4914, "end": 4915, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4914, "end": 4915, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "Identifier", "span": { "start": 4917, "end": 4921, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4918, "end": 4921, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4920, "end": 4921, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4920, "end": 4921, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 4926, "end": 4927, "ctxt": 0 }, "value": "x", "optional": false }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 4894, "end": 4910, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4895, "end": 4909, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4895, "end": 4896, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 4905, "end": 4909, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4905, "end": 4909, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 4929, "end": 5011, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4933, "end": 5010, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4933, "end": 4940, "ctxt": 0 }, "value": "r11arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 4943, "end": 5010, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4944, "end": 4962, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4945, "end": 4962, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4947, "end": 4962, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 4949, "end": 4960, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4949, "end": 4952, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4952, "end": 4960, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4954, "end": 4960, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } }, { "type": "Identifier", "span": { "start": 4964, "end": 4995, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4965, "end": 4995, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4967, "end": 4995, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 4969, "end": 4981, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4969, "end": 4972, "ctxt": 0 }, "value": "foo", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4972, "end": 4980, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4974, "end": 4980, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4982, "end": 4993, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4982, "end": 4985, "ctxt": 0 }, "value": "bar", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4985, "end": 4993, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4987, "end": 4993, "ctxt": 0 }, "kind": "string" } }, "typeParams": null } ] } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5000, "end": 5010, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5006, "end": 5010, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5001, "end": 5005, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5001, "end": 5005, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5012, "end": 5037, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5016, "end": 5036, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5016, "end": 5019, "ctxt": 0 }, "value": "r11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5022, "end": 5036, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5022, "end": 5027, "ctxt": 0 }, "value": "foo11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5028, "end": 5035, "ctxt": 0 }, "value": "r11arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5045, "end": 5075, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5049, "end": 5074, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5049, "end": 5053, "ctxt": 0 }, "value": "r11a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5056, "end": 5074, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5057, "end": 5064, "ctxt": 0 }, "value": "r11arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5066, "end": 5073, "ctxt": 0 }, "value": "r11arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5076, "end": 5106, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5080, "end": 5105, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5080, "end": 5084, "ctxt": 0 }, "value": "r11b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5087, "end": 5105, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5088, "end": 5095, "ctxt": 0 }, "value": "r11arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5097, "end": 5104, "ctxt": 0 }, "value": "r11arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5108, "end": 5192, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5112, "end": 5191, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5112, "end": 5119, "ctxt": 0 }, "value": "r12arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5122, "end": 5191, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5146, "end": 5160, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5147, "end": 5160, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5149, "end": 5160, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5149, "end": 5154, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5154, "end": 5160, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5155, "end": 5159, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5155, "end": 5159, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5162, "end": 5166, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5163, "end": 5166, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5165, "end": 5166, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5165, "end": 5166, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5171, "end": 5191, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5187, "end": 5191, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5172, "end": 5186, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5172, "end": 5177, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5177, "end": 5186, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5178, "end": 5185, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5178, "end": 5185, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5122, "end": 5145, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5123, "end": 5144, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5123, "end": 5124, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5133, "end": 5144, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5133, "end": 5138, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5138, "end": 5144, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5139, "end": 5143, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5139, "end": 5143, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5193, "end": 5268, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5197, "end": 5267, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5197, "end": 5204, "ctxt": 0 }, "value": "r12arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5207, "end": 5267, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5208, "end": 5222, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5209, "end": 5222, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5211, "end": 5222, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5211, "end": 5216, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5216, "end": 5222, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5217, "end": 5221, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5217, "end": 5221, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5224, "end": 5242, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5225, "end": 5242, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5227, "end": 5242, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5227, "end": 5232, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5232, "end": 5242, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5233, "end": 5241, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5233, "end": 5241, "ctxt": 0 }, "value": "Derived2", "optional": false }, "typeParams": null } ] } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5247, "end": 5267, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5263, "end": 5267, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5248, "end": 5262, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5248, "end": 5253, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5253, "end": 5262, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5254, "end": 5261, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5254, "end": 5261, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5269, "end": 5294, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5273, "end": 5293, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5273, "end": 5276, "ctxt": 0 }, "value": "r12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5279, "end": 5293, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5279, "end": 5284, "ctxt": 0 }, "value": "foo12", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5285, "end": 5292, "ctxt": 0 }, "value": "r12arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5302, "end": 5332, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5306, "end": 5331, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5306, "end": 5310, "ctxt": 0 }, "value": "r12a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5313, "end": 5331, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5314, "end": 5321, "ctxt": 0 }, "value": "r12arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5323, "end": 5330, "ctxt": 0 }, "value": "r12arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5333, "end": 5363, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5337, "end": 5362, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5337, "end": 5341, "ctxt": 0 }, "value": "r12b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5344, "end": 5362, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5345, "end": 5352, "ctxt": 0 }, "value": "r12arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5354, "end": 5361, "ctxt": 0 }, "value": "r12arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5365, "end": 5433, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5369, "end": 5432, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5369, "end": 5376, "ctxt": 0 }, "value": "r13arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5379, "end": 5432, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5406, "end": 5420, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5407, "end": 5420, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5409, "end": 5420, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5409, "end": 5414, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5414, "end": 5420, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5415, "end": 5419, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5415, "end": 5419, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5422, "end": 5426, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5423, "end": 5426, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5425, "end": 5426, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5425, "end": 5426, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 5431, "end": 5432, "ctxt": 0 }, "value": "y", "optional": false }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5379, "end": 5405, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5380, "end": 5404, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5380, "end": 5381, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5390, "end": 5404, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5390, "end": 5395, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5395, "end": 5404, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5396, "end": 5403, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5396, "end": 5403, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5434, "end": 5508, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5438, "end": 5507, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5438, "end": 5445, "ctxt": 0 }, "value": "r13arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5448, "end": 5507, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5449, "end": 5463, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5450, "end": 5463, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5452, "end": 5463, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5452, "end": 5457, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5457, "end": 5463, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5458, "end": 5462, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5458, "end": 5462, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null } ] } } } }, { "type": "Identifier", "span": { "start": 5465, "end": 5482, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5466, "end": 5482, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5468, "end": 5482, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5468, "end": 5473, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5473, "end": 5482, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5474, "end": 5481, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5474, "end": 5481, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5487, "end": 5507, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5503, "end": 5507, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5488, "end": 5502, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5488, "end": 5493, "ctxt": 0 }, "value": "Array", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5493, "end": 5502, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5494, "end": 5501, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5494, "end": 5501, "ctxt": 0 }, "value": "Derived", "optional": false }, "typeParams": null } ] } } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5509, "end": 5534, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5513, "end": 5533, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5513, "end": 5516, "ctxt": 0 }, "value": "r13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5519, "end": 5533, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5519, "end": 5524, "ctxt": 0 }, "value": "foo13", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5525, "end": 5532, "ctxt": 0 }, "value": "r13arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5542, "end": 5572, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5546, "end": 5571, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5546, "end": 5550, "ctxt": 0 }, "value": "r13a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5553, "end": 5571, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5554, "end": 5561, "ctxt": 0 }, "value": "r13arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5563, "end": 5570, "ctxt": 0 }, "value": "r13arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5573, "end": 5603, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5577, "end": 5602, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5577, "end": 5581, "ctxt": 0 }, "value": "r13b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5584, "end": 5602, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5585, "end": 5592, "ctxt": 0 }, "value": "r13arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5594, "end": 5601, "ctxt": 0 }, "value": "r13arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5605, "end": 5649, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5609, "end": 5648, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5609, "end": 5616, "ctxt": 0 }, "value": "r14arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5619, "end": 5648, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5623, "end": 5640, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5624, "end": 5640, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5626, "end": 5640, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5628, "end": 5633, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5628, "end": 5629, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5629, "end": 5632, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5631, "end": 5632, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5631, "end": 5632, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 5634, "end": 5638, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5634, "end": 5635, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5635, "end": 5638, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5637, "end": 5638, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5637, "end": 5638, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "typeParams": null } ] } } } ], "body": { "type": "MemberExpression", "span": { "start": 5645, "end": 5648, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 5645, "end": 5646, "ctxt": 0 }, "value": "x", "optional": false }, "property": { "type": "Identifier", "span": { "start": 5647, "end": 5648, "ctxt": 0 }, "value": "a", "optional": false } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5619, "end": 5622, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5620, "end": 5621, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5620, "end": 5621, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5650, "end": 5710, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5654, "end": 5709, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5654, "end": 5661, "ctxt": 0 }, "value": "r14arg2", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5664, "end": 5709, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5665, "end": 5692, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5666, "end": 5692, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 5668, "end": 5692, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 5670, "end": 5680, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5670, "end": 5671, "ctxt": 0 }, "value": "a", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5671, "end": 5679, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5673, "end": 5679, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 5681, "end": 5690, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 5681, "end": 5682, "ctxt": 0 }, "value": "b", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5682, "end": 5690, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5684, "end": 5690, "ctxt": 0 }, "kind": "number" } }, "typeParams": null } ] } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5697, "end": 5709, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5705, "end": 5709, "ctxt": 0 } }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5698, "end": 5704, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5698, "end": 5704, "ctxt": 0 }, "value": "Object", "optional": false }, "typeParams": null } }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5711, "end": 5736, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5715, "end": 5735, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5715, "end": 5718, "ctxt": 0 }, "value": "r14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5721, "end": 5735, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5721, "end": 5726, "ctxt": 0 }, "value": "foo14", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5727, "end": 5734, "ctxt": 0 }, "value": "r14arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5744, "end": 5774, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5748, "end": 5773, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5748, "end": 5752, "ctxt": 0 }, "value": "r14a", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5755, "end": 5773, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5756, "end": 5763, "ctxt": 0 }, "value": "r14arg1", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5765, "end": 5772, "ctxt": 0 }, "value": "r14arg2", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5775, "end": 5805, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5779, "end": 5804, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5779, "end": 5783, "ctxt": 0 }, "value": "r14b", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrayExpression", "span": { "start": 5786, "end": 5804, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5787, "end": 5794, "ctxt": 0 }, "value": "r14arg2", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5796, "end": 5803, "ctxt": 0 }, "value": "r14arg1", "optional": false } } ] }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5807, "end": 5843, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5811, "end": 5843, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5811, "end": 5818, "ctxt": 0 }, "value": "r15arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5821, "end": 5843, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5825, "end": 5829, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5826, "end": 5829, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5828, "end": 5829, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5828, "end": 5829, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5834, "end": 5843, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5839, "end": 5843, "ctxt": 0 } }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 5835, "end": 5838, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 5835, "end": 5836, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5835, "end": 5836, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5821, "end": 5824, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5822, "end": 5823, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5822, "end": 5823, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5844, "end": 5869, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5848, "end": 5868, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5848, "end": 5851, "ctxt": 0 }, "value": "r15", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5854, "end": 5868, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5854, "end": 5859, "ctxt": 0 }, "value": "foo15", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5860, "end": 5867, "ctxt": 0 }, "value": "r15arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5877, "end": 5921, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5881, "end": 5920, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5881, "end": 5888, "ctxt": 0 }, "value": "r16arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5891, "end": 5920, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5908, "end": 5912, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5909, "end": 5912, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5911, "end": 5912, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5911, "end": 5912, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "ArrayExpression", "span": { "start": 5917, "end": 5920, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 5918, "end": 5919, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ] }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5891, "end": 5907, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5892, "end": 5906, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5892, "end": 5893, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeReference", "span": { "start": 5902, "end": 5906, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5902, "end": 5906, "ctxt": 0 }, "value": "Base", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5922, "end": 5947, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5926, "end": 5946, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5926, "end": 5929, "ctxt": 0 }, "value": "r16", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 5932, "end": 5946, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 5932, "end": 5937, "ctxt": 0 }, "value": "foo16", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 5938, "end": 5945, "ctxt": 0 }, "value": "r16arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5949, "end": 5996, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5953, "end": 5995, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5953, "end": 5960, "ctxt": 0 }, "value": "r17arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 5963, "end": 5995, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5967, "end": 5981, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5968, "end": 5981, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 5970, "end": 5981, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5971, "end": 5975, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5972, "end": 5975, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5974, "end": 5975, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5974, "end": 5975, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5977, "end": 5981, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5980, "end": 5981, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5980, "end": 5981, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 5986, "end": 5995, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 5991, "end": 5995, "ctxt": 0 } }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 5987, "end": 5990, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 5987, "end": 5988, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5987, "end": 5988, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 5963, "end": 5966, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 5964, "end": 5965, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 5964, "end": 5965, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5997, "end": 6022, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6001, "end": 6021, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6001, "end": 6004, "ctxt": 0 }, "value": "r17", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6007, "end": 6021, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6007, "end": 6012, "ctxt": 0 }, "value": "foo17", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6013, "end": 6020, "ctxt": 0 }, "value": "r17arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6030, "end": 6077, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6034, "end": 6076, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6034, "end": 6041, "ctxt": 0 }, "value": "r18arg1", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 6044, "end": 6076, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6048, "end": 6062, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6049, "end": 6062, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 6051, "end": 6062, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 6052, "end": 6056, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6053, "end": 6056, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6055, "end": 6056, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6055, "end": 6056, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 6058, "end": 6062, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 6061, "end": 6062, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6061, "end": 6062, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } ], "body": { "type": "TsTypeAssertion", "span": { "start": 6067, "end": 6076, "ctxt": 0 }, "expression": { "type": "NullLiteral", "span": { "start": 6072, "end": 6076, "ctxt": 0 } }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 6068, "end": 6071, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 6068, "end": 6069, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 6068, "end": 6069, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "async": false, "generator": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 6044, "end": 6047, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 6045, "end": 6046, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 6045, "end": 6046, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 6078, "end": 6103, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 6082, "end": 6102, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 6082, "end": 6085, "ctxt": 0 }, "value": "r18", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 6088, "end": 6102, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 6088, "end": 6093, "ctxt": 0 }, "value": "foo18", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 6094, "end": 6101, "ctxt": 0 }, "value": "r18arg1", "optional": false } } ], "typeArguments": null }, "definite": false } ] } ], "interpreter": null }