{ "type": "Script", "span": { "start": 19, "end": 2980, "ctxt": 0 }, "body": [ { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 36, "end": 39, "ctxt": 0 }, "value": "foo", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 40, "end": 49, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 40, "end": 49, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 41, "end": 49, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 43, "end": 49, "ctxt": 0 }, "kind": "number" } } } }, { "type": "Parameter", "span": { "start": 51, "end": 60, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 51, "end": 60, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 52, "end": 60, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 54, "end": 60, "ctxt": 0 }, "kind": "string" } } } } ], "decorators": [], "span": { "start": 19, "end": 70, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 61, "end": 69, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 63, "end": 69, "ctxt": 0 }, "kind": "string" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 89, "end": 99, "ctxt": 0 }, "value": "overloaded", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 100, "end": 109, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 100, "end": 109, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 101, "end": 109, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 103, "end": 109, "ctxt": 0 }, "kind": "string" } } } } ], "decorators": [], "span": { "start": 72, "end": 119, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 110, "end": 118, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 112, "end": 118, "ctxt": 0 }, "kind": "number" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 137, "end": 147, "ctxt": 0 }, "value": "overloaded", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 148, "end": 157, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 148, "end": 157, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 149, "end": 157, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 151, "end": 157, "ctxt": 0 }, "kind": "number" } } } } ], "decorators": [], "span": { "start": 120, "end": 167, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 158, "end": 166, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 160, "end": 166, "ctxt": 0 }, "kind": "string" } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 186, "end": 193, "ctxt": 0 }, "value": "generic", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 197, "end": 201, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 197, "end": 201, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 198, "end": 201, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 200, "end": 201, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 200, "end": 201, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 169, "end": 206, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 193, "end": 196, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 194, "end": 195, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 194, "end": 195, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 202, "end": 205, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 204, "end": 205, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 204, "end": 205, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "VariableDeclaration", "span": { "start": 208, "end": 238, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 212, "end": 237, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 212, "end": 215, "ctxt": 0 }, "value": "f00", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 218, "end": 237, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 218, "end": 226, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 218, "end": 221, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 222, "end": 226, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 227, "end": 236, "ctxt": 0 }, "value": "undefined", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 239, "end": 273, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 243, "end": 272, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 243, "end": 246, "ctxt": 0 }, "value": "f01", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 249, "end": 272, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 249, "end": 257, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 249, "end": 252, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 253, "end": 257, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 258, "end": 267, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 269, "end": 271, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 274, "end": 317, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 278, "end": 316, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 278, "end": 281, "ctxt": 0 }, "value": "f02", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 284, "end": 316, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 284, "end": 292, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 284, "end": 287, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 288, "end": 292, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 293, "end": 302, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 304, "end": 306, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 308, "end": 315, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 318, "end": 356, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 322, "end": 355, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 322, "end": 325, "ctxt": 0 }, "value": "f03", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 328, "end": 355, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 328, "end": 336, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 328, "end": 331, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 332, "end": 336, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 337, "end": 346, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 348, "end": 350, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 352, "end": 354, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 368, "end": 405, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 372, "end": 404, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 372, "end": 375, "ctxt": 0 }, "value": "f04", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 378, "end": 404, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 378, "end": 393, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 378, "end": 388, "ctxt": 0 }, "value": "overloaded", "optional": false }, "property": { "type": "Identifier", "span": { "start": 389, "end": 393, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 394, "end": 403, "ctxt": 0 }, "value": "undefined", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 428, "end": 462, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 432, "end": 461, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 432, "end": 435, "ctxt": 0 }, "value": "f05", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 438, "end": 461, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 438, "end": 450, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 438, "end": 445, "ctxt": 0 }, "value": "generic", "optional": false }, "property": { "type": "Identifier", "span": { "start": 446, "end": 450, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 451, "end": 460, "ctxt": 0 }, "value": "undefined", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 483, "end": 526, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 487, "end": 525, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 487, "end": 490, "ctxt": 0 }, "value": "c00", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 493, "end": 525, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 493, "end": 501, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 493, "end": 496, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 497, "end": 501, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 502, "end": 511, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 513, "end": 515, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 517, "end": 524, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 527, "end": 561, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 531, "end": 560, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 531, "end": 534, "ctxt": 0 }, "value": "c01", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 537, "end": 560, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 537, "end": 545, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 537, "end": 540, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 541, "end": 545, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 546, "end": 555, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 557, "end": 559, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 572, "end": 610, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 576, "end": 609, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 576, "end": 579, "ctxt": 0 }, "value": "c02", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 582, "end": 609, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 582, "end": 590, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 582, "end": 585, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 586, "end": 590, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 591, "end": 600, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 602, "end": 604, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 606, "end": 608, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 621, "end": 668, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 625, "end": 667, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 625, "end": 628, "ctxt": 0 }, "value": "c03", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 631, "end": 667, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 631, "end": 639, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 631, "end": 634, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 635, "end": 639, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 640, "end": 649, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 651, "end": 653, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 655, "end": 662, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 664, "end": 666, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 680, "end": 726, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 684, "end": 725, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 684, "end": 687, "ctxt": 0 }, "value": "a00", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 690, "end": 725, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 690, "end": 699, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 690, "end": 693, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 694, "end": 699, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 700, "end": 709, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 711, "end": 724, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 712, "end": 714, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 716, "end": 723, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 727, "end": 764, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 731, "end": 763, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 731, "end": 734, "ctxt": 0 }, "value": "a01", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 737, "end": 763, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 737, "end": 746, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 737, "end": 740, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 741, "end": 746, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 747, "end": 756, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 758, "end": 762, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 759, "end": 761, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 775, "end": 816, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 779, "end": 815, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 779, "end": 782, "ctxt": 0 }, "value": "a02", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 785, "end": 815, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 785, "end": 794, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 785, "end": 788, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 789, "end": 794, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 795, "end": 804, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 806, "end": 814, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 807, "end": 809, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 811, "end": 813, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 827, "end": 877, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 831, "end": 876, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 831, "end": 834, "ctxt": 0 }, "value": "a03", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 837, "end": 876, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 837, "end": 846, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 837, "end": 840, "ctxt": 0 }, "value": "foo", "optional": false }, "property": { "type": "Identifier", "span": { "start": 841, "end": 846, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 847, "end": 856, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 858, "end": 875, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 859, "end": 861, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 863, "end": 870, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 872, "end": 874, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 895, "end": 896, "ctxt": 0 }, "value": "C", "optional": false }, "declare": false, "span": { "start": 889, "end": 1166, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 903, "end": 939, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 903, "end": 914, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [ { "type": "Parameter", "span": { "start": 915, "end": 924, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 915, "end": 924, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 916, "end": 924, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 918, "end": 924, "ctxt": 0 }, "kind": "number" } } } }, { "type": "Parameter", "span": { "start": 926, "end": 935, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 926, "end": 935, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 927, "end": 935, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 929, "end": 935, "ctxt": 0 }, "kind": "string" } } } } ], "body": { "type": "BlockStatement", "span": { "start": 937, "end": 939, "ctxt": 0 }, "stmts": [] }, "accessibility": null, "isOptional": false }, { "type": "ClassMethod", "span": { "start": 944, "end": 1003, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 944, "end": 947, "ctxt": 0 }, "value": "foo", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 948, "end": 958, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 948, "end": 958, "ctxt": 0 }, "value": "this", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 952, "end": 958, "ctxt": 0 }, "typeAnnotation": { "type": "TsThisType", "span": { "start": 954, "end": 958, "ctxt": 0 } } } } }, { "type": "Parameter", "span": { "start": 960, "end": 969, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 960, "end": 969, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 961, "end": 969, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 963, "end": 969, "ctxt": 0 }, "kind": "number" } } } }, { "type": "Parameter", "span": { "start": 971, "end": 980, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 971, "end": 980, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 972, "end": 980, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 974, "end": 980, "ctxt": 0 }, "kind": "string" } } } } ], "decorators": [], "span": { "start": 944, "end": 1003, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 990, "end": 1003, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 992, "end": 1001, "ctxt": 0 }, "argument": { "type": "StringLiteral", "span": { "start": 999, "end": 1001, "ctxt": 0 }, "value": "", "raw": "\"\"" } } ] }, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 981, "end": 989, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 983, "end": 989, "ctxt": 0 }, "kind": "string" } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 1008, "end": 1038, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 1008, "end": 1018, "ctxt": 0 }, "value": "overloaded", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 1019, "end": 1028, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1019, "end": 1028, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1020, "end": 1028, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1022, "end": 1028, "ctxt": 0 }, "kind": "string" } } } } ], "decorators": [], "span": { "start": 1008, "end": 1038, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1029, "end": 1037, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1031, "end": 1037, "ctxt": 0 }, "kind": "number" } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 1043, "end": 1073, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 1043, "end": 1053, "ctxt": 0 }, "value": "overloaded", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 1054, "end": 1063, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1054, "end": 1063, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1055, "end": 1063, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1057, "end": 1063, "ctxt": 0 }, "kind": "number" } } } } ], "decorators": [], "span": { "start": 1043, "end": 1073, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1064, "end": 1072, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1066, "end": 1072, "ctxt": 0 }, "kind": "string" } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 1078, "end": 1127, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 1078, "end": 1088, "ctxt": 0 }, "value": "overloaded", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 1089, "end": 1095, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1089, "end": 1095, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1090, "end": 1095, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1092, "end": 1095, "ctxt": 0 }, "kind": "any" } } } } ], "decorators": [], "span": { "start": 1078, "end": 1127, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1102, "end": 1127, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1104, "end": 1125, "ctxt": 0 }, "argument": { "type": "TsTypeAssertion", "span": { "start": 1111, "end": 1125, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1116, "end": 1125, "ctxt": 0 }, "value": "undefined", "optional": false }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1112, "end": 1115, "ctxt": 0 }, "kind": "any" } } } ] }, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1096, "end": 1101, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1098, "end": 1101, "ctxt": 0 }, "kind": "any" } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 1132, "end": 1164, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 1132, "end": 1139, "ctxt": 0 }, "value": "generic", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 1143, "end": 1147, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1143, "end": 1147, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1144, "end": 1147, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1146, "end": 1147, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1146, "end": 1147, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 1132, "end": 1164, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1152, "end": 1164, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1154, "end": 1162, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1161, "end": 1162, "ctxt": 0 }, "value": "x", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1139, "end": 1142, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1140, "end": 1141, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1140, "end": 1141, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1148, "end": 1151, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1150, "end": 1151, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1150, "end": 1151, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "VariableDeclaration", "span": { "start": 1168, "end": 1185, "ctxt": 0 }, "kind": "let", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1180, "end": 1184, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1180, "end": 1181, "ctxt": 0 }, "value": "c", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1181, "end": 1184, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1183, "end": 1184, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1183, "end": 1184, "ctxt": 0 }, "value": "C", "optional": false }, "typeParams": null } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1186, "end": 1206, "ctxt": 0 }, "kind": "let", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1198, "end": 1205, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1198, "end": 1201, "ctxt": 0 }, "value": "obj", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1201, "end": 1205, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1203, "end": 1205, "ctxt": 0 }, "members": [] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1208, "end": 1232, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1212, "end": 1231, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1212, "end": 1215, "ctxt": 0 }, "value": "f10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1218, "end": 1231, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1218, "end": 1228, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1218, "end": 1223, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1218, "end": 1219, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1220, "end": 1223, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1224, "end": 1228, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1229, "end": 1230, "ctxt": 0 }, "value": "c", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1233, "end": 1261, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1237, "end": 1260, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1237, "end": 1240, "ctxt": 0 }, "value": "f11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1243, "end": 1260, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1243, "end": 1253, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1243, "end": 1248, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1243, "end": 1244, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1245, "end": 1248, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1249, "end": 1253, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1254, "end": 1255, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1257, "end": 1259, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1262, "end": 1299, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1266, "end": 1298, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1266, "end": 1269, "ctxt": 0 }, "value": "f12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1272, "end": 1298, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1272, "end": 1282, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1272, "end": 1277, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1272, "end": 1273, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1274, "end": 1277, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1278, "end": 1282, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1283, "end": 1284, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1286, "end": 1288, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1290, "end": 1297, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1300, "end": 1332, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1304, "end": 1331, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1304, "end": 1307, "ctxt": 0 }, "value": "f13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1310, "end": 1331, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1310, "end": 1320, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1310, "end": 1315, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1310, "end": 1311, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1312, "end": 1315, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1316, "end": 1320, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1321, "end": 1322, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1324, "end": 1326, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1328, "end": 1330, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1343, "end": 1375, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1347, "end": 1374, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1347, "end": 1350, "ctxt": 0 }, "value": "f14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1353, "end": 1374, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1353, "end": 1363, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1353, "end": 1358, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1353, "end": 1354, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1355, "end": 1358, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1359, "end": 1363, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1364, "end": 1373, "ctxt": 0 }, "value": "undefined", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1387, "end": 1418, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1391, "end": 1417, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1391, "end": 1394, "ctxt": 0 }, "value": "f15", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1397, "end": 1417, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1397, "end": 1414, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1397, "end": 1409, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1397, "end": 1398, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1399, "end": 1409, "ctxt": 0 }, "value": "overloaded", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1410, "end": 1414, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1415, "end": 1416, "ctxt": 0 }, "value": "c", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1453, "end": 1481, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1457, "end": 1480, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1457, "end": 1460, "ctxt": 0 }, "value": "f16", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1463, "end": 1480, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1463, "end": 1477, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1463, "end": 1472, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1463, "end": 1464, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1465, "end": 1472, "ctxt": 0 }, "value": "generic", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1473, "end": 1477, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1478, "end": 1479, "ctxt": 0 }, "value": "c", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1514, "end": 1551, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1518, "end": 1550, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1518, "end": 1521, "ctxt": 0 }, "value": "c10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1524, "end": 1550, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1524, "end": 1534, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1524, "end": 1529, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1524, "end": 1525, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1526, "end": 1529, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1530, "end": 1534, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1535, "end": 1536, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1538, "end": 1540, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1542, "end": 1549, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1552, "end": 1580, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1556, "end": 1579, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1556, "end": 1559, "ctxt": 0 }, "value": "c11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1562, "end": 1579, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1562, "end": 1572, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1562, "end": 1567, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1562, "end": 1563, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1564, "end": 1567, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1568, "end": 1572, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1573, "end": 1574, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1576, "end": 1578, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1591, "end": 1623, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1595, "end": 1622, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1595, "end": 1598, "ctxt": 0 }, "value": "c12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1601, "end": 1622, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1601, "end": 1611, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1601, "end": 1606, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1601, "end": 1602, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1603, "end": 1606, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1607, "end": 1611, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1612, "end": 1613, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1615, "end": 1617, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1619, "end": 1621, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1634, "end": 1675, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1638, "end": 1674, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1638, "end": 1641, "ctxt": 0 }, "value": "c13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1644, "end": 1674, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1644, "end": 1654, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1644, "end": 1649, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1644, "end": 1645, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1646, "end": 1649, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1650, "end": 1654, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1655, "end": 1656, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1658, "end": 1660, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1662, "end": 1669, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1671, "end": 1673, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1686, "end": 1731, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1690, "end": 1730, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1690, "end": 1693, "ctxt": 0 }, "value": "c14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1696, "end": 1730, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1696, "end": 1706, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1696, "end": 1701, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1696, "end": 1697, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1698, "end": 1701, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1702, "end": 1706, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1707, "end": 1716, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1718, "end": 1720, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1722, "end": 1729, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1743, "end": 1783, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1747, "end": 1782, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1747, "end": 1750, "ctxt": 0 }, "value": "a10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1753, "end": 1782, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1753, "end": 1764, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1753, "end": 1758, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1753, "end": 1754, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1755, "end": 1758, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1759, "end": 1764, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1765, "end": 1766, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 1768, "end": 1781, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1769, "end": 1771, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1773, "end": 1780, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1784, "end": 1815, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1788, "end": 1814, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1788, "end": 1791, "ctxt": 0 }, "value": "a11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1794, "end": 1814, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1794, "end": 1805, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1794, "end": 1799, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1794, "end": 1795, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1796, "end": 1799, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1800, "end": 1805, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1806, "end": 1807, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 1809, "end": 1813, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1810, "end": 1812, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1826, "end": 1861, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1830, "end": 1860, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1830, "end": 1833, "ctxt": 0 }, "value": "a12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1836, "end": 1860, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1836, "end": 1847, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1836, "end": 1841, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1836, "end": 1837, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1838, "end": 1841, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1842, "end": 1847, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1848, "end": 1849, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 1851, "end": 1859, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1852, "end": 1854, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1856, "end": 1858, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1872, "end": 1916, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1876, "end": 1915, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1876, "end": 1879, "ctxt": 0 }, "value": "a13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1882, "end": 1915, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1882, "end": 1893, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1882, "end": 1887, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1882, "end": 1883, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1884, "end": 1887, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1888, "end": 1893, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1894, "end": 1895, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 1897, "end": 1914, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1898, "end": 1900, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1902, "end": 1909, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1911, "end": 1913, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1927, "end": 1975, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1931, "end": 1974, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1931, "end": 1934, "ctxt": 0 }, "value": "a14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1937, "end": 1974, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1937, "end": 1948, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 1937, "end": 1942, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1937, "end": 1938, "ctxt": 0 }, "value": "c", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1939, "end": 1942, "ctxt": 0 }, "value": "foo", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 1943, "end": 1948, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 1949, "end": 1958, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 1960, "end": 1973, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1961, "end": 1963, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1965, "end": 1972, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1987, "end": 2015, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1991, "end": 2014, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1991, "end": 1994, "ctxt": 0 }, "value": "f20", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1997, "end": 2014, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1997, "end": 2003, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1997, "end": 1998, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1999, "end": 2003, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2004, "end": 2013, "ctxt": 0 }, "value": "undefined", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2016, "end": 2048, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2020, "end": 2047, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2020, "end": 2023, "ctxt": 0 }, "value": "f21", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2026, "end": 2047, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2026, "end": 2032, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2026, "end": 2027, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2028, "end": 2032, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2033, "end": 2042, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2044, "end": 2046, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2049, "end": 2090, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2053, "end": 2089, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2053, "end": 2056, "ctxt": 0 }, "value": "f22", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2059, "end": 2089, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2059, "end": 2065, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2059, "end": 2060, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2061, "end": 2065, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2066, "end": 2075, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2077, "end": 2079, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2081, "end": 2088, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2091, "end": 2127, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2095, "end": 2126, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2095, "end": 2098, "ctxt": 0 }, "value": "f23", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2101, "end": 2126, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2101, "end": 2107, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2101, "end": 2102, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2103, "end": 2107, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2108, "end": 2117, "ctxt": 0 }, "value": "undefined", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2119, "end": 2121, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2123, "end": 2125, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 2139, "end": 2162, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2139, "end": 2161, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2139, "end": 2145, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2139, "end": 2140, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2141, "end": 2145, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2146, "end": 2147, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2149, "end": 2151, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2153, "end": 2160, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2163, "end": 2177, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2163, "end": 2176, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2163, "end": 2169, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2163, "end": 2164, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2165, "end": 2169, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2170, "end": 2171, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2173, "end": 2175, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2188, "end": 2206, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2188, "end": 2205, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2188, "end": 2194, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2188, "end": 2189, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2190, "end": 2194, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2195, "end": 2196, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2198, "end": 2200, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2202, "end": 2204, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2217, "end": 2244, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2217, "end": 2243, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2217, "end": 2223, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2217, "end": 2218, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2219, "end": 2223, "ctxt": 0 }, "value": "call", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2224, "end": 2225, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2227, "end": 2229, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2231, "end": 2238, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2240, "end": 2242, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2256, "end": 2282, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2256, "end": 2281, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2256, "end": 2263, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2256, "end": 2257, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2258, "end": 2263, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2264, "end": 2265, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 2267, "end": 2280, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2268, "end": 2270, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2272, "end": 2279, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2283, "end": 2300, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2283, "end": 2299, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2283, "end": 2290, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2283, "end": 2284, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2285, "end": 2290, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2291, "end": 2292, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 2294, "end": 2298, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2295, "end": 2297, "ctxt": 0 }, "value": 10.0, "raw": "10" } } ] } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2311, "end": 2332, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2311, "end": 2331, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2311, "end": 2318, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2311, "end": 2312, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2313, "end": 2318, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2319, "end": 2320, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 2322, "end": 2330, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2323, "end": 2325, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2327, "end": 2329, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ] } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2343, "end": 2373, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2343, "end": 2372, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2343, "end": 2350, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2343, "end": 2344, "ctxt": 0 }, "value": "C", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2345, "end": 2350, "ctxt": 0 }, "value": "apply", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2351, "end": 2352, "ctxt": 0 }, "value": "c", "optional": false } }, { "spread": null, "expression": { "type": "ArrayExpression", "span": { "start": 2354, "end": 2371, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2355, "end": 2357, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2359, "end": 2366, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2368, "end": 2370, "ctxt": 0 }, "value": 30.0, "raw": "30" } } ] } } ], "typeArguments": null } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2394, "end": 2397, "ctxt": 0 }, "value": "bar", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 2419, "end": 2458, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2419, "end": 2458, "ctxt": 0 }, "value": "callback", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2427, "end": 2458, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2429, "end": 2458, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2430, "end": 2437, "ctxt": 0 }, "value": "this", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2434, "end": 2437, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 2436, "end": 2437, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2436, "end": 2437, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "type": "RestElement", "span": { "start": 2439, "end": 2449, "ctxt": 0 }, "rest": { "start": 2439, "end": 2442, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2442, "end": 2446, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2446, "end": 2449, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2448, "end": 2449, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2448, "end": 2449, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2451, "end": 2458, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2454, "end": 2458, "ctxt": 0 }, "kind": "void" } } } } } } ], "decorators": [], "span": { "start": 2385, "end": 2516, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2460, "end": 2516, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 2466, "end": 2483, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2466, "end": 2482, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2466, "end": 2479, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2466, "end": 2474, "ctxt": 0 }, "value": "callback", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2475, "end": 2479, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2480, "end": 2481, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2488, "end": 2505, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2488, "end": 2504, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2488, "end": 2501, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2488, "end": 2496, "ctxt": 0 }, "value": "callback", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2497, "end": 2501, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2502, "end": 2503, "ctxt": 0 }, "value": 2.0, "raw": "2" } } ], "typeArguments": null } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2397, "end": 2418, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2398, "end": 2417, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2398, "end": 2399, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": { "type": "TsArrayType", "span": { "start": 2408, "end": 2417, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2408, "end": 2415, "ctxt": 0 }, "kind": "unknown" } }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2527, "end": 2530, "ctxt": 0 }, "value": "baz", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 2548, "end": 2630, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2548, "end": 2630, "ctxt": 0 }, "value": "callback", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2556, "end": 2630, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2558, "end": 2630, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2559, "end": 2566, "ctxt": 0 }, "value": "this", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2563, "end": 2566, "ctxt": 0 }, "typeAnnotation": { "type": "TsLiteralType", "span": { "start": 2565, "end": 2566, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2565, "end": 2566, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "type": "RestElement", "span": { "start": 2568, "end": 2621, "ctxt": 0 }, "rest": { "start": 2568, "end": 2571, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2571, "end": 2575, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2575, "end": 2621, "ctxt": 0 }, "typeAnnotation": { "type": "TsConditionalType", "span": { "start": 2577, "end": 2621, "ctxt": 0 }, "checkType": { "type": "TsTypeReference", "span": { "start": 2577, "end": 2578, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2577, "end": 2578, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, "extendsType": { "type": "TsLiteralType", "span": { "start": 2587, "end": 2588, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2587, "end": 2588, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, "trueType": { "type": "TsTupleType", "span": { "start": 2591, "end": 2600, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2592, "end": 2599, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2592, "end": 2599, "ctxt": 0 }, "kind": "unknown" } } ] }, "falseType": { "type": "TsTupleType", "span": { "start": 2603, "end": 2621, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2604, "end": 2611, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2604, "end": 2611, "ctxt": 0 }, "kind": "unknown" } }, { "type": "TsTupleElement", "span": { "start": 2613, "end": 2620, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2613, "end": 2620, "ctxt": 0 }, "kind": "unknown" } } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2623, "end": 2630, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2626, "end": 2630, "ctxt": 0 }, "kind": "void" } } } } } } ], "decorators": [], "span": { "start": 2518, "end": 2688, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2632, "end": 2688, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 2638, "end": 2655, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2638, "end": 2654, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2638, "end": 2651, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2638, "end": 2646, "ctxt": 0 }, "value": "callback", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2647, "end": 2651, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2652, "end": 2653, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 2660, "end": 2677, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2660, "end": 2676, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2660, "end": 2673, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 2660, "end": 2668, "ctxt": 0 }, "value": "callback", "optional": false }, "property": { "type": "Identifier", "span": { "start": 2669, "end": 2673, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2674, "end": 2675, "ctxt": 0 }, "value": 2.0, "raw": "2" } } ], "typeArguments": null } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2530, "end": 2547, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2531, "end": 2546, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2531, "end": 2532, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": { "type": "TsUnionType", "span": { "start": 2541, "end": 2546, "ctxt": 0 }, "types": [ { "type": "TsLiteralType", "span": { "start": 2541, "end": 2542, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2541, "end": 2542, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, { "type": "TsLiteralType", "span": { "start": 2545, "end": 2546, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2545, "end": 2546, "ctxt": 0 }, "value": 2.0, "raw": "2" } } ] }, "default": null } ] }, "returnType": null }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2717, "end": 2720, "ctxt": 0 }, "value": "Foo", "optional": false }, "declare": false, "span": { "start": 2711, "end": 2828, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 2748, "end": 2797, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 2748, "end": 2759, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 2762, "end": 2797, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 2772, "end": 2791, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2772, "end": 2790, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2772, "end": 2784, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 2772, "end": 2779, "ctxt": 0 }, "object": { "type": "ThisExpression", "span": { "start": 2772, "end": 2776, "ctxt": 0 } }, "property": { "type": "Identifier", "span": { "start": 2777, "end": 2779, "ctxt": 0 }, "value": "fn", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 2780, "end": 2784, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "ThisExpression", "span": { "start": 2785, "end": 2789, "ctxt": 0 } } } ], "typeArguments": null } } ] }, "accessibility": null, "isOptional": false }, { "type": "ClassMethod", "span": { "start": 2803, "end": 2826, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 2803, "end": 2805, "ctxt": 0 }, "value": "fn", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 2806, "end": 2816, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 2806, "end": 2816, "ctxt": 0 }, "rest": { "start": 2806, "end": 2809, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2809, "end": 2813, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2813, "end": 2816, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2815, "end": 2816, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2815, "end": 2816, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 2803, "end": 2826, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2824, "end": 2826, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2817, "end": 2823, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2819, "end": 2823, "ctxt": 0 }, "kind": "void" } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false } ], "superClass": null, "isAbstract": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2720, "end": 2741, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2721, "end": 2740, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2721, "end": 2722, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": { "type": "TsArrayType", "span": { "start": 2731, "end": 2740, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2731, "end": 2738, "ctxt": 0 }, "kind": "unknown" } }, "default": null } ] }, "superTypeParams": null, "implements": [] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2836, "end": 2839, "ctxt": 0 }, "value": "Bar", "optional": false }, "declare": false, "span": { "start": 2830, "end": 2980, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 2863, "end": 2912, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 2863, "end": 2874, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 2877, "end": 2912, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 2887, "end": 2906, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 2887, "end": 2905, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 2887, "end": 2899, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 2887, "end": 2894, "ctxt": 0 }, "object": { "type": "ThisExpression", "span": { "start": 2887, "end": 2891, "ctxt": 0 } }, "property": { "type": "Identifier", "span": { "start": 2892, "end": 2894, "ctxt": 0 }, "value": "fn", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 2895, "end": 2899, "ctxt": 0 }, "value": "bind", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "ThisExpression", "span": { "start": 2900, "end": 2904, "ctxt": 0 } } } ], "typeArguments": null } } ] }, "accessibility": null, "isOptional": false }, { "type": "ClassMethod", "span": { "start": 2918, "end": 2978, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 2918, "end": 2920, "ctxt": 0 }, "value": "fn", "optional": false }, "function": { "params": [ { "type": "Parameter", "span": { "start": 2921, "end": 2974, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 2921, "end": 2974, "ctxt": 0 }, "rest": { "start": 2921, "end": 2924, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2924, "end": 2928, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2928, "end": 2974, "ctxt": 0 }, "typeAnnotation": { "type": "TsConditionalType", "span": { "start": 2930, "end": 2974, "ctxt": 0 }, "checkType": { "type": "TsTypeReference", "span": { "start": 2930, "end": 2931, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2930, "end": 2931, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, "extendsType": { "type": "TsLiteralType", "span": { "start": 2940, "end": 2941, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2940, "end": 2941, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, "trueType": { "type": "TsTupleType", "span": { "start": 2944, "end": 2953, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2945, "end": 2952, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2945, "end": 2952, "ctxt": 0 }, "kind": "unknown" } } ] }, "falseType": { "type": "TsTupleType", "span": { "start": 2956, "end": 2974, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2957, "end": 2964, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2957, "end": 2964, "ctxt": 0 }, "kind": "unknown" } }, { "type": "TsTupleElement", "span": { "start": 2966, "end": 2973, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2966, "end": 2973, "ctxt": 0 }, "kind": "unknown" } } ] } } } } } ], "decorators": [], "span": { "start": 2918, "end": 2978, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2976, "end": 2978, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": false, "typeParameters": null, "returnType": null }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false } ], "superClass": null, "isAbstract": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2839, "end": 2856, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2840, "end": 2855, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2840, "end": 2841, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": { "type": "TsUnionType", "span": { "start": 2850, "end": 2855, "ctxt": 0 }, "types": [ { "type": "TsLiteralType", "span": { "start": 2850, "end": 2851, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2850, "end": 2851, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, { "type": "TsLiteralType", "span": { "start": 2854, "end": 2855, "ctxt": 0 }, "literal": { "type": "NumericLiteral", "span": { "start": 2854, "end": 2855, "ctxt": 0 }, "value": 2.0, "raw": "2" } } ] }, "default": null } ] }, "superTypeParams": null, "implements": [] } ], "interpreter": null }