1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "VariableDeclaration", 6 "declarations": [ 7 { 8 "type": "VariableDeclarator", 9 "id": { 10 "type": "Identifier", 11 "name": "var1", 12 "decorators": [], 13 "loc": { 14 "start": { 15 "line": 17, 16 "column": 5 17 }, 18 "end": { 19 "line": 17, 20 "column": 9 21 } 22 } 23 }, 24 "init": null, 25 "loc": { 26 "start": { 27 "line": 17, 28 "column": 5 29 }, 30 "end": { 31 "line": 17, 32 "column": 9 33 } 34 } 35 } 36 ], 37 "kind": "var", 38 "loc": { 39 "start": { 40 "line": 17, 41 "column": 1 42 }, 43 "end": { 44 "line": 17, 45 "column": 10 46 } 47 } 48 }, 49 { 50 "type": "VariableDeclaration", 51 "declarations": [ 52 { 53 "type": "VariableDeclarator", 54 "id": { 55 "type": "Identifier", 56 "name": "var2", 57 "decorators": [], 58 "loc": { 59 "start": { 60 "line": 18, 61 "column": 13 62 }, 63 "end": { 64 "line": 18, 65 "column": 17 66 } 67 } 68 }, 69 "init": null, 70 "loc": { 71 "start": { 72 "line": 18, 73 "column": 13 74 }, 75 "end": { 76 "line": 18, 77 "column": 17 78 } 79 } 80 } 81 ], 82 "kind": "var", 83 "loc": { 84 "start": { 85 "line": 18, 86 "column": 9 87 }, 88 "end": { 89 "line": 18, 90 "column": 18 91 } 92 } 93 }, 94 { 95 "type": "VariableDeclaration", 96 "declarations": [ 97 { 98 "type": "VariableDeclarator", 99 "id": { 100 "type": "Identifier", 101 "name": "var3", 102 "decorators": [], 103 "loc": { 104 "start": { 105 "line": 20, 106 "column": 5 107 }, 108 "end": { 109 "line": 20, 110 "column": 9 111 } 112 } 113 }, 114 "init": null, 115 "loc": { 116 "start": { 117 "line": 20, 118 "column": 5 119 }, 120 "end": { 121 "line": 20, 122 "column": 9 123 } 124 } 125 } 126 ], 127 "kind": "let", 128 "loc": { 129 "start": { 130 "line": 20, 131 "column": 1 132 }, 133 "end": { 134 "line": 20, 135 "column": 10 136 } 137 } 138 }, 139 { 140 "type": "VariableDeclaration", 141 "declarations": [ 142 { 143 "type": "VariableDeclarator", 144 "id": { 145 "type": "Identifier", 146 "name": "var4", 147 "decorators": [], 148 "loc": { 149 "start": { 150 "line": 21, 151 "column": 13 152 }, 153 "end": { 154 "line": 21, 155 "column": 17 156 } 157 } 158 }, 159 "init": null, 160 "loc": { 161 "start": { 162 "line": 21, 163 "column": 13 164 }, 165 "end": { 166 "line": 21, 167 "column": 17 168 } 169 } 170 } 171 ], 172 "kind": "let", 173 "loc": { 174 "start": { 175 "line": 21, 176 "column": 9 177 }, 178 "end": { 179 "line": 21, 180 "column": 18 181 } 182 } 183 }, 184 { 185 "type": "VariableDeclaration", 186 "declarations": [ 187 { 188 "type": "VariableDeclarator", 189 "id": { 190 "type": "Identifier", 191 "name": "var5", 192 "decorators": [], 193 "loc": { 194 "start": { 195 "line": 23, 196 "column": 7 197 }, 198 "end": { 199 "line": 23, 200 "column": 11 201 } 202 } 203 }, 204 "init": { 205 "type": "NumberLiteral", 206 "value": 1, 207 "loc": { 208 "start": { 209 "line": 23, 210 "column": 14 211 }, 212 "end": { 213 "line": 23, 214 "column": 15 215 } 216 } 217 }, 218 "loc": { 219 "start": { 220 "line": 23, 221 "column": 7 222 }, 223 "end": { 224 "line": 23, 225 "column": 15 226 } 227 } 228 } 229 ], 230 "kind": "const", 231 "loc": { 232 "start": { 233 "line": 23, 234 "column": 1 235 }, 236 "end": { 237 "line": 23, 238 "column": 16 239 } 240 } 241 }, 242 { 243 "type": "VariableDeclaration", 244 "declarations": [ 245 { 246 "type": "VariableDeclarator", 247 "id": { 248 "type": "Identifier", 249 "name": "var6", 250 "decorators": [], 251 "loc": { 252 "start": { 253 "line": 24, 254 "column": 15 255 }, 256 "end": { 257 "line": 24, 258 "column": 19 259 } 260 } 261 }, 262 "init": { 263 "type": "NumberLiteral", 264 "value": 4, 265 "loc": { 266 "start": { 267 "line": 24, 268 "column": 22 269 }, 270 "end": { 271 "line": 24, 272 "column": 23 273 } 274 } 275 }, 276 "loc": { 277 "start": { 278 "line": 24, 279 "column": 15 280 }, 281 "end": { 282 "line": 24, 283 "column": 23 284 } 285 } 286 } 287 ], 288 "kind": "const", 289 "loc": { 290 "start": { 291 "line": 24, 292 "column": 9 293 }, 294 "end": { 295 "line": 24, 296 "column": 24 297 } 298 } 299 }, 300 { 301 "type": "VariableDeclaration", 302 "declarations": [ 303 { 304 "type": "VariableDeclarator", 305 "id": { 306 "type": "Identifier", 307 "name": "var7", 308 "decorators": [], 309 "loc": { 310 "start": { 311 "line": 25, 312 "column": 15 313 }, 314 "end": { 315 "line": 25, 316 "column": 19 317 } 318 } 319 }, 320 "init": null, 321 "loc": { 322 "start": { 323 "line": 25, 324 "column": 15 325 }, 326 "end": { 327 "line": 25, 328 "column": 19 329 } 330 } 331 } 332 ], 333 "kind": "const", 334 "loc": { 335 "start": { 336 "line": 25, 337 "column": 9 338 }, 339 "end": { 340 "line": 25, 341 "column": 20 342 } 343 } 344 }, 345 { 346 "type": "TSTypeAliasDeclaration", 347 "id": { 348 "type": "Identifier", 349 "name": "type1", 350 "decorators": [], 351 "loc": { 352 "start": { 353 "line": 27, 354 "column": 6 355 }, 356 "end": { 357 "line": 27, 358 "column": 11 359 } 360 } 361 }, 362 "typeAnnotation": { 363 "type": "TSUnionType", 364 "types": [ 365 { 366 "type": "TSNumberKeyword", 367 "loc": { 368 "start": { 369 "line": 27, 370 "column": 14 371 }, 372 "end": { 373 "line": 27, 374 "column": 20 375 } 376 } 377 }, 378 { 379 "type": "TSStringKeyword", 380 "loc": { 381 "start": { 382 "line": 27, 383 "column": 23 384 }, 385 "end": { 386 "line": 27, 387 "column": 29 388 } 389 } 390 } 391 ], 392 "loc": { 393 "start": { 394 "line": 27, 395 "column": 14 396 }, 397 "end": { 398 "line": 27, 399 "column": 29 400 } 401 } 402 }, 403 "loc": { 404 "start": { 405 "line": 27, 406 "column": 1 407 }, 408 "end": { 409 "line": 27, 410 "column": 30 411 } 412 } 413 }, 414 { 415 "type": "EmptyStatement", 416 "loc": { 417 "start": { 418 "line": 27, 419 "column": 29 420 }, 421 "end": { 422 "line": 27, 423 "column": 30 424 } 425 } 426 }, 427 { 428 "type": "TSTypeAliasDeclaration", 429 "id": { 430 "type": "Identifier", 431 "name": "type2", 432 "decorators": [], 433 "loc": { 434 "start": { 435 "line": 28, 436 "column": 14 437 }, 438 "end": { 439 "line": 28, 440 "column": 19 441 } 442 } 443 }, 444 "typeAnnotation": { 445 "type": "TSUnionType", 446 "types": [ 447 { 448 "type": "TSNumberKeyword", 449 "loc": { 450 "start": { 451 "line": 28, 452 "column": 22 453 }, 454 "end": { 455 "line": 28, 456 "column": 28 457 } 458 } 459 }, 460 { 461 "type": "TSStringKeyword", 462 "loc": { 463 "start": { 464 "line": 28, 465 "column": 31 466 }, 467 "end": { 468 "line": 28, 469 "column": 37 470 } 471 } 472 } 473 ], 474 "loc": { 475 "start": { 476 "line": 28, 477 "column": 22 478 }, 479 "end": { 480 "line": 28, 481 "column": 37 482 } 483 } 484 }, 485 "loc": { 486 "start": { 487 "line": 28, 488 "column": 9 489 }, 490 "end": { 491 "line": 28, 492 "column": 38 493 } 494 } 495 }, 496 { 497 "type": "EmptyStatement", 498 "loc": { 499 "start": { 500 "line": 28, 501 "column": 37 502 }, 503 "end": { 504 "line": 28, 505 "column": 38 506 } 507 } 508 }, 509 { 510 "type": "FunctionDeclaration", 511 "function": { 512 "type": "ScriptFunction", 513 "id": { 514 "type": "Identifier", 515 "name": "func1", 516 "decorators": [], 517 "loc": { 518 "start": { 519 "line": 30, 520 "column": 10 521 }, 522 "end": { 523 "line": 30, 524 "column": 15 525 } 526 } 527 }, 528 "generator": false, 529 "async": false, 530 "expression": false, 531 "params": [], 532 "body": { 533 "type": "BlockStatement", 534 "statements": [], 535 "loc": { 536 "start": { 537 "line": 30, 538 "column": 18 539 }, 540 "end": { 541 "line": 30, 542 "column": 21 543 } 544 } 545 }, 546 "loc": { 547 "start": { 548 "line": 30, 549 "column": 1 550 }, 551 "end": { 552 "line": 30, 553 "column": 21 554 } 555 } 556 }, 557 "loc": { 558 "start": { 559 "line": 30, 560 "column": 1 561 }, 562 "end": { 563 "line": 30, 564 "column": 21 565 } 566 } 567 }, 568 { 569 "type": "EmptyStatement", 570 "loc": { 571 "start": { 572 "line": 30, 573 "column": 21 574 }, 575 "end": { 576 "line": 30, 577 "column": 22 578 } 579 } 580 }, 581 { 582 "type": "TSDeclareFunction", 583 "function": { 584 "type": "ScriptFunction", 585 "id": { 586 "type": "Identifier", 587 "name": "func2", 588 "decorators": [], 589 "loc": { 590 "start": { 591 "line": 31, 592 "column": 18 593 }, 594 "end": { 595 "line": 31, 596 "column": 23 597 } 598 } 599 }, 600 "generator": false, 601 "async": false, 602 "expression": false, 603 "params": [], 604 "loc": { 605 "start": { 606 "line": 31, 607 "column": 9 608 }, 609 "end": { 610 "line": 31, 611 "column": 26 612 } 613 } 614 }, 615 "loc": { 616 "start": { 617 "line": 31, 618 "column": 9 619 }, 620 "end": { 621 "line": 31, 622 "column": 26 623 } 624 } 625 }, 626 { 627 "type": "ExpressionStatement", 628 "expression": { 629 "type": "CallExpression", 630 "callee": { 631 "type": "Identifier", 632 "name": "func2", 633 "decorators": [], 634 "loc": { 635 "start": { 636 "line": 32, 637 "column": 1 638 }, 639 "end": { 640 "line": 32, 641 "column": 6 642 } 643 } 644 }, 645 "arguments": [], 646 "optional": false, 647 "loc": { 648 "start": { 649 "line": 32, 650 "column": 1 651 }, 652 "end": { 653 "line": 32, 654 "column": 8 655 } 656 } 657 }, 658 "loc": { 659 "start": { 660 "line": 32, 661 "column": 1 662 }, 663 "end": { 664 "line": 32, 665 "column": 9 666 } 667 } 668 }, 669 { 670 "type": "ClassDeclaration", 671 "definition": { 672 "id": { 673 "type": "Identifier", 674 "name": "Class1", 675 "decorators": [], 676 "loc": { 677 "start": { 678 "line": 34, 679 "column": 15 680 }, 681 "end": { 682 "line": 34, 683 "column": 21 684 } 685 } 686 }, 687 "superClass": null, 688 "implements": [], 689 "constructor": { 690 "type": "MethodDefinition", 691 "key": { 692 "type": "Identifier", 693 "name": "constructor", 694 "decorators": [], 695 "loc": { 696 "start": { 697 "line": 1, 698 "column": 1 699 }, 700 "end": { 701 "line": 1, 702 "column": 1 703 } 704 } 705 }, 706 "kind": "constructor", 707 "static": false, 708 "optional": false, 709 "computed": false, 710 "value": { 711 "type": "FunctionExpression", 712 "function": { 713 "type": "ScriptFunction", 714 "id": null, 715 "generator": false, 716 "async": false, 717 "expression": false, 718 "params": [], 719 "body": { 720 "type": "BlockStatement", 721 "statements": [], 722 "loc": { 723 "start": { 724 "line": 1, 725 "column": 1 726 }, 727 "end": { 728 "line": 1, 729 "column": 1 730 } 731 } 732 }, 733 "loc": { 734 "start": { 735 "line": 1, 736 "column": 1 737 }, 738 "end": { 739 "line": 1, 740 "column": 1 741 } 742 } 743 }, 744 "loc": { 745 "start": { 746 "line": 1, 747 "column": 1 748 }, 749 "end": { 750 "line": 1, 751 "column": 1 752 } 753 } 754 }, 755 "overloads": [], 756 "decorators": [], 757 "loc": { 758 "start": { 759 "line": 45, 760 "column": 2 761 }, 762 "end": { 763 "line": 45, 764 "column": 2 765 } 766 } 767 }, 768 "body": [ 769 { 770 "type": "MethodDefinition", 771 "key": { 772 "type": "Identifier", 773 "name": "a", 774 "decorators": [], 775 "loc": { 776 "start": { 777 "line": 35, 778 "column": 24 779 }, 780 "end": { 781 "line": 35, 782 "column": 25 783 } 784 } 785 }, 786 "kind": "get", 787 "accessibility": "private", 788 "static": true, 789 "optional": false, 790 "computed": false, 791 "value": { 792 "type": "FunctionExpression", 793 "function": { 794 "type": "ScriptFunction", 795 "id": null, 796 "generator": false, 797 "async": false, 798 "expression": false, 799 "params": [], 800 "loc": { 801 "start": { 802 "line": 35, 803 "column": 25 804 }, 805 "end": { 806 "line": 36, 807 "column": 11 808 } 809 } 810 }, 811 "loc": { 812 "start": { 813 "line": 35, 814 "column": 25 815 }, 816 "end": { 817 "line": 36, 818 "column": 11 819 } 820 } 821 }, 822 "overloads": [], 823 "decorators": [], 824 "loc": { 825 "start": { 826 "line": 35, 827 "column": 5 828 }, 829 "end": { 830 "line": 36, 831 "column": 11 832 } 833 } 834 }, 835 { 836 "type": "MethodDefinition", 837 "key": { 838 "type": "Identifier", 839 "name": "g", 840 "decorators": [], 841 "loc": { 842 "start": { 843 "line": 36, 844 "column": 12 845 }, 846 "end": { 847 "line": 36, 848 "column": 13 849 } 850 } 851 }, 852 "kind": "method", 853 "accessibility": "public", 854 "static": false, 855 "optional": false, 856 "computed": false, 857 "value": { 858 "type": "FunctionExpression", 859 "function": { 860 "type": "ScriptFunction", 861 "id": null, 862 "generator": false, 863 "async": false, 864 "expression": false, 865 "params": [], 866 "loc": { 867 "start": { 868 "line": 36, 869 "column": 13 870 }, 871 "end": { 872 "line": 37, 873 "column": 11 874 } 875 } 876 }, 877 "loc": { 878 "start": { 879 "line": 36, 880 "column": 13 881 }, 882 "end": { 883 "line": 37, 884 "column": 11 885 } 886 } 887 }, 888 "overloads": [], 889 "decorators": [], 890 "loc": { 891 "start": { 892 "line": 36, 893 "column": 5 894 }, 895 "end": { 896 "line": 37, 897 "column": 11 898 } 899 } 900 }, 901 { 902 "type": "ClassProperty", 903 "key": { 904 "type": "NumberLiteral", 905 "value": 5, 906 "loc": { 907 "start": { 908 "line": 37, 909 "column": 30 910 }, 911 "end": { 912 "line": 37, 913 "column": 31 914 } 915 } 916 }, 917 "static": true, 918 "readonly": true, 919 "declare": true, 920 "optional": false, 921 "computed": true, 922 "definite": false, 923 "decorators": [], 924 "loc": { 925 "start": { 926 "line": 37, 927 "column": 5 928 }, 929 "end": { 930 "line": 37, 931 "column": 31 932 } 933 } 934 }, 935 { 936 "type": "ClassProperty", 937 "key": { 938 "type": "StringLiteral", 939 "value": "b", 940 "loc": { 941 "start": { 942 "line": 38, 943 "column": 30 944 }, 945 "end": { 946 "line": 38, 947 "column": 33 948 } 949 } 950 }, 951 "static": true, 952 "readonly": true, 953 "declare": true, 954 "optional": false, 955 "computed": true, 956 "definite": false, 957 "decorators": [], 958 "loc": { 959 "start": { 960 "line": 38, 961 "column": 5 962 }, 963 "end": { 964 "line": 38, 965 "column": 33 966 } 967 } 968 }, 969 { 970 "type": "ClassProperty", 971 "key": { 972 "type": "NumberLiteral", 973 "value": 67, 974 "loc": { 975 "start": { 976 "line": 39, 977 "column": 29 978 }, 979 "end": { 980 "line": 39, 981 "column": 31 982 } 983 } 984 }, 985 "static": true, 986 "readonly": true, 987 "declare": true, 988 "optional": false, 989 "computed": false, 990 "definite": false, 991 "decorators": [], 992 "loc": { 993 "start": { 994 "line": 39, 995 "column": 5 996 }, 997 "end": { 998 "line": 39, 999 "column": 31 1000 } 1001 } 1002 }, 1003 { 1004 "type": "ClassProperty", 1005 "key": { 1006 "type": "Identifier", 1007 "name": "j", 1008 "decorators": [], 1009 "loc": { 1010 "start": { 1011 "line": 40, 1012 "column": 29 1013 }, 1014 "end": { 1015 "line": 40, 1016 "column": 30 1017 } 1018 } 1019 }, 1020 "static": true, 1021 "readonly": true, 1022 "declare": true, 1023 "optional": false, 1024 "computed": false, 1025 "definite": false, 1026 "decorators": [], 1027 "loc": { 1028 "start": { 1029 "line": 40, 1030 "column": 5 1031 }, 1032 "end": { 1033 "line": 40, 1034 "column": 30 1035 } 1036 } 1037 }, 1038 { 1039 "type": "ClassProperty", 1040 "key": { 1041 "type": "Identifier", 1042 "name": "private", 1043 "decorators": [], 1044 "loc": { 1045 "start": { 1046 "line": 41, 1047 "column": 5 1048 }, 1049 "end": { 1050 "line": 41, 1051 "column": 12 1052 } 1053 } 1054 }, 1055 "static": false, 1056 "readonly": false, 1057 "declare": false, 1058 "optional": false, 1059 "computed": false, 1060 "definite": false, 1061 "decorators": [], 1062 "loc": { 1063 "start": { 1064 "line": 41, 1065 "column": 5 1066 }, 1067 "end": { 1068 "line": 41, 1069 "column": 12 1070 } 1071 } 1072 }, 1073 { 1074 "type": "MethodDefinition", 1075 "key": { 1076 "type": "NumberLiteral", 1077 "value": 1, 1078 "loc": { 1079 "start": { 1080 "line": 42, 1081 "column": 16 1082 }, 1083 "end": { 1084 "line": 42, 1085 "column": 17 1086 } 1087 } 1088 }, 1089 "kind": "method", 1090 "accessibility": "protected", 1091 "static": false, 1092 "optional": false, 1093 "computed": true, 1094 "value": { 1095 "type": "FunctionExpression", 1096 "function": { 1097 "type": "ScriptFunction", 1098 "id": null, 1099 "generator": false, 1100 "async": false, 1101 "expression": false, 1102 "params": [], 1103 "loc": { 1104 "start": { 1105 "line": 42, 1106 "column": 18 1107 }, 1108 "end": { 1109 "line": 43, 1110 "column": 11 1111 } 1112 } 1113 }, 1114 "loc": { 1115 "start": { 1116 "line": 42, 1117 "column": 18 1118 }, 1119 "end": { 1120 "line": 43, 1121 "column": 11 1122 } 1123 } 1124 }, 1125 "overloads": [], 1126 "decorators": [], 1127 "loc": { 1128 "start": { 1129 "line": 42, 1130 "column": 5 1131 }, 1132 "end": { 1133 "line": 43, 1134 "column": 11 1135 } 1136 } 1137 }, 1138 { 1139 "type": "ClassProperty", 1140 "key": { 1141 "type": "Identifier", 1142 "name": "k", 1143 "decorators": [], 1144 "loc": { 1145 "start": { 1146 "line": 43, 1147 "column": 19 1148 }, 1149 "end": { 1150 "line": 43, 1151 "column": 20 1152 } 1153 } 1154 }, 1155 "accessibility": "public", 1156 "static": true, 1157 "readonly": false, 1158 "declare": false, 1159 "optional": false, 1160 "computed": false, 1161 "definite": false, 1162 "decorators": [], 1163 "loc": { 1164 "start": { 1165 "line": 43, 1166 "column": 5 1167 }, 1168 "end": { 1169 "line": 43, 1170 "column": 20 1171 } 1172 } 1173 }, 1174 { 1175 "type": "ClassProperty", 1176 "key": { 1177 "type": "PrivateIdentifier", 1178 "name": "o", 1179 "decorators": [], 1180 "loc": { 1181 "start": { 1182 "line": 44, 1183 "column": 6 1184 }, 1185 "end": { 1186 "line": 44, 1187 "column": 7 1188 } 1189 } 1190 }, 1191 "static": false, 1192 "readonly": false, 1193 "declare": false, 1194 "optional": false, 1195 "computed": false, 1196 "definite": false, 1197 "decorators": [], 1198 "loc": { 1199 "start": { 1200 "line": 44, 1201 "column": 5 1202 }, 1203 "end": { 1204 "line": 44, 1205 "column": 7 1206 } 1207 } 1208 } 1209 ], 1210 "loc": { 1211 "start": { 1212 "line": 34, 1213 "column": 22 1214 }, 1215 "end": { 1216 "line": 45, 1217 "column": 2 1218 } 1219 } 1220 }, 1221 "loc": { 1222 "start": { 1223 "line": 34, 1224 "column": 9 1225 }, 1226 "end": { 1227 "line": 45, 1228 "column": 2 1229 } 1230 } 1231 } 1232 ], 1233 "loc": { 1234 "start": { 1235 "line": 1, 1236 "column": 1 1237 }, 1238 "end": { 1239 "line": 45, 1240 "column": 2 1241 } 1242 } 1243} 1244