{ "type": "Script", "span": { "start": 196, "end": 2389, "ctxt": 0 }, "body": [ { "type": "TsEnumDeclaration", "span": { "start": 196, "end": 216, "ctxt": 0 }, "declare": false, "isConst": false, "id": { "type": "Identifier", "span": { "start": 201, "end": 202, "ctxt": 0 }, "value": "E", "optional": false }, "members": [ { "type": "TsEnumMember", "span": { "start": 205, "end": 208, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 205, "end": 208, "ctxt": 0 }, "value": "red", "optional": false }, "init": null }, { "type": "TsEnumMember", "span": { "start": 210, "end": 214, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 210, "end": 214, "ctxt": 0 }, "value": "blue", "optional": false }, "init": null } ] }, { "type": "VariableDeclaration", "span": { "start": 425, "end": 524, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 429, "end": 524, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 429, "end": 431, "ctxt": 0 }, "value": "a0", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 431, "end": 465, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 433, "end": 465, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 434, "end": 443, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 435, "end": 443, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 437, "end": 443, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 445, "end": 454, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 446, "end": 454, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 448, "end": 454, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 456, "end": 465, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 459, "end": 465, "ctxt": 0 }, "kind": "number" } } } } }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 468, "end": 524, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 469, "end": 472, "ctxt": 0 }, "value": "num", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 474, "end": 477, "ctxt": 0 }, "value": "str", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 482, "end": 524, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 488, "end": 508, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 488, "end": 507, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 488, "end": 505, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 488, "end": 491, "ctxt": 0 }, "value": "num", "optional": false }, "property": { "type": "Identifier", "span": { "start": 492, "end": 505, "ctxt": 0 }, "value": "toExponential", "optional": false } }, "arguments": [], "typeArguments": null } }, { "type": "ReturnStatement", "span": { "start": 513, "end": 522, "ctxt": 0 }, "argument": { "type": "NumericLiteral", "span": { "start": 520, "end": 521, "ctxt": 0 }, "value": 0.0, "raw": "0" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 532, "end": 537, "ctxt": 0 }, "value": "Class", "optional": false }, "declare": false, "span": { "start": 526, "end": 558, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassMethod", "span": { "start": 547, "end": 556, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 547, "end": 550, "ctxt": 0 }, "value": "foo", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 547, "end": 556, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 553, "end": 556, "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": 537, "end": 540, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 538, "end": 539, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 538, "end": 539, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null } ] }, "superTypeParams": null, "implements": [] }, { "type": "VariableDeclaration", "span": { "start": 560, "end": 638, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 564, "end": 638, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 564, "end": 566, "ctxt": 0 }, "value": "a1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 566, "end": 596, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 568, "end": 596, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 569, "end": 585, "ctxt": 0 }, "value": "c", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 570, "end": 585, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 572, "end": 585, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 572, "end": 577, "ctxt": 0 }, "value": "Class", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 577, "end": 585, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 578, "end": 584, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 578, "end": 584, "ctxt": 0 }, "value": "Number", "optional": false }, "typeParams": null } ] } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 587, "end": 596, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 590, "end": 596, "ctxt": 0 }, "kind": "number" } } } } }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 599, "end": 638, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 600, "end": 602, "ctxt": 0 }, "value": "a1", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 607, "end": 638, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 613, "end": 622, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 613, "end": 621, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 613, "end": 619, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 613, "end": 615, "ctxt": 0 }, "value": "a1", "optional": false }, "property": { "type": "Identifier", "span": { "start": 616, "end": 619, "ctxt": 0 }, "value": "foo", "optional": false } }, "arguments": [], "typeArguments": null } }, { "type": "ReturnStatement", "span": { "start": 627, "end": 636, "ctxt": 0 }, "argument": { "type": "NumericLiteral", "span": { "start": 634, "end": 635, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1078, "end": 1158, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1082, "end": 1157, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1082, "end": 1084, "ctxt": 0 }, "value": "b1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1084, "end": 1157, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 1086, "end": 1157, "ctxt": 0 }, "types": [ { "type": "TsParenthesizedType", "span": { "start": 1086, "end": 1119, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1087, "end": 1118, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1088, "end": 1097, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1089, "end": 1097, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1091, "end": 1097, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1099, "end": 1109, "ctxt": 0 }, "value": "w", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1100, "end": 1109, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1102, "end": 1109, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1111, "end": 1118, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1114, "end": 1118, "ctxt": 0 }, "kind": "void" } } } }, { "type": "TsParenthesizedType", "span": { "start": 1122, "end": 1157, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1123, "end": 1156, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1124, "end": 1133, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1125, "end": 1133, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1127, "end": 1133, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1135, "end": 1145, "ctxt": 0 }, "value": "w", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1136, "end": 1145, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1138, "end": 1145, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1147, "end": 1156, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1150, "end": 1156, "ctxt": 0 }, "kind": "string" } } } } ] } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 1159, "end": 1178, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1159, "end": 1177, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1159, "end": 1161, "ctxt": 0 }, "value": "b1", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1164, "end": 1177, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1165, "end": 1166, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 1168, "end": 1169, "ctxt": 0 }, "value": "h", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1174, "end": 1177, "ctxt": 0 }, "stmts": [] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "VariableDeclaration", "span": { "start": 1179, "end": 1234, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1183, "end": 1233, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1183, "end": 1185, "ctxt": 0 }, "value": "b2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1185, "end": 1233, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 1187, "end": 1233, "ctxt": 0 }, "types": [ { "type": "TsTypeQuery", "span": { "start": 1187, "end": 1196, "ctxt": 0 }, "exprName": { "type": "Identifier", "span": { "start": 1194, "end": 1196, "ctxt": 0 }, "value": "a0", "optional": false }, "typeArguments": null }, { "type": "TsParenthesizedType", "span": { "start": 1199, "end": 1233, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1200, "end": 1232, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1201, "end": 1210, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1202, "end": 1210, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1204, "end": 1210, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 1212, "end": 1221, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1213, "end": 1221, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1215, "end": 1221, "ctxt": 0 }, "kind": "string" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1223, "end": 1232, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1226, "end": 1232, "ctxt": 0 }, "kind": "string" } } } } ] } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 1235, "end": 1273, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1235, "end": 1273, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1235, "end": 1237, "ctxt": 0 }, "value": "b2", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1240, "end": 1273, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1241, "end": 1244, "ctxt": 0 }, "value": "foo", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 1246, "end": 1249, "ctxt": 0 }, "value": "bar", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1254, "end": 1273, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1256, "end": 1271, "ctxt": 0 }, "argument": { "type": "BinaryExpression", "span": { "start": 1263, "end": 1270, "ctxt": 0 }, "operator": "+", "left": { "type": "Identifier", "span": { "start": 1263, "end": 1266, "ctxt": 0 }, "value": "foo", "optional": false }, "right": { "type": "NumericLiteral", "span": { "start": 1269, "end": 1270, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "ExpressionStatement", "span": { "start": 1274, "end": 1312, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1274, "end": 1312, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1274, "end": 1276, "ctxt": 0 }, "value": "b2", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1279, "end": 1312, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1280, "end": 1283, "ctxt": 0 }, "value": "foo", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 1285, "end": 1288, "ctxt": 0 }, "value": "bar", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1293, "end": 1312, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1295, "end": 1310, "ctxt": 0 }, "argument": { "type": "StringLiteral", "span": { "start": 1302, "end": 1309, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "VariableDeclaration", "span": { "start": 1313, "end": 1371, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1317, "end": 1370, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1317, "end": 1319, "ctxt": 0 }, "value": "b3", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1319, "end": 1370, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1321, "end": 1370, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1322, "end": 1334, "ctxt": 0 }, "value": "name", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1326, "end": 1334, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1328, "end": 1334, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1336, "end": 1347, "ctxt": 0 }, "value": "num", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1339, "end": 1347, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1341, "end": 1347, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 1349, "end": 1361, "ctxt": 0 }, "value": "boo", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1352, "end": 1361, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1354, "end": 1361, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1363, "end": 1370, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1366, "end": 1370, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 1372, "end": 1399, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1372, "end": 1398, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1372, "end": 1374, "ctxt": 0 }, "value": "b3", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1377, "end": 1398, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1378, "end": 1382, "ctxt": 0 }, "value": "name", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 1384, "end": 1390, "ctxt": 0 }, "value": "number", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1395, "end": 1398, "ctxt": 0 }, "stmts": [] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "VariableDeclaration", "span": { "start": 1401, "end": 1464, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1405, "end": 1463, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1405, "end": 1407, "ctxt": 0 }, "value": "b4", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1407, "end": 1425, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1409, "end": 1425, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1410, "end": 1414, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1411, "end": 1414, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1413, "end": 1414, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1413, "end": 1414, "ctxt": 0 }, "value": "E", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1416, "end": 1425, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1419, "end": 1425, "ctxt": 0 }, "kind": "string" } } } } }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 1428, "end": 1463, "ctxt": 0 }, "params": [ { "type": "AssignmentPattern", "span": { "start": 1429, "end": 1439, "ctxt": 0 }, "left": { "type": "Identifier", "span": { "start": 1429, "end": 1435, "ctxt": 0 }, "value": "number", "optional": false, "typeAnnotation": null }, "right": { "type": "NumericLiteral", "span": { "start": 1438, "end": 1439, "ctxt": 0 }, "value": 1.0, "raw": "1" } } ], "body": { "type": "BlockStatement", "span": { "start": 1444, "end": 1463, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1446, "end": 1461, "ctxt": 0 }, "argument": { "type": "StringLiteral", "span": { "start": 1453, "end": 1460, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1465, "end": 1536, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1469, "end": 1535, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1469, "end": 1471, "ctxt": 0 }, "value": "b5", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1471, "end": 1490, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1473, "end": 1490, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1474, "end": 1479, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1475, "end": 1479, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 1477, "end": 1479, "ctxt": 0 }, "members": [] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1481, "end": 1490, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1484, "end": 1490, "ctxt": 0 }, "kind": "string" } } } } }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 1493, "end": 1535, "ctxt": 0 }, "params": [ { "type": "AssignmentPattern", "span": { "start": 1494, "end": 1511, "ctxt": 0 }, "left": { "type": "Identifier", "span": { "start": 1494, "end": 1500, "ctxt": 0 }, "value": "number", "optional": false, "typeAnnotation": null }, "right": { "type": "StringLiteral", "span": { "start": 1503, "end": 1511, "ctxt": 0 }, "value": "string", "raw": "\"string\"" } } ], "body": { "type": "BlockStatement", "span": { "start": 1516, "end": 1535, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 1518, "end": 1533, "ctxt": 0 }, "argument": { "type": "StringLiteral", "span": { "start": 1525, "end": 1532, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1701, "end": 1769, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1705, "end": 1768, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1705, "end": 1707, "ctxt": 0 }, "value": "b6", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1707, "end": 1768, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 1709, "end": 1768, "ctxt": 0 }, "types": [ { "type": "TsParenthesizedType", "span": { "start": 1709, "end": 1742, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1710, "end": 1741, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1711, "end": 1720, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1712, "end": 1720, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1714, "end": 1720, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1722, "end": 1732, "ctxt": 0 }, "value": "w", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1723, "end": 1732, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1725, "end": 1732, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1734, "end": 1741, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1737, "end": 1741, "ctxt": 0 }, "kind": "void" } } } }, { "type": "TsParenthesizedType", "span": { "start": 1745, "end": 1768, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1746, "end": 1767, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1747, "end": 1756, "ctxt": 0 }, "value": "n", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1748, "end": 1756, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1750, "end": 1756, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1758, "end": 1767, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1761, "end": 1767, "ctxt": 0 }, "kind": "number" } } } } ] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1770, "end": 1849, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1774, "end": 1848, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1774, "end": 1776, "ctxt": 0 }, "value": "b7", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1776, "end": 1848, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 1778, "end": 1848, "ctxt": 0 }, "types": [ { "type": "TsParenthesizedType", "span": { "start": 1778, "end": 1811, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1779, "end": 1810, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1780, "end": 1789, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1781, "end": 1789, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1783, "end": 1789, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1791, "end": 1801, "ctxt": 0 }, "value": "w", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1792, "end": 1801, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1794, "end": 1801, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1803, "end": 1810, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1806, "end": 1810, "ctxt": 0 }, "kind": "void" } } } }, { "type": "TsParenthesizedType", "span": { "start": 1814, "end": 1848, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 1815, "end": 1847, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1816, "end": 1825, "ctxt": 0 }, "value": "s", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1817, "end": 1825, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1819, "end": 1825, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 1827, "end": 1836, "ctxt": 0 }, "value": "w", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1828, "end": 1836, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1830, "end": 1836, "ctxt": 0 }, "kind": "number" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1838, "end": 1847, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 1841, "end": 1847, "ctxt": 0 }, "kind": "string" } } } } ] } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 1850, "end": 1882, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1850, "end": 1881, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1850, "end": 1852, "ctxt": 0 }, "value": "b6", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1855, "end": 1881, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1856, "end": 1857, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1862, "end": 1881, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 1864, "end": 1879, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 1864, "end": 1879, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1864, "end": 1877, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1864, "end": 1865, "ctxt": 0 }, "value": "k", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1866, "end": 1877, "ctxt": 0 }, "value": "toLowerCase", "optional": false } }, "arguments": [], "typeArguments": null } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "ExpressionStatement", "span": { "start": 1883, "end": 1936, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 1883, "end": 1935, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 1883, "end": 1885, "ctxt": 0 }, "value": "b6", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 1888, "end": 1935, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 1889, "end": 1890, "ctxt": 0 }, "value": "i", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 1895, "end": 1935, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 1901, "end": 1919, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 1901, "end": 1918, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 1901, "end": 1916, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 1901, "end": 1902, "ctxt": 0 }, "value": "i", "optional": false }, "property": { "type": "Identifier", "span": { "start": 1903, "end": 1916, "ctxt": 0 }, "value": "toExponential", "optional": false } }, "arguments": [], "typeArguments": null } }, { "type": "ReturnStatement", "span": { "start": 1924, "end": 1933, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1931, "end": 1932, "ctxt": 0 }, "value": "i", "optional": false } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "ExpressionStatement", "span": { "start": 2042, "end": 2061, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 2042, "end": 2060, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 2042, "end": 2044, "ctxt": 0 }, "value": "b7", "optional": false, "typeAnnotation": null }, "right": { "type": "ArrowFunctionExpression", "span": { "start": 2047, "end": 2060, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2048, "end": 2049, "ctxt": 0 }, "value": "j", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 2051, "end": 2052, "ctxt": 0 }, "value": "m", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 2057, "end": 2060, "ctxt": 0 }, "stmts": [] }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2157, "end": 2158, "ctxt": 0 }, "value": "C", "optional": false }, "declare": false, "span": { "start": 2151, "end": 2389, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 2171, "end": 2387, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 2171, "end": 2182, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 2185, "end": 2387, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 2195, "end": 2311, "ctxt": 0 }, "kind": "var", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2199, "end": 2311, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2199, "end": 2200, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2200, "end": 2260, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 2202, "end": 2260, "ctxt": 0 }, "types": [ { "type": "TsParenthesizedType", "span": { "start": 2202, "end": 2227, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2203, "end": 2226, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2204, "end": 2208, "ctxt": 0 }, "value": "j", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2205, "end": 2208, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2207, "end": 2208, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2207, "end": 2208, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "Identifier", "span": { "start": 2210, "end": 2214, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2211, "end": 2214, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2213, "end": 2214, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2213, "end": 2214, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2216, "end": 2226, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2219, "end": 2226, "ctxt": 0 }, "elemType": { "type": "TsParenthesizedType", "span": { "start": 2219, "end": 2224, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 2220, "end": 2223, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 2220, "end": 2221, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2220, "end": 2221, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 2222, "end": 2223, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2222, "end": 2223, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } ] } } } } } }, { "type": "TsParenthesizedType", "span": { "start": 2230, "end": 2260, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2231, "end": 2259, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2232, "end": 2241, "ctxt": 0 }, "value": "j", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2233, "end": 2241, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2235, "end": 2241, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 2242, "end": 2246, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2244, "end": 2246, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2245, "end": 2246, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2245, "end": 2246, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2248, "end": 2259, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 2251, "end": 2259, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2251, "end": 2257, "ctxt": 0 }, "kind": "number" } } } } } ] } } }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 2263, "end": 2311, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2264, "end": 2265, "ctxt": 0 }, "value": "j", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 2267, "end": 2268, "ctxt": 0 }, "value": "k", "optional": false, "typeAnnotation": null } ], "body": { "type": "BlockStatement", "span": { "start": 2273, "end": 2311, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 2287, "end": 2301, "ctxt": 0 }, "argument": { "type": "ArrayExpression", "span": { "start": 2294, "end": 2300, "ctxt": 0 }, "elements": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2295, "end": 2296, "ctxt": 0 }, "value": "j", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2298, "end": 2299, "ctxt": 0 }, "value": "k", "optional": false } } ] } } ] }, "async": false, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] } ] }, "accessibility": null, "isOptional": false } ], "superClass": null, "isAbstract": false, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 2158, "end": 2164, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2159, "end": 2160, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2159, "end": 2160, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 2162, "end": 2163, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2162, "end": 2163, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "const": false, "constraint": null, "default": null } ] }, "superTypeParams": null, "implements": [] } ], "interpreter": null }