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