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