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