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 "annotations": [], 220 "loc": { 221 "start": { 222 "line": 19, 223 "column": 9 224 }, 225 "end": { 226 "line": 19, 227 "column": 20 228 } 229 } 230 }, 231 "body": [], 232 "indexSignatures": [], 233 "loc": { 234 "start": { 235 "line": 19, 236 "column": 18 237 }, 238 "end": { 239 "line": 19, 240 "column": 20 241 } 242 } 243 }, 244 "decorators": [], 245 "isAnnotationDeclaration": false, 246 "loc": { 247 "start": { 248 "line": 19, 249 "column": 9 250 }, 251 "end": { 252 "line": 19, 253 "column": 20 254 } 255 } 256 }, 257 { 258 "type": "TSDeclareFunction", 259 "function": { 260 "type": "ScriptFunction", 261 "id": { 262 "type": "Identifier", 263 "name": "C2", 264 "loc": { 265 "start": { 266 "line": 21, 267 "column": 18 268 }, 269 "end": { 270 "line": 21, 271 "column": 20 272 } 273 } 274 }, 275 "generator": false, 276 "async": false, 277 "expression": false, 278 "params": [], 279 "returnType": { 280 "type": "TSTypeReference", 281 "typeName": { 282 "type": "Identifier", 283 "name": "C2", 284 "loc": { 285 "start": { 286 "line": 21, 287 "column": 25 288 }, 289 "end": { 290 "line": 21, 291 "column": 27 292 } 293 } 294 }, 295 "loc": { 296 "start": { 297 "line": 21, 298 "column": 25 299 }, 300 "end": { 301 "line": 21, 302 "column": 27 303 } 304 } 305 }, 306 "declare": true, 307 "loc": { 308 "start": { 309 "line": 21, 310 "column": 9 311 }, 312 "end": { 313 "line": 22, 314 "column": 8 315 } 316 } 317 }, 318 "loc": { 319 "start": { 320 "line": 21, 321 "column": 9 322 }, 323 "end": { 324 "line": 22, 325 "column": 8 326 } 327 } 328 }, 329 { 330 "type": "TSDeclareFunction", 331 "function": { 332 "type": "ScriptFunction", 333 "id": { 334 "type": "Identifier", 335 "name": "C2", 336 "loc": { 337 "start": { 338 "line": 22, 339 "column": 18 340 }, 341 "end": { 342 "line": 22, 343 "column": 20 344 } 345 } 346 }, 347 "generator": false, 348 "async": false, 349 "expression": false, 350 "params": [], 351 "returnType": { 352 "type": "TSTypeReference", 353 "typeName": { 354 "type": "Identifier", 355 "name": "C2", 356 "loc": { 357 "start": { 358 "line": 22, 359 "column": 25 360 }, 361 "end": { 362 "line": 22, 363 "column": 27 364 } 365 } 366 }, 367 "loc": { 368 "start": { 369 "line": 22, 370 "column": 25 371 }, 372 "end": { 373 "line": 22, 374 "column": 27 375 } 376 } 377 }, 378 "declare": true, 379 "loc": { 380 "start": { 381 "line": 22, 382 "column": 9 383 }, 384 "end": { 385 "line": 23, 386 "column": 8 387 } 388 } 389 }, 390 "loc": { 391 "start": { 392 "line": 22, 393 "column": 9 394 }, 395 "end": { 396 "line": 23, 397 "column": 8 398 } 399 } 400 }, 401 { 402 "type": "ClassDeclaration", 403 "definition": { 404 "id": { 405 "type": "Identifier", 406 "name": "C2", 407 "loc": { 408 "start": { 409 "line": 23, 410 "column": 15 411 }, 412 "end": { 413 "line": 23, 414 "column": 17 415 } 416 } 417 }, 418 "superClass": null, 419 "implements": [], 420 "constructor": { 421 "type": "MethodDefinition", 422 "key": { 423 "type": "Identifier", 424 "name": "constructor", 425 "loc": { 426 "start": { 427 "line": 1, 428 "column": 1 429 }, 430 "end": { 431 "line": 1, 432 "column": 1 433 } 434 } 435 }, 436 "kind": "constructor", 437 "static": false, 438 "optional": false, 439 "computed": false, 440 "value": { 441 "type": "FunctionExpression", 442 "function": { 443 "type": "ScriptFunction", 444 "id": null, 445 "generator": false, 446 "async": false, 447 "expression": false, 448 "params": [], 449 "declare": true, 450 "loc": { 451 "start": { 452 "line": 1, 453 "column": 1 454 }, 455 "end": { 456 "line": 1, 457 "column": 1 458 } 459 } 460 }, 461 "loc": { 462 "start": { 463 "line": 1, 464 "column": 1 465 }, 466 "end": { 467 "line": 1, 468 "column": 1 469 } 470 } 471 }, 472 "overloads": [], 473 "decorators": [], 474 "annotations": [], 475 "loc": { 476 "start": { 477 "line": 23, 478 "column": 9 479 }, 480 "end": { 481 "line": 23, 482 "column": 20 483 } 484 } 485 }, 486 "body": [], 487 "indexSignatures": [], 488 "loc": { 489 "start": { 490 "line": 23, 491 "column": 18 492 }, 493 "end": { 494 "line": 23, 495 "column": 20 496 } 497 } 498 }, 499 "decorators": [], 500 "isAnnotationDeclaration": false, 501 "loc": { 502 "start": { 503 "line": 23, 504 "column": 9 505 }, 506 "end": { 507 "line": 23, 508 "column": 20 509 } 510 } 511 }, 512 { 513 "type": "TSModuleDeclaration", 514 "id": { 515 "type": "Identifier", 516 "name": "ns", 517 "loc": { 518 "start": { 519 "line": 25, 520 "column": 11 521 }, 522 "end": { 523 "line": 25, 524 "column": 13 525 } 526 } 527 }, 528 "body": { 529 "type": "TSModuleBlock", 530 "body": [ 531 { 532 "type": "TSDeclareFunction", 533 "function": { 534 "type": "ScriptFunction", 535 "id": { 536 "type": "Identifier", 537 "name": "C1", 538 "loc": { 539 "start": { 540 "line": 26, 541 "column": 14 542 }, 543 "end": { 544 "line": 26, 545 "column": 16 546 } 547 } 548 }, 549 "generator": false, 550 "async": false, 551 "expression": false, 552 "params": [], 553 "returnType": { 554 "type": "TSTypeReference", 555 "typeName": { 556 "type": "Identifier", 557 "name": "C1", 558 "loc": { 559 "start": { 560 "line": 26, 561 "column": 21 562 }, 563 "end": { 564 "line": 26, 565 "column": 23 566 } 567 } 568 }, 569 "loc": { 570 "start": { 571 "line": 26, 572 "column": 21 573 }, 574 "end": { 575 "line": 26, 576 "column": 23 577 } 578 } 579 }, 580 "loc": { 581 "start": { 582 "line": 26, 583 "column": 5 584 }, 585 "end": { 586 "line": 27, 587 "column": 13 588 } 589 } 590 }, 591 "loc": { 592 "start": { 593 "line": 26, 594 "column": 5 595 }, 596 "end": { 597 "line": 27, 598 "column": 13 599 } 600 } 601 }, 602 { 603 "type": "FunctionDeclaration", 604 "function": { 605 "type": "ScriptFunction", 606 "id": { 607 "type": "Identifier", 608 "name": "C1", 609 "loc": { 610 "start": { 611 "line": 27, 612 "column": 14 613 }, 614 "end": { 615 "line": 27, 616 "column": 16 617 } 618 } 619 }, 620 "generator": false, 621 "async": false, 622 "expression": false, 623 "params": [], 624 "returnType": { 625 "type": "TSAnyKeyword", 626 "loc": { 627 "start": { 628 "line": 27, 629 "column": 21 630 }, 631 "end": { 632 "line": 27, 633 "column": 24 634 } 635 } 636 }, 637 "body": { 638 "type": "BlockStatement", 639 "statements": [], 640 "loc": { 641 "start": { 642 "line": 27, 643 "column": 25 644 }, 645 "end": { 646 "line": 27, 647 "column": 27 648 } 649 } 650 }, 651 "loc": { 652 "start": { 653 "line": 27, 654 "column": 5 655 }, 656 "end": { 657 "line": 27, 658 "column": 27 659 } 660 } 661 }, 662 "loc": { 663 "start": { 664 "line": 27, 665 "column": 5 666 }, 667 "end": { 668 "line": 27, 669 "column": 27 670 } 671 } 672 }, 673 { 674 "type": "ClassDeclaration", 675 "definition": { 676 "id": { 677 "type": "Identifier", 678 "name": "C1", 679 "loc": { 680 "start": { 681 "line": 28, 682 "column": 19 683 }, 684 "end": { 685 "line": 28, 686 "column": 21 687 } 688 } 689 }, 690 "superClass": null, 691 "implements": [], 692 "constructor": { 693 "type": "MethodDefinition", 694 "key": { 695 "type": "Identifier", 696 "name": "constructor", 697 "loc": { 698 "start": { 699 "line": 1, 700 "column": 1 701 }, 702 "end": { 703 "line": 1, 704 "column": 1 705 } 706 } 707 }, 708 "kind": "constructor", 709 "static": false, 710 "optional": false, 711 "computed": false, 712 "value": { 713 "type": "FunctionExpression", 714 "function": { 715 "type": "ScriptFunction", 716 "id": null, 717 "generator": false, 718 "async": false, 719 "expression": false, 720 "params": [], 721 "declare": true, 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 "overloads": [], 745 "decorators": [], 746 "annotations": [], 747 "loc": { 748 "start": { 749 "line": 28, 750 "column": 13 751 }, 752 "end": { 753 "line": 28, 754 "column": 24 755 } 756 } 757 }, 758 "body": [], 759 "indexSignatures": [], 760 "loc": { 761 "start": { 762 "line": 28, 763 "column": 22 764 }, 765 "end": { 766 "line": 28, 767 "column": 24 768 } 769 } 770 }, 771 "decorators": [], 772 "isAnnotationDeclaration": false, 773 "loc": { 774 "start": { 775 "line": 28, 776 "column": 13 777 }, 778 "end": { 779 "line": 28, 780 "column": 24 781 } 782 } 783 }, 784 { 785 "type": "TSDeclareFunction", 786 "function": { 787 "type": "ScriptFunction", 788 "id": { 789 "type": "Identifier", 790 "name": "C2", 791 "loc": { 792 "start": { 793 "line": 30, 794 "column": 22 795 }, 796 "end": { 797 "line": 30, 798 "column": 24 799 } 800 } 801 }, 802 "generator": false, 803 "async": false, 804 "expression": false, 805 "params": [], 806 "returnType": { 807 "type": "TSTypeReference", 808 "typeName": { 809 "type": "Identifier", 810 "name": "C2", 811 "loc": { 812 "start": { 813 "line": 30, 814 "column": 29 815 }, 816 "end": { 817 "line": 30, 818 "column": 31 819 } 820 } 821 }, 822 "loc": { 823 "start": { 824 "line": 30, 825 "column": 29 826 }, 827 "end": { 828 "line": 30, 829 "column": 31 830 } 831 } 832 }, 833 "declare": true, 834 "loc": { 835 "start": { 836 "line": 30, 837 "column": 13 838 }, 839 "end": { 840 "line": 31, 841 "column": 12 842 } 843 } 844 }, 845 "loc": { 846 "start": { 847 "line": 30, 848 "column": 13 849 }, 850 "end": { 851 "line": 31, 852 "column": 12 853 } 854 } 855 }, 856 { 857 "type": "TSDeclareFunction", 858 "function": { 859 "type": "ScriptFunction", 860 "id": { 861 "type": "Identifier", 862 "name": "C2", 863 "loc": { 864 "start": { 865 "line": 31, 866 "column": 22 867 }, 868 "end": { 869 "line": 31, 870 "column": 24 871 } 872 } 873 }, 874 "generator": false, 875 "async": false, 876 "expression": false, 877 "params": [], 878 "returnType": { 879 "type": "TSTypeReference", 880 "typeName": { 881 "type": "Identifier", 882 "name": "C2", 883 "loc": { 884 "start": { 885 "line": 31, 886 "column": 29 887 }, 888 "end": { 889 "line": 31, 890 "column": 31 891 } 892 } 893 }, 894 "loc": { 895 "start": { 896 "line": 31, 897 "column": 29 898 }, 899 "end": { 900 "line": 31, 901 "column": 31 902 } 903 } 904 }, 905 "declare": true, 906 "loc": { 907 "start": { 908 "line": 31, 909 "column": 13 910 }, 911 "end": { 912 "line": 32, 913 "column": 12 914 } 915 } 916 }, 917 "loc": { 918 "start": { 919 "line": 31, 920 "column": 13 921 }, 922 "end": { 923 "line": 32, 924 "column": 12 925 } 926 } 927 }, 928 { 929 "type": "ClassDeclaration", 930 "definition": { 931 "id": { 932 "type": "Identifier", 933 "name": "C2", 934 "loc": { 935 "start": { 936 "line": 32, 937 "column": 19 938 }, 939 "end": { 940 "line": 32, 941 "column": 21 942 } 943 } 944 }, 945 "superClass": null, 946 "implements": [], 947 "constructor": { 948 "type": "MethodDefinition", 949 "key": { 950 "type": "Identifier", 951 "name": "constructor", 952 "loc": { 953 "start": { 954 "line": 1, 955 "column": 1 956 }, 957 "end": { 958 "line": 1, 959 "column": 1 960 } 961 } 962 }, 963 "kind": "constructor", 964 "static": false, 965 "optional": false, 966 "computed": false, 967 "value": { 968 "type": "FunctionExpression", 969 "function": { 970 "type": "ScriptFunction", 971 "id": null, 972 "generator": false, 973 "async": false, 974 "expression": false, 975 "params": [], 976 "declare": true, 977 "loc": { 978 "start": { 979 "line": 1, 980 "column": 1 981 }, 982 "end": { 983 "line": 1, 984 "column": 1 985 } 986 } 987 }, 988 "loc": { 989 "start": { 990 "line": 1, 991 "column": 1 992 }, 993 "end": { 994 "line": 1, 995 "column": 1 996 } 997 } 998 }, 999 "overloads": [], 1000 "decorators": [], 1001 "annotations": [], 1002 "loc": { 1003 "start": { 1004 "line": 32, 1005 "column": 13 1006 }, 1007 "end": { 1008 "line": 32, 1009 "column": 24 1010 } 1011 } 1012 }, 1013 "body": [], 1014 "indexSignatures": [], 1015 "loc": { 1016 "start": { 1017 "line": 32, 1018 "column": 22 1019 }, 1020 "end": { 1021 "line": 32, 1022 "column": 24 1023 } 1024 } 1025 }, 1026 "decorators": [], 1027 "isAnnotationDeclaration": false, 1028 "loc": { 1029 "start": { 1030 "line": 32, 1031 "column": 13 1032 }, 1033 "end": { 1034 "line": 32, 1035 "column": 24 1036 } 1037 } 1038 } 1039 ], 1040 "loc": { 1041 "start": { 1042 "line": 25, 1043 "column": 14 1044 }, 1045 "end": { 1046 "line": 33, 1047 "column": 2 1048 } 1049 } 1050 }, 1051 "declare": false, 1052 "global": false, 1053 "loc": { 1054 "start": { 1055 "line": 25, 1056 "column": 1 1057 }, 1058 "end": { 1059 "line": 34, 1060 "column": 1 1061 } 1062 } 1063 } 1064 ], 1065 "loc": { 1066 "start": { 1067 "line": 1, 1068 "column": 1 1069 }, 1070 "end": { 1071 "line": 34, 1072 "column": 1 1073 } 1074 } 1075} 1076