{ "type": "Script", "span": { "start": 305, "end": 2068, "ctxt": 0 }, "body": [ { "type": "TsModuleDeclaration", "span": { "start": 305, "end": 1230, "ctxt": 0 }, "declare": false, "global": false, "id": { "type": "Identifier", "span": { "start": 312, "end": 317, "ctxt": 0 }, "value": "onlyT", "optional": false }, "body": { "type": "TsModuleBlock", "span": { "start": 318, "end": 1230, "ctxt": 0 }, "body": [ { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 333, "end": 336, "ctxt": 0 }, "value": "foo", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 340, "end": 354, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 340, "end": 354, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 341, "end": 354, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 343, "end": 354, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 344, "end": 348, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 345, "end": 348, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 347, "end": 348, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 347, "end": 348, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 350, "end": 354, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 353, "end": 354, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 353, "end": 354, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 356, "end": 370, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 356, "end": 370, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 357, "end": 370, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 359, "end": 370, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 360, "end": 364, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 361, "end": 364, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 363, "end": 364, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 363, "end": 364, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 366, "end": 370, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 369, "end": 370, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 369, "end": 370, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 324, "end": 425, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 372, "end": 425, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 382, "end": 401, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 386, "end": 400, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 386, "end": 387, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 387, "end": 400, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 389, "end": 400, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 390, "end": 394, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 391, "end": 394, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 393, "end": 394, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 393, "end": 394, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 396, "end": 400, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 399, "end": 400, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 399, "end": 400, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 410, "end": 419, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 417, "end": 418, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 336, "end": 339, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 337, "end": 338, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 337, "end": 338, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "VariableDeclaration", "span": { "start": 431, "end": 496, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 435, "end": 495, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 435, "end": 437, "ctxt": 0 }, "value": "r1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 437, "end": 452, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 439, "end": 452, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 440, "end": 445, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 441, "end": 445, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 443, "end": 445, "ctxt": 0 }, "members": [] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 447, "end": 452, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 450, "end": 452, "ctxt": 0 }, "members": [] } } } } }, "init": { "type": "CallExpression", "span": { "start": 455, "end": 495, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 455, "end": 458, "ctxt": 0 }, "value": "foo", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 459, "end": 475, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 460, "end": 469, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 461, "end": 469, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 463, "end": 469, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "NumericLiteral", "span": { "start": 474, "end": 475, "ctxt": 0 }, "value": 1.0 }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 477, "end": 494, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 478, "end": 487, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 479, "end": 487, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 481, "end": 487, "ctxt": 0 }, "kind": "string" } } } ], "body": { "type": "StringLiteral", "span": { "start": 492, "end": 494, "ctxt": 0 }, "value": "", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 511, "end": 517, "ctxt": 0 }, "value": "other2", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 534, "end": 538, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 534, "end": 538, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 535, "end": 538, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 537, "end": 538, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 537, "end": 538, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 502, "end": 710, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 540, "end": 710, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 550, "end": 589, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 554, "end": 588, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 554, "end": 556, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 559, "end": 588, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 559, "end": 562, "ctxt": 0 }, "value": "foo", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 563, "end": 574, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 564, "end": 568, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 565, "end": 568, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 567, "end": 568, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 567, "end": 568, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 573, "end": 574, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 576, "end": 587, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 577, "end": 581, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 578, "end": 581, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 580, "end": 581, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 580, "end": 581, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 586, "end": 587, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 630, "end": 654, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 634, "end": 653, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 634, "end": 636, "ctxt": 0 }, "value": "r9", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 639, "end": 653, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 639, "end": 641, "ctxt": 0 }, "value": "r7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NewExpression", "span": { "start": 642, "end": 652, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 646, "end": 650, "ctxt": 0 }, "value": "Date", "optional": false }, "arguments": [], "typeArguments": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 679, "end": 695, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 683, "end": 694, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 683, "end": 686, "ctxt": 0 }, "value": "r10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 689, "end": 694, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 689, "end": 691, "ctxt": 0 }, "value": "r7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 692, "end": 693, "ctxt": 0 }, "value": 1.0 } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 517, "end": 533, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 518, "end": 532, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 518, "end": 519, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 528, "end": 532, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 528, "end": 532, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 725, "end": 729, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 746, "end": 760, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 746, "end": 760, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 747, "end": 760, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 749, "end": 760, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 750, "end": 754, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 751, "end": 754, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 753, "end": 754, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 753, "end": 754, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 756, "end": 760, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 759, "end": 760, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 759, "end": 760, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 762, "end": 776, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 762, "end": 776, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 763, "end": 776, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 765, "end": 776, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 766, "end": 770, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 767, "end": 770, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 769, "end": 770, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 769, "end": 770, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 772, "end": 776, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 775, "end": 776, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 775, "end": 776, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 716, "end": 831, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 778, "end": 831, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 788, "end": 807, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 792, "end": 806, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 792, "end": 793, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 793, "end": 806, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 795, "end": 806, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 796, "end": 800, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 797, "end": 800, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 799, "end": 800, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 799, "end": 800, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 802, "end": 806, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 805, "end": 806, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 805, "end": 806, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 816, "end": 825, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 823, "end": 824, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 729, "end": 745, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 730, "end": 744, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 730, "end": 731, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 740, "end": 744, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 740, "end": 744, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 846, "end": 852, "ctxt": 0 }, "value": "other3", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 871, "end": 875, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 871, "end": 875, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 872, "end": 875, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 874, "end": 875, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 874, "end": 875, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 837, "end": 1021, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 877, "end": 1021, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 887, "end": 927, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 891, "end": 926, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 891, "end": 893, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 896, "end": 926, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 896, "end": 900, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 901, "end": 912, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 902, "end": 906, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 903, "end": 906, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 905, "end": 906, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 905, "end": 906, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 911, "end": 912, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 914, "end": 925, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 915, "end": 919, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 916, "end": 919, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 918, "end": 919, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 918, "end": 919, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 924, "end": 925, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 945, "end": 980, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 949, "end": 979, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 949, "end": 952, "ctxt": 0 }, "value": "r7b", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 955, "end": 979, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 955, "end": 959, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 960, "end": 968, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 961, "end": 962, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": null } ], "body": { "type": "Identifier", "span": { "start": 967, "end": 968, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 970, "end": 978, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 971, "end": 972, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": null } ], "body": { "type": "Identifier", "span": { "start": 977, "end": 978, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 852, "end": 870, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 853, "end": 869, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 853, "end": 854, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 863, "end": 869, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 863, "end": 869, "ctxt": 0 }, "value": "RegExp", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "TsEnumDeclaration", "span": { "start": 1027, "end": 1039, "ctxt": 0 }, "declare": false, "isConst": false, "id": { "type": "Identifier", "span": { "start": 1032, "end": 1033, "ctxt": 0 }, "value": "E", "optional": false }, "members": [ { "type": "TsEnumMember", "span": { "start": 1036, "end": 1037, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1036, "end": 1037, "ctxt": 0 }, "value": "A", "optional": false }, "init": null } ] }, { "type": "TsEnumDeclaration", "span": { "start": 1044, "end": 1056, "ctxt": 0 }, "declare": false, "isConst": false, "id": { "type": "Identifier", "span": { "start": 1049, "end": 1050, "ctxt": 0 }, "value": "F", "optional": false }, "members": [ { "type": "TsEnumMember", "span": { "start": 1053, "end": 1054, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1053, "end": 1054, "ctxt": 0 }, "value": "A", "optional": false }, "init": null } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1071, "end": 1075, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1079, "end": 1083, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1079, "end": 1083, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1080, "end": 1083, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1082, "end": 1083, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1082, "end": 1083, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 1085, "end": 1099, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1085, "end": 1099, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1086, "end": 1099, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1088, "end": 1099, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1089, "end": 1093, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1090, "end": 1093, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1092, "end": 1093, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1092, "end": 1093, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1095, "end": 1099, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1098, "end": 1099, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1098, "end": 1099, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 1101, "end": 1115, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1101, "end": 1115, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1102, "end": 1115, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1104, "end": 1115, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1105, "end": 1109, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1106, "end": 1109, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1108, "end": 1109, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1108, "end": 1109, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1111, "end": 1115, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1114, "end": 1115, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1114, "end": 1115, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1062, "end": 1170, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1117, "end": 1170, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1127, "end": 1146, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1131, "end": 1145, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1131, "end": 1132, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1132, "end": 1145, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1134, "end": 1145, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1135, "end": 1139, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1136, "end": 1139, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1138, "end": 1139, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1138, "end": 1139, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1141, "end": 1145, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1144, "end": 1145, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1144, "end": 1145, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 1155, "end": 1164, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1162, "end": 1163, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1075, "end": 1078, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1076, "end": 1077, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1076, "end": 1077, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "VariableDeclaration", "span": { "start": 1176, "end": 1219, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1180, "end": 1218, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1180, "end": 1182, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1185, "end": 1218, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1185, "end": 1189, "ctxt": 0 }, "value": "foo3", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 1190, "end": 1193, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1190, "end": 1191, "ctxt": 0 }, "value": "E", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1192, "end": 1193, "ctxt": 0 }, "value": "A", "optional": false } } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1195, "end": 1205, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1196, "end": 1197, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "MemberExpression", "span": { "start": 1202, "end": 1205, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1202, "end": 1203, "ctxt": 0 }, "value": "E", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1204, "end": 1205, "ctxt": 0 }, "value": "A", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1207, "end": 1217, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1208, "end": 1209, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "MemberExpression", "span": { "start": 1214, "end": 1217, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1214, "end": 1215, "ctxt": 0 }, "value": "F", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1216, "end": 1217, "ctxt": 0 }, "value": "A", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] } ] } }, { "type": "TsModuleDeclaration", "span": { "start": 1232, "end": 2068, "ctxt": 0 }, "declare": false, "global": false, "id": { "type": "Identifier", "span": { "start": 1239, "end": 1241, "ctxt": 0 }, "value": "TU", "optional": false }, "body": { "type": "TsModuleBlock", "span": { "start": 1242, "end": 2068, "ctxt": 0 }, "body": [ { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1257, "end": 1260, "ctxt": 0 }, "value": "foo", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1267, "end": 1281, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1267, "end": 1281, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1268, "end": 1281, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1270, "end": 1281, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1271, "end": 1275, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1272, "end": 1275, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1274, "end": 1275, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1274, "end": 1275, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1277, "end": 1281, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1280, "end": 1281, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1280, "end": 1281, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 1283, "end": 1297, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1283, "end": 1297, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1284, "end": 1297, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1286, "end": 1297, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1287, "end": 1291, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1288, "end": 1291, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1290, "end": 1291, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1290, "end": 1291, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1293, "end": 1297, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1296, "end": 1297, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1296, "end": 1297, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1248, "end": 1352, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1299, "end": 1352, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1309, "end": 1328, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1313, "end": 1327, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1313, "end": 1314, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1314, "end": 1327, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1316, "end": 1327, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1317, "end": 1321, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1318, "end": 1321, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1320, "end": 1321, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1320, "end": 1321, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1323, "end": 1327, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1326, "end": 1327, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1326, "end": 1327, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 1337, "end": 1346, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1344, "end": 1345, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1260, "end": 1266, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1261, "end": 1262, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1261, "end": 1262, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 1264, "end": 1265, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1264, "end": 1265, "ctxt": 0 }, "value": "U", "optional": false }, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "VariableDeclaration", "span": { "start": 1358, "end": 1423, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1362, "end": 1422, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1362, "end": 1364, "ctxt": 0 }, "value": "r1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1364, "end": 1379, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1366, "end": 1379, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1367, "end": 1372, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1368, "end": 1372, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1370, "end": 1372, "ctxt": 0 }, "members": [] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1374, "end": 1379, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1377, "end": 1379, "ctxt": 0 }, "members": [] } } } } }, "init": { "type": "CallExpression", "span": { "start": 1382, "end": 1422, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1382, "end": 1385, "ctxt": 0 }, "value": "foo", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1386, "end": 1402, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1387, "end": 1396, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1388, "end": 1396, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1390, "end": 1396, "ctxt": 0 }, "kind": "number" } } } ], "body": { "type": "NumericLiteral", "span": { "start": 1401, "end": 1402, "ctxt": 0 }, "value": 1.0 }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1404, "end": 1421, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1405, "end": 1414, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1406, "end": 1414, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1408, "end": 1414, "ctxt": 0 }, "kind": "string" } } } ], "body": { "type": "StringLiteral", "span": { "start": 1419, "end": 1421, "ctxt": 0 }, "value": "", "hasEscape": false, "kind": { "type": "normal", "containsQuote": true } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1438, "end": 1444, "ctxt": 0 }, "value": "other2", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1461, "end": 1465, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1461, "end": 1465, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1462, "end": 1465, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1464, "end": 1465, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1464, "end": 1465, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 1429, "end": 1583, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1467, "end": 1583, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1477, "end": 1516, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1481, "end": 1515, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1481, "end": 1483, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1486, "end": 1515, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1486, "end": 1489, "ctxt": 0 }, "value": "foo", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1490, "end": 1501, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1491, "end": 1495, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1492, "end": 1495, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1494, "end": 1495, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1494, "end": 1495, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 1500, "end": 1501, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1503, "end": 1514, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1504, "end": 1508, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1505, "end": 1508, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1507, "end": 1508, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1507, "end": 1508, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 1513, "end": 1514, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1526, "end": 1550, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1530, "end": 1549, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1530, "end": 1532, "ctxt": 0 }, "value": "r9", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1535, "end": 1549, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1535, "end": 1537, "ctxt": 0 }, "value": "r7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NewExpression", "span": { "start": 1538, "end": 1548, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1542, "end": 1546, "ctxt": 0 }, "value": "Date", "optional": false }, "arguments": [], "typeArguments": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1560, "end": 1576, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1564, "end": 1575, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1564, "end": 1567, "ctxt": 0 }, "value": "r10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1570, "end": 1575, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1570, "end": 1572, "ctxt": 0 }, "value": "r7", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1573, "end": 1574, "ctxt": 0 }, "value": 1.0 } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1444, "end": 1460, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1445, "end": 1459, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1445, "end": 1446, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 1455, "end": 1459, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1455, "end": 1459, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1598, "end": 1602, "ctxt": 0 }, "value": "foo2", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1635, "end": 1649, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1635, "end": 1649, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1636, "end": 1649, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1638, "end": 1649, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1639, "end": 1643, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1640, "end": 1643, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1642, "end": 1643, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1642, "end": 1643, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1645, "end": 1649, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1648, "end": 1649, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1648, "end": 1649, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 1651, "end": 1665, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1651, "end": 1665, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1652, "end": 1665, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1654, "end": 1665, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1655, "end": 1659, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1656, "end": 1659, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1658, "end": 1659, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1658, "end": 1659, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1661, "end": 1665, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1664, "end": 1665, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1664, "end": 1665, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1589, "end": 1720, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1667, "end": 1720, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1677, "end": 1696, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1681, "end": 1695, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1681, "end": 1682, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1682, "end": 1695, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1684, "end": 1695, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1685, "end": 1689, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1686, "end": 1689, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1688, "end": 1689, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1688, "end": 1689, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1691, "end": 1695, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1694, "end": 1695, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1694, "end": 1695, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 1705, "end": 1714, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1712, "end": 1713, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1602, "end": 1634, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1603, "end": 1617, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1603, "end": 1604, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 1613, "end": 1617, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1613, "end": 1617, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 1619, "end": 1633, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1619, "end": 1620, "ctxt": 0 }, "value": "U", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 1629, "end": 1633, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1629, "end": 1633, "ctxt": 0 }, "value": "Date", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1735, "end": 1741, "ctxt": 0 }, "value": "other3", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1760, "end": 1764, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1760, "end": 1764, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1761, "end": 1764, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1763, "end": 1764, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1763, "end": 1764, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 1726, "end": 1868, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1766, "end": 1868, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1776, "end": 1816, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1780, "end": 1815, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1780, "end": 1782, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1785, "end": 1815, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1785, "end": 1789, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1790, "end": 1801, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1791, "end": 1795, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1792, "end": 1795, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1794, "end": 1795, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1794, "end": 1795, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 1800, "end": 1801, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1803, "end": 1814, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1804, "end": 1808, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1805, "end": 1808, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1807, "end": 1808, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1807, "end": 1808, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "body": { "type": "Identifier", "span": { "start": 1813, "end": 1814, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1826, "end": 1861, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1830, "end": 1860, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1830, "end": 1833, "ctxt": 0 }, "value": "r7b", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1836, "end": 1860, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1836, "end": 1840, "ctxt": 0 }, "value": "foo2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1841, "end": 1849, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1842, "end": 1843, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": null } ], "body": { "type": "Identifier", "span": { "start": 1848, "end": 1849, "ctxt": 0 }, "value": "a", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 1851, "end": 1859, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1852, "end": 1853, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": null } ], "body": { "type": "Identifier", "span": { "start": 1858, "end": 1859, "ctxt": 0 }, "value": "b", "optional": false }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1741, "end": 1759, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1742, "end": 1758, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1742, "end": 1743, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": { "type": "TsTypeReference", "span": { "start": 1752, "end": 1758, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1752, "end": 1758, "ctxt": 0 }, "value": "RegExp", "optional": false }, "typeParams": null }, "default": null } ] }, "returnType": null }, { "type": "TsEnumDeclaration", "span": { "start": 1874, "end": 1886, "ctxt": 0 }, "declare": false, "isConst": false, "id": { "type": "Identifier", "span": { "start": 1879, "end": 1880, "ctxt": 0 }, "value": "E", "optional": false }, "members": [ { "type": "TsEnumMember", "span": { "start": 1883, "end": 1884, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1883, "end": 1884, "ctxt": 0 }, "value": "A", "optional": false }, "init": null } ] }, { "type": "TsEnumDeclaration", "span": { "start": 1891, "end": 1903, "ctxt": 0 }, "declare": false, "isConst": false, "id": { "type": "Identifier", "span": { "start": 1896, "end": 1897, "ctxt": 0 }, "value": "F", "optional": false }, "members": [ { "type": "TsEnumMember", "span": { "start": 1900, "end": 1901, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1900, "end": 1901, "ctxt": 0 }, "value": "A", "optional": false }, "init": null } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1918, "end": 1922, "ctxt": 0 }, "value": "foo3", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1926, "end": 1930, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1926, "end": 1930, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1927, "end": 1930, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1929, "end": 1930, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1929, "end": 1930, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 1932, "end": 1946, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1932, "end": 1946, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1933, "end": 1946, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1935, "end": 1946, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1936, "end": 1940, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1937, "end": 1940, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1939, "end": 1940, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1939, "end": 1940, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1942, "end": 1946, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1945, "end": 1946, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1945, "end": 1946, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 1948, "end": 1962, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1948, "end": 1962, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1949, "end": 1962, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1951, "end": 1962, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1952, "end": 1956, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1953, "end": 1956, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1955, "end": 1956, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1955, "end": 1956, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1958, "end": 1962, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1961, "end": 1962, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1961, "end": 1962, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 1909, "end": 2017, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1964, "end": 2017, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1974, "end": 1993, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1978, "end": 1992, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1978, "end": 1979, "ctxt": 0 }, "value": "r", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1979, "end": 1992, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1981, "end": 1992, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1982, "end": 1986, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1983, "end": 1986, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1985, "end": 1986, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1985, "end": 1986, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1988, "end": 1992, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1991, "end": 1992, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1991, "end": 1992, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } }, "init": null, "definite": false } ] }, { "type": "ReturnStatement", "span": { "start": 2002, "end": 2011, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2009, "end": 2010, "ctxt": 0 }, "value": "r", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1922, "end": 1925, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1923, "end": 1924, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1923, "end": 1924, "ctxt": 0 }, "value": "T", "optional": false }, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "VariableDeclaration", "span": { "start": 2023, "end": 2066, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2027, "end": 2065, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2027, "end": 2029, "ctxt": 0 }, "value": "r7", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2032, "end": 2065, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2032, "end": 2036, "ctxt": 0 }, "value": "foo3", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 2037, "end": 2040, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2037, "end": 2038, "ctxt": 0 }, "value": "E", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2039, "end": 2040, "ctxt": 0 }, "value": "A", "optional": false } } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 2042, "end": 2052, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2043, "end": 2044, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "MemberExpression", "span": { "start": 2049, "end": 2052, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2049, "end": 2050, "ctxt": 0 }, "value": "E", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2051, "end": 2052, "ctxt": 0 }, "value": "A", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 2054, "end": 2064, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2055, "end": 2056, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "MemberExpression", "span": { "start": 2061, "end": 2064, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2061, "end": 2062, "ctxt": 0 }, "value": "F", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2063, "end": 2064, "ctxt": 0 }, "value": "A", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] } ] } } ], "interpreter": null }