{ "type": "Module", "span": { "start": 71, "end": 988, "ctxt": 0 }, "body": [ { "type": "ImportDeclaration", "span": { "start": 71, "end": 107, "ctxt": 0 }, "specifiers": [ { "type": "ImportSpecifier", "span": { "start": 80, "end": 89, "ctxt": 0 }, "local": { "type": "Identifier", "span": { "start": 80, "end": 89, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "imported": null, "isTypeOnly": false } ], "source": { "type": "StringLiteral", "span": { "start": 97, "end": 106, "ctxt": 0 }, "value": "missing", "raw": "\"missing\"" }, "typeOnly": false, "asserts": null }, { "type": "VariableDeclaration", "span": { "start": 109, "end": 140, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 121, "end": 139, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 121, "end": 122, "ctxt": 0 }, "value": "p", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 122, "end": 139, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 124, "end": 139, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 124, "end": 131, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 131, "end": 139, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 132, "end": 138, "ctxt": 0 }, "kind": "number" } ] } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 141, "end": 175, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 153, "end": 174, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 153, "end": 155, "ctxt": 0 }, "value": "mp", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 155, "end": 174, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 157, "end": 174, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 157, "end": 166, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 166, "end": 174, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 167, "end": 173, "ctxt": 0 }, "kind": "number" } ] } } } }, "init": null, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 192, "end": 194, "ctxt": 0 }, "value": "f0", "optional": false }, "declare": false, "params": [], "decorators": [], "span": { "start": 177, "end": 200, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 197, "end": 200, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 216, "end": 218, "ctxt": 0 }, "value": "f1", "optional": false }, "declare": false, "params": [], "decorators": [], "span": { "start": 201, "end": 239, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 236, "end": 239, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 220, "end": 235, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 222, "end": 235, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 222, "end": 229, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 229, "end": 235, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 230, "end": 234, "ctxt": 0 }, "kind": "void" } ] } } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 255, "end": 257, "ctxt": 0 }, "value": "f3", "optional": false }, "declare": false, "params": [], "decorators": [], "span": { "start": 240, "end": 280, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 277, "end": 280, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 259, "end": 276, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 261, "end": 276, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 261, "end": 270, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 270, "end": 276, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 271, "end": 275, "ctxt": 0 }, "kind": "void" } ] } } } }, { "type": "VariableDeclaration", "span": { "start": 282, "end": 311, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 286, "end": 311, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 286, "end": 288, "ctxt": 0 }, "value": "f4", "optional": false, "typeAnnotation": null }, "init": { "type": "FunctionExpression", "identifier": null, "params": [], "decorators": [], "span": { "start": 291, "end": 311, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 308, "end": 311, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 312, "end": 356, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 316, "end": 356, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 316, "end": 318, "ctxt": 0 }, "value": "f5", "optional": false, "typeAnnotation": null }, "init": { "type": "FunctionExpression", "identifier": null, "params": [], "decorators": [], "span": { "start": 321, "end": 356, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 353, "end": 356, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 337, "end": 352, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 339, "end": 352, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 339, "end": 346, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 346, "end": 352, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 347, "end": 351, "ctxt": 0 }, "kind": "void" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 357, "end": 403, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 361, "end": 403, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 361, "end": 363, "ctxt": 0 }, "value": "f6", "optional": false, "typeAnnotation": null }, "init": { "type": "FunctionExpression", "identifier": null, "params": [], "decorators": [], "span": { "start": 366, "end": 403, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 400, "end": 403, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 382, "end": 399, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 384, "end": 399, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 384, "end": 393, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 393, "end": 399, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 394, "end": 398, "ctxt": 0 }, "kind": "void" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 405, "end": 430, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 409, "end": 429, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 409, "end": 411, "ctxt": 0 }, "value": "f7", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 414, "end": 429, "ctxt": 0 }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 426, "end": 429, "ctxt": 0 }, "stmts": [] }, "async": true, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 431, "end": 471, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 435, "end": 470, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 435, "end": 437, "ctxt": 0 }, "value": "f8", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 440, "end": 470, "ctxt": 0 }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 467, "end": 470, "ctxt": 0 }, "stmts": [] }, "async": true, "generator": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 448, "end": 463, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 450, "end": 463, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 450, "end": 457, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 457, "end": 463, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 458, "end": 462, "ctxt": 0 }, "kind": "void" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 472, "end": 514, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 476, "end": 513, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 476, "end": 478, "ctxt": 0 }, "value": "f9", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 481, "end": 513, "ctxt": 0 }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 510, "end": 513, "ctxt": 0 }, "stmts": [] }, "async": true, "generator": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 489, "end": 506, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 491, "end": 506, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 491, "end": 500, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 500, "end": 506, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 501, "end": 505, "ctxt": 0 }, "kind": "void" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 515, "end": 539, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 519, "end": 538, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 519, "end": 522, "ctxt": 0 }, "value": "f10", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 525, "end": 538, "ctxt": 0 }, "params": [], "body": { "type": "Identifier", "span": { "start": 537, "end": 538, "ctxt": 0 }, "value": "p", "optional": false }, "async": true, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 540, "end": 565, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 544, "end": 564, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 544, "end": 547, "ctxt": 0 }, "value": "f11", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 550, "end": 564, "ctxt": 0 }, "params": [], "body": { "type": "Identifier", "span": { "start": 562, "end": 564, "ctxt": 0 }, "value": "mp", "optional": false }, "async": true, "generator": false, "typeParameters": null, "returnType": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 566, "end": 608, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 570, "end": 607, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 570, "end": 573, "ctxt": 0 }, "value": "f12", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 576, "end": 607, "ctxt": 0 }, "params": [], "body": { "type": "Identifier", "span": { "start": 605, "end": 607, "ctxt": 0 }, "value": "mp", "optional": false }, "async": true, "generator": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 584, "end": 601, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 586, "end": 601, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 586, "end": 593, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 593, "end": 601, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 594, "end": 600, "ctxt": 0 }, "kind": "number" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 609, "end": 652, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 613, "end": 651, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 613, "end": 616, "ctxt": 0 }, "value": "f13", "optional": false, "typeAnnotation": null }, "init": { "type": "ArrowFunctionExpression", "span": { "start": 619, "end": 651, "ctxt": 0 }, "params": [], "body": { "type": "Identifier", "span": { "start": 650, "end": 651, "ctxt": 0 }, "value": "p", "optional": false }, "async": true, "generator": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 627, "end": 646, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 629, "end": 646, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 629, "end": 638, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 638, "end": 646, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 639, "end": 645, "ctxt": 0 }, "kind": "number" } ] } } } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 654, "end": 748, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 658, "end": 747, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 658, "end": 659, "ctxt": 0 }, "value": "o", "optional": false, "typeAnnotation": null }, "init": { "type": "ObjectExpression", "span": { "start": 662, "end": 747, "ctxt": 0 }, "properties": [ { "type": "MethodProperty", "key": { "type": "Identifier", "span": { "start": 671, "end": 673, "ctxt": 0 }, "value": "m1", "optional": false }, "params": [], "decorators": [], "span": { "start": 665, "end": 679, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 676, "end": 679, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null }, { "type": "MethodProperty", "key": { "type": "Identifier", "span": { "start": 688, "end": 690, "ctxt": 0 }, "value": "m2", "optional": false }, "params": [], "decorators": [], "span": { "start": 682, "end": 711, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 708, "end": 711, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 692, "end": 707, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 694, "end": 707, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 694, "end": 701, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 701, "end": 707, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 702, "end": 706, "ctxt": 0 }, "kind": "void" } ] } } } }, { "type": "MethodProperty", "key": { "type": "Identifier", "span": { "start": 720, "end": 722, "ctxt": 0 }, "value": "m3", "optional": false }, "params": [], "decorators": [], "span": { "start": 714, "end": 745, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 742, "end": 745, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 724, "end": 741, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 726, "end": 741, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 726, "end": 735, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 735, "end": 741, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 736, "end": 740, "ctxt": 0 }, "kind": "void" } ] } } } } ] }, "definite": false } ] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 756, "end": 757, "ctxt": 0 }, "value": "C", "optional": false }, "declare": false, "span": { "start": 750, "end": 942, "ctxt": 0 }, "decorators": [], "body": [ { "type": "ClassMethod", "span": { "start": 761, "end": 775, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 767, "end": 769, "ctxt": 0 }, "value": "m1", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 761, "end": 775, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 772, "end": 775, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 777, "end": 806, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 783, "end": 785, "ctxt": 0 }, "value": "m2", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 777, "end": 806, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 803, "end": 806, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 787, "end": 802, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 789, "end": 802, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 789, "end": 796, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 796, "end": 802, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 797, "end": 801, "ctxt": 0 }, "kind": "void" } ] } } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 808, "end": 839, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 814, "end": 816, "ctxt": 0 }, "value": "m3", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 808, "end": 839, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 836, "end": 839, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 818, "end": 835, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 820, "end": 835, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 820, "end": 829, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 829, "end": 835, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 830, "end": 834, "ctxt": 0 }, "kind": "void" } ] } } } }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 841, "end": 862, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 854, "end": 856, "ctxt": 0 }, "value": "m4", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 841, "end": 862, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 859, "end": 862, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null }, "kind": "method", "isStatic": true, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 864, "end": 900, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 877, "end": 879, "ctxt": 0 }, "value": "m5", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 864, "end": 900, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 897, "end": 900, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 881, "end": 896, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 883, "end": 896, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 883, "end": 890, "ctxt": 0 }, "value": "Promise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 890, "end": 896, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 891, "end": 895, "ctxt": 0 }, "kind": "void" } ] } } } }, "kind": "method", "isStatic": true, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false }, { "type": "ClassMethod", "span": { "start": 902, "end": 940, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 915, "end": 917, "ctxt": 0 }, "value": "m6", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 902, "end": 940, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 937, "end": 940, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 919, "end": 936, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 921, "end": 936, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 921, "end": 930, "ctxt": 0 }, "value": "MyPromise", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 930, "end": 936, "ctxt": 0 }, "params": [ { "type": "TsKeywordType", "span": { "start": 931, "end": 935, "ctxt": 0 }, "kind": "void" } ] } } } }, "kind": "method", "isStatic": true, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "TsModuleDeclaration", "span": { "start": 944, "end": 988, "ctxt": 0 }, "declare": false, "global": false, "id": { "type": "Identifier", "span": { "start": 951, "end": 952, "ctxt": 0 }, "value": "M", "optional": false }, "body": { "type": "TsModuleBlock", "span": { "start": 953, "end": 988, "ctxt": 0 }, "body": [ { "type": "ExportDeclaration", "span": { "start": 956, "end": 986, "ctxt": 0 }, "declaration": { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 978, "end": 980, "ctxt": 0 }, "value": "f1", "optional": false }, "declare": false, "params": [], "decorators": [], "span": { "start": 963, "end": 986, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 983, "end": 986, "ctxt": 0 }, "stmts": [] }, "generator": false, "async": true, "typeParameters": null, "returnType": null } } ] } } ], "interpreter": null }