1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "Foo", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 16, 14 "column": 7 15 }, 16 "end": { 17 "line": 16, 18 "column": 10 19 } 20 } 21 }, 22 "typeParameters": { 23 "type": "TSTypeParameterDeclaration", 24 "params": [ 25 { 26 "type": "TSTypeParameter", 27 "name": { 28 "type": "Identifier", 29 "name": "T", 30 "decorators": [], 31 "loc": { 32 "start": { 33 "line": 16, 34 "column": 11 35 }, 36 "end": { 37 "line": 16, 38 "column": 12 39 } 40 } 41 }, 42 "loc": { 43 "start": { 44 "line": 16, 45 "column": 11 46 }, 47 "end": { 48 "line": 16, 49 "column": 13 50 } 51 } 52 } 53 ], 54 "loc": { 55 "start": { 56 "line": 16, 57 "column": 10 58 }, 59 "end": { 60 "line": 16, 61 "column": 13 62 } 63 } 64 }, 65 "superClass": null, 66 "implements": [], 67 "body": [ 68 { 69 "type": "MethodDefinition", 70 "key": { 71 "type": "Identifier", 72 "name": "then", 73 "decorators": [], 74 "loc": { 75 "start": { 76 "line": 17, 77 "column": 5 78 }, 79 "end": { 80 "line": 17, 81 "column": 9 82 } 83 } 84 }, 85 "kind": "method", 86 "accessibility": "public", 87 "static": false, 88 "optional": false, 89 "computed": false, 90 "value": { 91 "type": "FunctionExpression", 92 "function": { 93 "type": "ScriptFunction", 94 "id": { 95 "type": "Identifier", 96 "name": "then", 97 "decorators": [], 98 "loc": { 99 "start": { 100 "line": 17, 101 "column": 5 102 }, 103 "end": { 104 "line": 17, 105 "column": 9 106 } 107 } 108 }, 109 "generator": false, 110 "async": false, 111 "expression": false, 112 "params": [], 113 "returnType": { 114 "type": "ETSUnionType", 115 "types": [ 116 { 117 "type": "ETSTypeReference", 118 "part": { 119 "type": "ETSTypeReferencePart", 120 "name": { 121 "type": "Identifier", 122 "name": "Foo", 123 "decorators": [], 124 "loc": { 125 "start": { 126 "line": 17, 127 "column": 16 128 }, 129 "end": { 130 "line": 17, 131 "column": 19 132 } 133 } 134 }, 135 "typeParams": { 136 "type": "TSTypeParameterInstantiation", 137 "params": [ 138 { 139 "type": "ETSTypeReference", 140 "part": { 141 "type": "ETSTypeReferencePart", 142 "name": { 143 "type": "Identifier", 144 "name": "U", 145 "decorators": [], 146 "loc": { 147 "start": { 148 "line": 17, 149 "column": 20 150 }, 151 "end": { 152 "line": 17, 153 "column": 21 154 } 155 } 156 }, 157 "loc": { 158 "start": { 159 "line": 17, 160 "column": 20 161 }, 162 "end": { 163 "line": 17, 164 "column": 22 165 } 166 } 167 }, 168 "loc": { 169 "start": { 170 "line": 17, 171 "column": 20 172 }, 173 "end": { 174 "line": 17, 175 "column": 22 176 } 177 } 178 } 179 ], 180 "loc": { 181 "start": { 182 "line": 17, 183 "column": 19 184 }, 185 "end": { 186 "line": 17, 187 "column": 22 188 } 189 } 190 }, 191 "loc": { 192 "start": { 193 "line": 17, 194 "column": 16 195 }, 196 "end": { 197 "line": 17, 198 "column": 24 199 } 200 } 201 }, 202 "loc": { 203 "start": { 204 "line": 17, 205 "column": 16 206 }, 207 "end": { 208 "line": 17, 209 "column": 24 210 } 211 } 212 }, 213 { 214 "type": "ETSNullType", 215 "loc": { 216 "start": { 217 "line": 17, 218 "column": 25 219 }, 220 "end": { 221 "line": 17, 222 "column": 29 223 } 224 } 225 } 226 ], 227 "loc": { 228 "start": { 229 "line": 17, 230 "column": 16 231 }, 232 "end": { 233 "line": 17, 234 "column": 29 235 } 236 } 237 }, 238 "typeParameters": { 239 "type": "TSTypeParameterDeclaration", 240 "params": [ 241 { 242 "type": "TSTypeParameter", 243 "name": { 244 "type": "Identifier", 245 "name": "U", 246 "decorators": [], 247 "loc": { 248 "start": { 249 "line": 17, 250 "column": 10 251 }, 252 "end": { 253 "line": 17, 254 "column": 11 255 } 256 } 257 }, 258 "loc": { 259 "start": { 260 "line": 17, 261 "column": 10 262 }, 263 "end": { 264 "line": 17, 265 "column": 12 266 } 267 } 268 } 269 ], 270 "loc": { 271 "start": { 272 "line": 17, 273 "column": 9 274 }, 275 "end": { 276 "line": 17, 277 "column": 12 278 } 279 } 280 }, 281 "body": { 282 "type": "BlockStatement", 283 "statements": [ 284 { 285 "type": "ReturnStatement", 286 "argument": { 287 "type": "NullLiteral", 288 "value": null, 289 "loc": { 290 "start": { 291 "line": 18, 292 "column": 16 293 }, 294 "end": { 295 "line": 18, 296 "column": 20 297 } 298 } 299 }, 300 "loc": { 301 "start": { 302 "line": 18, 303 "column": 9 304 }, 305 "end": { 306 "line": 18, 307 "column": 21 308 } 309 } 310 } 311 ], 312 "loc": { 313 "start": { 314 "line": 17, 315 "column": 30 316 }, 317 "end": { 318 "line": 19, 319 "column": 6 320 } 321 } 322 }, 323 "loc": { 324 "start": { 325 "line": 17, 326 "column": 9 327 }, 328 "end": { 329 "line": 19, 330 "column": 6 331 } 332 } 333 }, 334 "loc": { 335 "start": { 336 "line": 17, 337 "column": 9 338 }, 339 "end": { 340 "line": 19, 341 "column": 6 342 } 343 } 344 }, 345 "overloads": [], 346 "decorators": [], 347 "loc": { 348 "start": { 349 "line": 17, 350 "column": 5 351 }, 352 "end": { 353 "line": 19, 354 "column": 6 355 } 356 } 357 }, 358 { 359 "type": "ClassProperty", 360 "key": { 361 "type": "Identifier", 362 "name": "value", 363 "decorators": [], 364 "loc": { 365 "start": { 366 "line": 21, 367 "column": 12 368 }, 369 "end": { 370 "line": 21, 371 "column": 17 372 } 373 } 374 }, 375 "accessibility": "public", 376 "static": false, 377 "readonly": false, 378 "declare": false, 379 "optional": false, 380 "computed": false, 381 "typeAnnotation": { 382 "type": "ETSTypeReference", 383 "part": { 384 "type": "ETSTypeReferencePart", 385 "name": { 386 "type": "Identifier", 387 "name": "T", 388 "decorators": [], 389 "loc": { 390 "start": { 391 "line": 21, 392 "column": 19 393 }, 394 "end": { 395 "line": 21, 396 "column": 20 397 } 398 } 399 }, 400 "loc": { 401 "start": { 402 "line": 21, 403 "column": 19 404 }, 405 "end": { 406 "line": 21, 407 "column": 21 408 } 409 } 410 }, 411 "loc": { 412 "start": { 413 "line": 21, 414 "column": 19 415 }, 416 "end": { 417 "line": 21, 418 "column": 21 419 } 420 } 421 }, 422 "definite": false, 423 "decorators": [], 424 "loc": { 425 "start": { 426 "line": 21, 427 "column": 12 428 }, 429 "end": { 430 "line": 21, 431 "column": 21 432 } 433 } 434 }, 435 { 436 "type": "MethodDefinition", 437 "key": { 438 "type": "Identifier", 439 "name": "constructor", 440 "decorators": [], 441 "loc": { 442 "start": { 443 "line": 1, 444 "column": 1 445 }, 446 "end": { 447 "line": 1, 448 "column": 1 449 } 450 } 451 }, 452 "kind": "constructor", 453 "static": false, 454 "optional": false, 455 "computed": false, 456 "value": { 457 "type": "FunctionExpression", 458 "function": { 459 "type": "ScriptFunction", 460 "id": { 461 "type": "Identifier", 462 "name": "constructor", 463 "decorators": [], 464 "loc": { 465 "start": { 466 "line": 1, 467 "column": 1 468 }, 469 "end": { 470 "line": 1, 471 "column": 1 472 } 473 } 474 }, 475 "generator": false, 476 "async": false, 477 "expression": false, 478 "params": [], 479 "body": { 480 "type": "BlockStatement", 481 "statements": [], 482 "loc": { 483 "start": { 484 "line": 1, 485 "column": 1 486 }, 487 "end": { 488 "line": 1, 489 "column": 1 490 } 491 } 492 }, 493 "loc": { 494 "start": { 495 "line": 1, 496 "column": 1 497 }, 498 "end": { 499 "line": 1, 500 "column": 1 501 } 502 } 503 }, 504 "loc": { 505 "start": { 506 "line": 1, 507 "column": 1 508 }, 509 "end": { 510 "line": 1, 511 "column": 1 512 } 513 } 514 }, 515 "overloads": [], 516 "decorators": [], 517 "loc": { 518 "start": { 519 "line": 22, 520 "column": 2 521 }, 522 "end": { 523 "line": 22, 524 "column": 2 525 } 526 } 527 } 528 ], 529 "loc": { 530 "start": { 531 "line": 16, 532 "column": 14 533 }, 534 "end": { 535 "line": 22, 536 "column": 2 537 } 538 } 539 }, 540 "loc": { 541 "start": { 542 "line": 16, 543 "column": 1 544 }, 545 "end": { 546 "line": 22, 547 "column": 2 548 } 549 } 550 }, 551 { 552 "type": "ClassDeclaration", 553 "definition": { 554 "id": { 555 "type": "Identifier", 556 "name": "A", 557 "decorators": [], 558 "loc": { 559 "start": { 560 "line": 24, 561 "column": 7 562 }, 563 "end": { 564 "line": 24, 565 "column": 8 566 } 567 } 568 }, 569 "typeParameters": { 570 "type": "TSTypeParameterDeclaration", 571 "params": [ 572 { 573 "type": "TSTypeParameter", 574 "name": { 575 "type": "Identifier", 576 "name": "T", 577 "decorators": [], 578 "loc": { 579 "start": { 580 "line": 24, 581 "column": 9 582 }, 583 "end": { 584 "line": 24, 585 "column": 10 586 } 587 } 588 }, 589 "loc": { 590 "start": { 591 "line": 24, 592 "column": 9 593 }, 594 "end": { 595 "line": 24, 596 "column": 11 597 } 598 } 599 } 600 ], 601 "loc": { 602 "start": { 603 "line": 24, 604 "column": 8 605 }, 606 "end": { 607 "line": 24, 608 "column": 11 609 } 610 } 611 }, 612 "superClass": null, 613 "implements": [], 614 "body": [ 615 { 616 "type": "MethodDefinition", 617 "key": { 618 "type": "Identifier", 619 "name": "bar", 620 "decorators": [], 621 "loc": { 622 "start": { 623 "line": 25, 624 "column": 5 625 }, 626 "end": { 627 "line": 25, 628 "column": 8 629 } 630 } 631 }, 632 "kind": "method", 633 "accessibility": "public", 634 "static": false, 635 "optional": false, 636 "computed": false, 637 "value": { 638 "type": "FunctionExpression", 639 "function": { 640 "type": "ScriptFunction", 641 "id": { 642 "type": "Identifier", 643 "name": "bar", 644 "decorators": [], 645 "loc": { 646 "start": { 647 "line": 25, 648 "column": 5 649 }, 650 "end": { 651 "line": 25, 652 "column": 8 653 } 654 } 655 }, 656 "generator": false, 657 "async": false, 658 "expression": false, 659 "params": [], 660 "returnType": { 661 "type": "ETSUnionType", 662 "types": [ 663 { 664 "type": "ETSTypeReference", 665 "part": { 666 "type": "ETSTypeReferencePart", 667 "name": { 668 "type": "Identifier", 669 "name": "A", 670 "decorators": [], 671 "loc": { 672 "start": { 673 "line": 25, 674 "column": 12 675 }, 676 "end": { 677 "line": 25, 678 "column": 13 679 } 680 } 681 }, 682 "typeParams": { 683 "type": "TSTypeParameterInstantiation", 684 "params": [ 685 { 686 "type": "ETSTypeReference", 687 "part": { 688 "type": "ETSTypeReferencePart", 689 "name": { 690 "type": "Identifier", 691 "name": "T", 692 "decorators": [], 693 "loc": { 694 "start": { 695 "line": 25, 696 "column": 14 697 }, 698 "end": { 699 "line": 25, 700 "column": 15 701 } 702 } 703 }, 704 "loc": { 705 "start": { 706 "line": 25, 707 "column": 14 708 }, 709 "end": { 710 "line": 25, 711 "column": 16 712 } 713 } 714 }, 715 "loc": { 716 "start": { 717 "line": 25, 718 "column": 14 719 }, 720 "end": { 721 "line": 25, 722 "column": 16 723 } 724 } 725 } 726 ], 727 "loc": { 728 "start": { 729 "line": 25, 730 "column": 13 731 }, 732 "end": { 733 "line": 25, 734 "column": 16 735 } 736 } 737 }, 738 "loc": { 739 "start": { 740 "line": 25, 741 "column": 12 742 }, 743 "end": { 744 "line": 25, 745 "column": 18 746 } 747 } 748 }, 749 "loc": { 750 "start": { 751 "line": 25, 752 "column": 12 753 }, 754 "end": { 755 "line": 25, 756 "column": 18 757 } 758 } 759 }, 760 { 761 "type": "ETSNullType", 762 "loc": { 763 "start": { 764 "line": 25, 765 "column": 19 766 }, 767 "end": { 768 "line": 25, 769 "column": 23 770 } 771 } 772 } 773 ], 774 "loc": { 775 "start": { 776 "line": 25, 777 "column": 12 778 }, 779 "end": { 780 "line": 25, 781 "column": 23 782 } 783 } 784 }, 785 "body": { 786 "type": "BlockStatement", 787 "statements": [ 788 { 789 "type": "ReturnStatement", 790 "argument": { 791 "type": "NullLiteral", 792 "value": null, 793 "loc": { 794 "start": { 795 "line": 26, 796 "column": 16 797 }, 798 "end": { 799 "line": 26, 800 "column": 20 801 } 802 } 803 }, 804 "loc": { 805 "start": { 806 "line": 26, 807 "column": 9 808 }, 809 "end": { 810 "line": 26, 811 "column": 21 812 } 813 } 814 } 815 ], 816 "loc": { 817 "start": { 818 "line": 25, 819 "column": 24 820 }, 821 "end": { 822 "line": 27, 823 "column": 6 824 } 825 } 826 }, 827 "loc": { 828 "start": { 829 "line": 25, 830 "column": 8 831 }, 832 "end": { 833 "line": 27, 834 "column": 6 835 } 836 } 837 }, 838 "loc": { 839 "start": { 840 "line": 25, 841 "column": 8 842 }, 843 "end": { 844 "line": 27, 845 "column": 6 846 } 847 } 848 }, 849 "overloads": [], 850 "decorators": [], 851 "loc": { 852 "start": { 853 "line": 25, 854 "column": 5 855 }, 856 "end": { 857 "line": 27, 858 "column": 6 859 } 860 } 861 }, 862 { 863 "type": "MethodDefinition", 864 "key": { 865 "type": "Identifier", 866 "name": "baz", 867 "decorators": [], 868 "loc": { 869 "start": { 870 "line": 29, 871 "column": 5 872 }, 873 "end": { 874 "line": 29, 875 "column": 8 876 } 877 } 878 }, 879 "kind": "method", 880 "accessibility": "public", 881 "static": false, 882 "optional": false, 883 "computed": false, 884 "value": { 885 "type": "FunctionExpression", 886 "function": { 887 "type": "ScriptFunction", 888 "id": { 889 "type": "Identifier", 890 "name": "baz", 891 "decorators": [], 892 "loc": { 893 "start": { 894 "line": 29, 895 "column": 5 896 }, 897 "end": { 898 "line": 29, 899 "column": 8 900 } 901 } 902 }, 903 "generator": false, 904 "async": false, 905 "expression": false, 906 "params": [], 907 "returnType": { 908 "type": "ETSUnionType", 909 "types": [ 910 { 911 "type": "ETSTypeReference", 912 "part": { 913 "type": "ETSTypeReferencePart", 914 "name": { 915 "type": "Identifier", 916 "name": "Foo", 917 "decorators": [], 918 "loc": { 919 "start": { 920 "line": 29, 921 "column": 12 922 }, 923 "end": { 924 "line": 29, 925 "column": 15 926 } 927 } 928 }, 929 "typeParams": { 930 "type": "TSTypeParameterInstantiation", 931 "params": [ 932 { 933 "type": "ETSTypeReference", 934 "part": { 935 "type": "ETSTypeReferencePart", 936 "name": { 937 "type": "Identifier", 938 "name": "T", 939 "decorators": [], 940 "loc": { 941 "start": { 942 "line": 29, 943 "column": 16 944 }, 945 "end": { 946 "line": 29, 947 "column": 17 948 } 949 } 950 }, 951 "loc": { 952 "start": { 953 "line": 29, 954 "column": 16 955 }, 956 "end": { 957 "line": 29, 958 "column": 18 959 } 960 } 961 }, 962 "loc": { 963 "start": { 964 "line": 29, 965 "column": 16 966 }, 967 "end": { 968 "line": 29, 969 "column": 18 970 } 971 } 972 } 973 ], 974 "loc": { 975 "start": { 976 "line": 29, 977 "column": 15 978 }, 979 "end": { 980 "line": 29, 981 "column": 18 982 } 983 } 984 }, 985 "loc": { 986 "start": { 987 "line": 29, 988 "column": 12 989 }, 990 "end": { 991 "line": 29, 992 "column": 20 993 } 994 } 995 }, 996 "loc": { 997 "start": { 998 "line": 29, 999 "column": 12 1000 }, 1001 "end": { 1002 "line": 29, 1003 "column": 20 1004 } 1005 } 1006 }, 1007 { 1008 "type": "ETSNullType", 1009 "loc": { 1010 "start": { 1011 "line": 29, 1012 "column": 21 1013 }, 1014 "end": { 1015 "line": 29, 1016 "column": 25 1017 } 1018 } 1019 } 1020 ], 1021 "loc": { 1022 "start": { 1023 "line": 29, 1024 "column": 12 1025 }, 1026 "end": { 1027 "line": 29, 1028 "column": 25 1029 } 1030 } 1031 }, 1032 "body": { 1033 "type": "BlockStatement", 1034 "statements": [ 1035 { 1036 "type": "ReturnStatement", 1037 "argument": { 1038 "type": "NullLiteral", 1039 "value": null, 1040 "loc": { 1041 "start": { 1042 "line": 30, 1043 "column": 16 1044 }, 1045 "end": { 1046 "line": 30, 1047 "column": 20 1048 } 1049 } 1050 }, 1051 "loc": { 1052 "start": { 1053 "line": 30, 1054 "column": 9 1055 }, 1056 "end": { 1057 "line": 30, 1058 "column": 21 1059 } 1060 } 1061 } 1062 ], 1063 "loc": { 1064 "start": { 1065 "line": 29, 1066 "column": 25 1067 }, 1068 "end": { 1069 "line": 31, 1070 "column": 6 1071 } 1072 } 1073 }, 1074 "loc": { 1075 "start": { 1076 "line": 29, 1077 "column": 8 1078 }, 1079 "end": { 1080 "line": 31, 1081 "column": 6 1082 } 1083 } 1084 }, 1085 "loc": { 1086 "start": { 1087 "line": 29, 1088 "column": 8 1089 }, 1090 "end": { 1091 "line": 31, 1092 "column": 6 1093 } 1094 } 1095 }, 1096 "overloads": [], 1097 "decorators": [], 1098 "loc": { 1099 "start": { 1100 "line": 29, 1101 "column": 5 1102 }, 1103 "end": { 1104 "line": 31, 1105 "column": 6 1106 } 1107 } 1108 }, 1109 { 1110 "type": "MethodDefinition", 1111 "key": { 1112 "type": "Identifier", 1113 "name": "constructor", 1114 "decorators": [], 1115 "loc": { 1116 "start": { 1117 "line": 1, 1118 "column": 1 1119 }, 1120 "end": { 1121 "line": 1, 1122 "column": 1 1123 } 1124 } 1125 }, 1126 "kind": "constructor", 1127 "static": false, 1128 "optional": false, 1129 "computed": false, 1130 "value": { 1131 "type": "FunctionExpression", 1132 "function": { 1133 "type": "ScriptFunction", 1134 "id": { 1135 "type": "Identifier", 1136 "name": "constructor", 1137 "decorators": [], 1138 "loc": { 1139 "start": { 1140 "line": 1, 1141 "column": 1 1142 }, 1143 "end": { 1144 "line": 1, 1145 "column": 1 1146 } 1147 } 1148 }, 1149 "generator": false, 1150 "async": false, 1151 "expression": false, 1152 "params": [], 1153 "body": { 1154 "type": "BlockStatement", 1155 "statements": [], 1156 "loc": { 1157 "start": { 1158 "line": 1, 1159 "column": 1 1160 }, 1161 "end": { 1162 "line": 1, 1163 "column": 1 1164 } 1165 } 1166 }, 1167 "loc": { 1168 "start": { 1169 "line": 1, 1170 "column": 1 1171 }, 1172 "end": { 1173 "line": 1, 1174 "column": 1 1175 } 1176 } 1177 }, 1178 "loc": { 1179 "start": { 1180 "line": 1, 1181 "column": 1 1182 }, 1183 "end": { 1184 "line": 1, 1185 "column": 1 1186 } 1187 } 1188 }, 1189 "overloads": [], 1190 "decorators": [], 1191 "loc": { 1192 "start": { 1193 "line": 32, 1194 "column": 2 1195 }, 1196 "end": { 1197 "line": 32, 1198 "column": 2 1199 } 1200 } 1201 } 1202 ], 1203 "loc": { 1204 "start": { 1205 "line": 24, 1206 "column": 12 1207 }, 1208 "end": { 1209 "line": 32, 1210 "column": 2 1211 } 1212 } 1213 }, 1214 "loc": { 1215 "start": { 1216 "line": 24, 1217 "column": 1 1218 }, 1219 "end": { 1220 "line": 32, 1221 "column": 2 1222 } 1223 } 1224 }, 1225 { 1226 "type": "ClassDeclaration", 1227 "definition": { 1228 "id": { 1229 "type": "Identifier", 1230 "name": "ETSGLOBAL", 1231 "decorators": [], 1232 "loc": { 1233 "start": { 1234 "line": 1, 1235 "column": 1 1236 }, 1237 "end": { 1238 "line": 1, 1239 "column": 1 1240 } 1241 } 1242 }, 1243 "superClass": null, 1244 "implements": [], 1245 "body": [ 1246 { 1247 "type": "MethodDefinition", 1248 "key": { 1249 "type": "Identifier", 1250 "name": "_$init$_", 1251 "decorators": [], 1252 "loc": { 1253 "start": { 1254 "line": 1, 1255 "column": 1 1256 }, 1257 "end": { 1258 "line": 1, 1259 "column": 1 1260 } 1261 } 1262 }, 1263 "kind": "method", 1264 "accessibility": "public", 1265 "static": true, 1266 "optional": false, 1267 "computed": false, 1268 "value": { 1269 "type": "FunctionExpression", 1270 "function": { 1271 "type": "ScriptFunction", 1272 "id": { 1273 "type": "Identifier", 1274 "name": "_$init$_", 1275 "decorators": [], 1276 "loc": { 1277 "start": { 1278 "line": 1, 1279 "column": 1 1280 }, 1281 "end": { 1282 "line": 1, 1283 "column": 1 1284 } 1285 } 1286 }, 1287 "generator": false, 1288 "async": false, 1289 "expression": false, 1290 "params": [], 1291 "body": { 1292 "type": "BlockStatement", 1293 "statements": [], 1294 "loc": { 1295 "start": { 1296 "line": 1, 1297 "column": 1 1298 }, 1299 "end": { 1300 "line": 1, 1301 "column": 1 1302 } 1303 } 1304 }, 1305 "loc": { 1306 "start": { 1307 "line": 1, 1308 "column": 1 1309 }, 1310 "end": { 1311 "line": 1, 1312 "column": 1 1313 } 1314 } 1315 }, 1316 "loc": { 1317 "start": { 1318 "line": 1, 1319 "column": 1 1320 }, 1321 "end": { 1322 "line": 1, 1323 "column": 1 1324 } 1325 } 1326 }, 1327 "overloads": [], 1328 "decorators": [], 1329 "loc": { 1330 "start": { 1331 "line": 1, 1332 "column": 1 1333 }, 1334 "end": { 1335 "line": 1, 1336 "column": 1 1337 } 1338 } 1339 }, 1340 { 1341 "type": "MethodDefinition", 1342 "key": { 1343 "type": "Identifier", 1344 "name": "bar", 1345 "decorators": [], 1346 "loc": { 1347 "start": { 1348 "line": 34, 1349 "column": 10 1350 }, 1351 "end": { 1352 "line": 34, 1353 "column": 13 1354 } 1355 } 1356 }, 1357 "kind": "method", 1358 "accessibility": "public", 1359 "static": true, 1360 "optional": false, 1361 "computed": false, 1362 "value": { 1363 "type": "FunctionExpression", 1364 "function": { 1365 "type": "ScriptFunction", 1366 "id": { 1367 "type": "Identifier", 1368 "name": "bar", 1369 "decorators": [], 1370 "loc": { 1371 "start": { 1372 "line": 34, 1373 "column": 10 1374 }, 1375 "end": { 1376 "line": 34, 1377 "column": 13 1378 } 1379 } 1380 }, 1381 "generator": false, 1382 "async": false, 1383 "expression": false, 1384 "params": [ 1385 { 1386 "type": "ETSParameterExpression", 1387 "name": { 1388 "type": "Identifier", 1389 "name": "p", 1390 "typeAnnotation": { 1391 "type": "ETSTypeReference", 1392 "part": { 1393 "type": "ETSTypeReferencePart", 1394 "name": { 1395 "type": "Identifier", 1396 "name": "Foo", 1397 "decorators": [], 1398 "loc": { 1399 "start": { 1400 "line": 34, 1401 "column": 17 1402 }, 1403 "end": { 1404 "line": 34, 1405 "column": 20 1406 } 1407 } 1408 }, 1409 "typeParams": { 1410 "type": "TSTypeParameterInstantiation", 1411 "params": [ 1412 { 1413 "type": "ETSTypeReference", 1414 "part": { 1415 "type": "ETSTypeReferencePart", 1416 "name": { 1417 "type": "Identifier", 1418 "name": "Object", 1419 "decorators": [], 1420 "loc": { 1421 "start": { 1422 "line": 34, 1423 "column": 21 1424 }, 1425 "end": { 1426 "line": 34, 1427 "column": 27 1428 } 1429 } 1430 }, 1431 "loc": { 1432 "start": { 1433 "line": 34, 1434 "column": 21 1435 }, 1436 "end": { 1437 "line": 34, 1438 "column": 28 1439 } 1440 } 1441 }, 1442 "loc": { 1443 "start": { 1444 "line": 34, 1445 "column": 21 1446 }, 1447 "end": { 1448 "line": 34, 1449 "column": 28 1450 } 1451 } 1452 } 1453 ], 1454 "loc": { 1455 "start": { 1456 "line": 34, 1457 "column": 20 1458 }, 1459 "end": { 1460 "line": 34, 1461 "column": 28 1462 } 1463 } 1464 }, 1465 "loc": { 1466 "start": { 1467 "line": 34, 1468 "column": 17 1469 }, 1470 "end": { 1471 "line": 34, 1472 "column": 29 1473 } 1474 } 1475 }, 1476 "loc": { 1477 "start": { 1478 "line": 34, 1479 "column": 17 1480 }, 1481 "end": { 1482 "line": 34, 1483 "column": 29 1484 } 1485 } 1486 }, 1487 "decorators": [], 1488 "loc": { 1489 "start": { 1490 "line": 34, 1491 "column": 14 1492 }, 1493 "end": { 1494 "line": 34, 1495 "column": 29 1496 } 1497 } 1498 }, 1499 "loc": { 1500 "start": { 1501 "line": 34, 1502 "column": 14 1503 }, 1504 "end": { 1505 "line": 34, 1506 "column": 29 1507 } 1508 } 1509 } 1510 ], 1511 "returnType": { 1512 "type": "ETSPrimitiveType", 1513 "loc": { 1514 "start": { 1515 "line": 34, 1516 "column": 31 1517 }, 1518 "end": { 1519 "line": 34, 1520 "column": 35 1521 } 1522 } 1523 }, 1524 "body": { 1525 "type": "BlockStatement", 1526 "statements": [ 1527 { 1528 "type": "VariableDeclaration", 1529 "declarations": [ 1530 { 1531 "type": "VariableDeclarator", 1532 "id": { 1533 "type": "Identifier", 1534 "name": "p1", 1535 "typeAnnotation": { 1536 "type": "ETSUnionType", 1537 "types": [ 1538 { 1539 "type": "ETSTypeReference", 1540 "part": { 1541 "type": "ETSTypeReferencePart", 1542 "name": { 1543 "type": "Identifier", 1544 "name": "Foo", 1545 "decorators": [], 1546 "loc": { 1547 "start": { 1548 "line": 35, 1549 "column": 13 1550 }, 1551 "end": { 1552 "line": 35, 1553 "column": 16 1554 } 1555 } 1556 }, 1557 "typeParams": { 1558 "type": "TSTypeParameterInstantiation", 1559 "params": [ 1560 { 1561 "type": "ETSTypeReference", 1562 "part": { 1563 "type": "ETSTypeReferencePart", 1564 "name": { 1565 "type": "Identifier", 1566 "name": "Object", 1567 "decorators": [], 1568 "loc": { 1569 "start": { 1570 "line": 35, 1571 "column": 17 1572 }, 1573 "end": { 1574 "line": 35, 1575 "column": 23 1576 } 1577 } 1578 }, 1579 "loc": { 1580 "start": { 1581 "line": 35, 1582 "column": 17 1583 }, 1584 "end": { 1585 "line": 35, 1586 "column": 24 1587 } 1588 } 1589 }, 1590 "loc": { 1591 "start": { 1592 "line": 35, 1593 "column": 17 1594 }, 1595 "end": { 1596 "line": 35, 1597 "column": 24 1598 } 1599 } 1600 } 1601 ], 1602 "loc": { 1603 "start": { 1604 "line": 35, 1605 "column": 16 1606 }, 1607 "end": { 1608 "line": 35, 1609 "column": 24 1610 } 1611 } 1612 }, 1613 "loc": { 1614 "start": { 1615 "line": 35, 1616 "column": 13 1617 }, 1618 "end": { 1619 "line": 35, 1620 "column": 26 1621 } 1622 } 1623 }, 1624 "loc": { 1625 "start": { 1626 "line": 35, 1627 "column": 13 1628 }, 1629 "end": { 1630 "line": 35, 1631 "column": 26 1632 } 1633 } 1634 }, 1635 { 1636 "type": "ETSNullType", 1637 "loc": { 1638 "start": { 1639 "line": 35, 1640 "column": 27 1641 }, 1642 "end": { 1643 "line": 35, 1644 "column": 31 1645 } 1646 } 1647 } 1648 ], 1649 "loc": { 1650 "start": { 1651 "line": 35, 1652 "column": 13 1653 }, 1654 "end": { 1655 "line": 35, 1656 "column": 31 1657 } 1658 } 1659 }, 1660 "decorators": [], 1661 "loc": { 1662 "start": { 1663 "line": 35, 1664 "column": 9 1665 }, 1666 "end": { 1667 "line": 35, 1668 "column": 11 1669 } 1670 } 1671 }, 1672 "init": { 1673 "type": "CallExpression", 1674 "callee": { 1675 "type": "MemberExpression", 1676 "object": { 1677 "type": "Identifier", 1678 "name": "p", 1679 "decorators": [], 1680 "loc": { 1681 "start": { 1682 "line": 35, 1683 "column": 34 1684 }, 1685 "end": { 1686 "line": 35, 1687 "column": 35 1688 } 1689 } 1690 }, 1691 "property": { 1692 "type": "Identifier", 1693 "name": "then", 1694 "decorators": [], 1695 "loc": { 1696 "start": { 1697 "line": 35, 1698 "column": 36 1699 }, 1700 "end": { 1701 "line": 35, 1702 "column": 40 1703 } 1704 } 1705 }, 1706 "computed": false, 1707 "optional": false, 1708 "loc": { 1709 "start": { 1710 "line": 35, 1711 "column": 34 1712 }, 1713 "end": { 1714 "line": 35, 1715 "column": 40 1716 } 1717 } 1718 }, 1719 "arguments": [], 1720 "optional": false, 1721 "typeParameters": { 1722 "type": "TSTypeParameterInstantiation", 1723 "params": [ 1724 { 1725 "type": "ETSTypeReference", 1726 "part": { 1727 "type": "ETSTypeReferencePart", 1728 "name": { 1729 "type": "Identifier", 1730 "name": "Object", 1731 "decorators": [], 1732 "loc": { 1733 "start": { 1734 "line": 35, 1735 "column": 41 1736 }, 1737 "end": { 1738 "line": 35, 1739 "column": 47 1740 } 1741 } 1742 }, 1743 "loc": { 1744 "start": { 1745 "line": 35, 1746 "column": 41 1747 }, 1748 "end": { 1749 "line": 35, 1750 "column": 48 1751 } 1752 } 1753 }, 1754 "loc": { 1755 "start": { 1756 "line": 35, 1757 "column": 41 1758 }, 1759 "end": { 1760 "line": 35, 1761 "column": 48 1762 } 1763 } 1764 } 1765 ], 1766 "loc": { 1767 "start": { 1768 "line": 35, 1769 "column": 40 1770 }, 1771 "end": { 1772 "line": 35, 1773 "column": 48 1774 } 1775 } 1776 }, 1777 "loc": { 1778 "start": { 1779 "line": 35, 1780 "column": 34 1781 }, 1782 "end": { 1783 "line": 35, 1784 "column": 50 1785 } 1786 } 1787 }, 1788 "loc": { 1789 "start": { 1790 "line": 35, 1791 "column": 9 1792 }, 1793 "end": { 1794 "line": 35, 1795 "column": 50 1796 } 1797 } 1798 } 1799 ], 1800 "kind": "let", 1801 "loc": { 1802 "start": { 1803 "line": 35, 1804 "column": 5 1805 }, 1806 "end": { 1807 "line": 35, 1808 "column": 51 1809 } 1810 } 1811 }, 1812 { 1813 "type": "VariableDeclaration", 1814 "declarations": [ 1815 { 1816 "type": "VariableDeclarator", 1817 "id": { 1818 "type": "Identifier", 1819 "name": "p2", 1820 "typeAnnotation": { 1821 "type": "ETSTypeReference", 1822 "part": { 1823 "type": "ETSTypeReferencePart", 1824 "name": { 1825 "type": "Identifier", 1826 "name": "Foo", 1827 "decorators": [], 1828 "loc": { 1829 "start": { 1830 "line": 36, 1831 "column": 13 1832 }, 1833 "end": { 1834 "line": 36, 1835 "column": 16 1836 } 1837 } 1838 }, 1839 "typeParams": { 1840 "type": "TSTypeParameterInstantiation", 1841 "params": [ 1842 { 1843 "type": "ETSTypeReference", 1844 "part": { 1845 "type": "ETSTypeReferencePart", 1846 "name": { 1847 "type": "Identifier", 1848 "name": "A", 1849 "decorators": [], 1850 "loc": { 1851 "start": { 1852 "line": 36, 1853 "column": 17 1854 }, 1855 "end": { 1856 "line": 36, 1857 "column": 18 1858 } 1859 } 1860 }, 1861 "typeParams": { 1862 "type": "TSTypeParameterInstantiation", 1863 "params": [ 1864 { 1865 "type": "ETSTypeReference", 1866 "part": { 1867 "type": "ETSTypeReferencePart", 1868 "name": { 1869 "type": "Identifier", 1870 "name": "A", 1871 "decorators": [], 1872 "loc": { 1873 "start": { 1874 "line": 36, 1875 "column": 19 1876 }, 1877 "end": { 1878 "line": 36, 1879 "column": 20 1880 } 1881 } 1882 }, 1883 "typeParams": { 1884 "type": "TSTypeParameterInstantiation", 1885 "params": [ 1886 { 1887 "type": "ETSTypeReference", 1888 "part": { 1889 "type": "ETSTypeReferencePart", 1890 "name": { 1891 "type": "Identifier", 1892 "name": "Object", 1893 "decorators": [], 1894 "loc": { 1895 "start": { 1896 "line": 36, 1897 "column": 21 1898 }, 1899 "end": { 1900 "line": 36, 1901 "column": 27 1902 } 1903 } 1904 }, 1905 "loc": { 1906 "start": { 1907 "line": 36, 1908 "column": 21 1909 }, 1910 "end": { 1911 "line": 36, 1912 "column": 30 1913 } 1914 } 1915 }, 1916 "loc": { 1917 "start": { 1918 "line": 36, 1919 "column": 21 1920 }, 1921 "end": { 1922 "line": 36, 1923 "column": 30 1924 } 1925 } 1926 } 1927 ], 1928 "loc": { 1929 "start": { 1930 "line": 36, 1931 "column": 20 1932 }, 1933 "end": { 1934 "line": 36, 1935 "column": 30 1936 } 1937 } 1938 }, 1939 "loc": { 1940 "start": { 1941 "line": 36, 1942 "column": 19 1943 }, 1944 "end": { 1945 "line": 36, 1946 "column": 30 1947 } 1948 } 1949 }, 1950 "loc": { 1951 "start": { 1952 "line": 36, 1953 "column": 19 1954 }, 1955 "end": { 1956 "line": 36, 1957 "column": 30 1958 } 1959 } 1960 } 1961 ], 1962 "loc": { 1963 "start": { 1964 "line": 36, 1965 "column": 18 1966 }, 1967 "end": { 1968 "line": 36, 1969 "column": 30 1970 } 1971 } 1972 }, 1973 "loc": { 1974 "start": { 1975 "line": 36, 1976 "column": 17 1977 }, 1978 "end": { 1979 "line": 36, 1980 "column": 30 1981 } 1982 } 1983 }, 1984 "loc": { 1985 "start": { 1986 "line": 36, 1987 "column": 17 1988 }, 1989 "end": { 1990 "line": 36, 1991 "column": 30 1992 } 1993 } 1994 } 1995 ], 1996 "loc": { 1997 "start": { 1998 "line": 36, 1999 "column": 16 2000 }, 2001 "end": { 2002 "line": 36, 2003 "column": 30 2004 } 2005 } 2006 }, 2007 "loc": { 2008 "start": { 2009 "line": 36, 2010 "column": 13 2011 }, 2012 "end": { 2013 "line": 36, 2014 "column": 32 2015 } 2016 } 2017 }, 2018 "loc": { 2019 "start": { 2020 "line": 36, 2021 "column": 13 2022 }, 2023 "end": { 2024 "line": 36, 2025 "column": 32 2026 } 2027 } 2028 }, 2029 "decorators": [], 2030 "loc": { 2031 "start": { 2032 "line": 36, 2033 "column": 9 2034 }, 2035 "end": { 2036 "line": 36, 2037 "column": 11 2038 } 2039 } 2040 }, 2041 "init": { 2042 "type": "ETSNewClassInstanceExpression", 2043 "typeReference": { 2044 "type": "ETSTypeReference", 2045 "part": { 2046 "type": "ETSTypeReferencePart", 2047 "name": { 2048 "type": "Identifier", 2049 "name": "Foo", 2050 "decorators": [], 2051 "loc": { 2052 "start": { 2053 "line": 36, 2054 "column": 37 2055 }, 2056 "end": { 2057 "line": 36, 2058 "column": 40 2059 } 2060 } 2061 }, 2062 "typeParams": { 2063 "type": "TSTypeParameterInstantiation", 2064 "params": [ 2065 { 2066 "type": "ETSTypeReference", 2067 "part": { 2068 "type": "ETSTypeReferencePart", 2069 "name": { 2070 "type": "Identifier", 2071 "name": "A", 2072 "decorators": [], 2073 "loc": { 2074 "start": { 2075 "line": 36, 2076 "column": 41 2077 }, 2078 "end": { 2079 "line": 36, 2080 "column": 42 2081 } 2082 } 2083 }, 2084 "typeParams": { 2085 "type": "TSTypeParameterInstantiation", 2086 "params": [ 2087 { 2088 "type": "ETSTypeReference", 2089 "part": { 2090 "type": "ETSTypeReferencePart", 2091 "name": { 2092 "type": "Identifier", 2093 "name": "A", 2094 "decorators": [], 2095 "loc": { 2096 "start": { 2097 "line": 36, 2098 "column": 43 2099 }, 2100 "end": { 2101 "line": 36, 2102 "column": 44 2103 } 2104 } 2105 }, 2106 "typeParams": { 2107 "type": "TSTypeParameterInstantiation", 2108 "params": [ 2109 { 2110 "type": "ETSTypeReference", 2111 "part": { 2112 "type": "ETSTypeReferencePart", 2113 "name": { 2114 "type": "Identifier", 2115 "name": "Object", 2116 "decorators": [], 2117 "loc": { 2118 "start": { 2119 "line": 36, 2120 "column": 45 2121 }, 2122 "end": { 2123 "line": 36, 2124 "column": 51 2125 } 2126 } 2127 }, 2128 "loc": { 2129 "start": { 2130 "line": 36, 2131 "column": 45 2132 }, 2133 "end": { 2134 "line": 36, 2135 "column": 54 2136 } 2137 } 2138 }, 2139 "loc": { 2140 "start": { 2141 "line": 36, 2142 "column": 45 2143 }, 2144 "end": { 2145 "line": 36, 2146 "column": 54 2147 } 2148 } 2149 } 2150 ], 2151 "loc": { 2152 "start": { 2153 "line": 36, 2154 "column": 44 2155 }, 2156 "end": { 2157 "line": 36, 2158 "column": 54 2159 } 2160 } 2161 }, 2162 "loc": { 2163 "start": { 2164 "line": 36, 2165 "column": 43 2166 }, 2167 "end": { 2168 "line": 36, 2169 "column": 54 2170 } 2171 } 2172 }, 2173 "loc": { 2174 "start": { 2175 "line": 36, 2176 "column": 43 2177 }, 2178 "end": { 2179 "line": 36, 2180 "column": 54 2181 } 2182 } 2183 } 2184 ], 2185 "loc": { 2186 "start": { 2187 "line": 36, 2188 "column": 42 2189 }, 2190 "end": { 2191 "line": 36, 2192 "column": 54 2193 } 2194 } 2195 }, 2196 "loc": { 2197 "start": { 2198 "line": 36, 2199 "column": 41 2200 }, 2201 "end": { 2202 "line": 36, 2203 "column": 54 2204 } 2205 } 2206 }, 2207 "loc": { 2208 "start": { 2209 "line": 36, 2210 "column": 41 2211 }, 2212 "end": { 2213 "line": 36, 2214 "column": 54 2215 } 2216 } 2217 } 2218 ], 2219 "loc": { 2220 "start": { 2221 "line": 36, 2222 "column": 40 2223 }, 2224 "end": { 2225 "line": 36, 2226 "column": 54 2227 } 2228 } 2229 }, 2230 "loc": { 2231 "start": { 2232 "line": 36, 2233 "column": 37 2234 }, 2235 "end": { 2236 "line": 36, 2237 "column": 55 2238 } 2239 } 2240 }, 2241 "loc": { 2242 "start": { 2243 "line": 36, 2244 "column": 37 2245 }, 2246 "end": { 2247 "line": 36, 2248 "column": 55 2249 } 2250 } 2251 }, 2252 "arguments": [], 2253 "loc": { 2254 "start": { 2255 "line": 36, 2256 "column": 33 2257 }, 2258 "end": { 2259 "line": 36, 2260 "column": 57 2261 } 2262 } 2263 }, 2264 "loc": { 2265 "start": { 2266 "line": 36, 2267 "column": 9 2268 }, 2269 "end": { 2270 "line": 36, 2271 "column": 57 2272 } 2273 } 2274 } 2275 ], 2276 "kind": "let", 2277 "loc": { 2278 "start": { 2279 "line": 36, 2280 "column": 5 2281 }, 2282 "end": { 2283 "line": 36, 2284 "column": 57 2285 } 2286 } 2287 }, 2288 { 2289 "type": "ExpressionStatement", 2290 "expression": { 2291 "type": "AssignmentExpression", 2292 "operator": "=", 2293 "left": { 2294 "type": "Identifier", 2295 "name": "p1", 2296 "decorators": [], 2297 "loc": { 2298 "start": { 2299 "line": 37, 2300 "column": 5 2301 }, 2302 "end": { 2303 "line": 37, 2304 "column": 7 2305 } 2306 } 2307 }, 2308 "right": { 2309 "type": "CallExpression", 2310 "callee": { 2311 "type": "MemberExpression", 2312 "object": { 2313 "type": "TSNonNullExpression", 2314 "expression": { 2315 "type": "CallExpression", 2316 "callee": { 2317 "type": "MemberExpression", 2318 "object": { 2319 "type": "TSNonNullExpression", 2320 "expression": { 2321 "type": "CallExpression", 2322 "callee": { 2323 "type": "MemberExpression", 2324 "object": { 2325 "type": "MemberExpression", 2326 "object": { 2327 "type": "Identifier", 2328 "name": "p2", 2329 "decorators": [], 2330 "loc": { 2331 "start": { 2332 "line": 37, 2333 "column": 10 2334 }, 2335 "end": { 2336 "line": 37, 2337 "column": 12 2338 } 2339 } 2340 }, 2341 "property": { 2342 "type": "Identifier", 2343 "name": "value", 2344 "decorators": [], 2345 "loc": { 2346 "start": { 2347 "line": 37, 2348 "column": 13 2349 }, 2350 "end": { 2351 "line": 37, 2352 "column": 18 2353 } 2354 } 2355 }, 2356 "computed": false, 2357 "optional": false, 2358 "loc": { 2359 "start": { 2360 "line": 37, 2361 "column": 10 2362 }, 2363 "end": { 2364 "line": 37, 2365 "column": 18 2366 } 2367 } 2368 }, 2369 "property": { 2370 "type": "Identifier", 2371 "name": "bar", 2372 "decorators": [], 2373 "loc": { 2374 "start": { 2375 "line": 37, 2376 "column": 19 2377 }, 2378 "end": { 2379 "line": 37, 2380 "column": 22 2381 } 2382 } 2383 }, 2384 "computed": false, 2385 "optional": false, 2386 "loc": { 2387 "start": { 2388 "line": 37, 2389 "column": 10 2390 }, 2391 "end": { 2392 "line": 37, 2393 "column": 22 2394 } 2395 } 2396 }, 2397 "arguments": [], 2398 "optional": false, 2399 "loc": { 2400 "start": { 2401 "line": 37, 2402 "column": 10 2403 }, 2404 "end": { 2405 "line": 37, 2406 "column": 24 2407 } 2408 } 2409 }, 2410 "loc": { 2411 "start": { 2412 "line": 37, 2413 "column": 10 2414 }, 2415 "end": { 2416 "line": 37, 2417 "column": 25 2418 } 2419 } 2420 }, 2421 "property": { 2422 "type": "Identifier", 2423 "name": "baz", 2424 "decorators": [], 2425 "loc": { 2426 "start": { 2427 "line": 37, 2428 "column": 26 2429 }, 2430 "end": { 2431 "line": 37, 2432 "column": 29 2433 } 2434 } 2435 }, 2436 "computed": false, 2437 "optional": false, 2438 "loc": { 2439 "start": { 2440 "line": 37, 2441 "column": 10 2442 }, 2443 "end": { 2444 "line": 37, 2445 "column": 29 2446 } 2447 } 2448 }, 2449 "arguments": [], 2450 "optional": false, 2451 "loc": { 2452 "start": { 2453 "line": 37, 2454 "column": 10 2455 }, 2456 "end": { 2457 "line": 37, 2458 "column": 31 2459 } 2460 } 2461 }, 2462 "loc": { 2463 "start": { 2464 "line": 37, 2465 "column": 10 2466 }, 2467 "end": { 2468 "line": 37, 2469 "column": 32 2470 } 2471 } 2472 }, 2473 "property": { 2474 "type": "Identifier", 2475 "name": "then", 2476 "decorators": [], 2477 "loc": { 2478 "start": { 2479 "line": 37, 2480 "column": 33 2481 }, 2482 "end": { 2483 "line": 37, 2484 "column": 37 2485 } 2486 } 2487 }, 2488 "computed": false, 2489 "optional": false, 2490 "loc": { 2491 "start": { 2492 "line": 37, 2493 "column": 10 2494 }, 2495 "end": { 2496 "line": 37, 2497 "column": 37 2498 } 2499 } 2500 }, 2501 "arguments": [], 2502 "optional": false, 2503 "typeParameters": { 2504 "type": "TSTypeParameterInstantiation", 2505 "params": [ 2506 { 2507 "type": "ETSTypeReference", 2508 "part": { 2509 "type": "ETSTypeReferencePart", 2510 "name": { 2511 "type": "Identifier", 2512 "name": "Object", 2513 "decorators": [], 2514 "loc": { 2515 "start": { 2516 "line": 37, 2517 "column": 38 2518 }, 2519 "end": { 2520 "line": 37, 2521 "column": 44 2522 } 2523 } 2524 }, 2525 "loc": { 2526 "start": { 2527 "line": 37, 2528 "column": 38 2529 }, 2530 "end": { 2531 "line": 37, 2532 "column": 45 2533 } 2534 } 2535 }, 2536 "loc": { 2537 "start": { 2538 "line": 37, 2539 "column": 38 2540 }, 2541 "end": { 2542 "line": 37, 2543 "column": 45 2544 } 2545 } 2546 } 2547 ], 2548 "loc": { 2549 "start": { 2550 "line": 37, 2551 "column": 37 2552 }, 2553 "end": { 2554 "line": 37, 2555 "column": 45 2556 } 2557 } 2558 }, 2559 "loc": { 2560 "start": { 2561 "line": 37, 2562 "column": 10 2563 }, 2564 "end": { 2565 "line": 37, 2566 "column": 47 2567 } 2568 } 2569 }, 2570 "loc": { 2571 "start": { 2572 "line": 37, 2573 "column": 5 2574 }, 2575 "end": { 2576 "line": 37, 2577 "column": 47 2578 } 2579 } 2580 }, 2581 "loc": { 2582 "start": { 2583 "line": 37, 2584 "column": 5 2585 }, 2586 "end": { 2587 "line": 37, 2588 "column": 48 2589 } 2590 } 2591 } 2592 ], 2593 "loc": { 2594 "start": { 2595 "line": 34, 2596 "column": 36 2597 }, 2598 "end": { 2599 "line": 38, 2600 "column": 2 2601 } 2602 } 2603 }, 2604 "loc": { 2605 "start": { 2606 "line": 34, 2607 "column": 13 2608 }, 2609 "end": { 2610 "line": 38, 2611 "column": 2 2612 } 2613 } 2614 }, 2615 "loc": { 2616 "start": { 2617 "line": 34, 2618 "column": 13 2619 }, 2620 "end": { 2621 "line": 38, 2622 "column": 2 2623 } 2624 } 2625 }, 2626 "overloads": [], 2627 "decorators": [], 2628 "loc": { 2629 "start": { 2630 "line": 34, 2631 "column": 1 2632 }, 2633 "end": { 2634 "line": 38, 2635 "column": 2 2636 } 2637 } 2638 } 2639 ], 2640 "loc": { 2641 "start": { 2642 "line": 1, 2643 "column": 1 2644 }, 2645 "end": { 2646 "line": 1, 2647 "column": 1 2648 } 2649 } 2650 }, 2651 "loc": { 2652 "start": { 2653 "line": 1, 2654 "column": 1 2655 }, 2656 "end": { 2657 "line": 1, 2658 "column": 1 2659 } 2660 } 2661 } 2662 ], 2663 "loc": { 2664 "start": { 2665 "line": 1, 2666 "column": 1 2667 }, 2668 "end": { 2669 "line": 39, 2670 "column": 1 2671 } 2672 } 2673} 2674