1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "VariableDeclaration", 6 "declarations": [ 7 { 8 "type": "VariableDeclarator", 9 "id": { 10 "type": "Identifier", 11 "name": "a", 12 "typeAnnotation": { 13 "type": "TSAnyKeyword", 14 "loc": { 15 "start": { 16 "line": 17, 17 "column": 8 18 }, 19 "end": { 20 "line": 17, 21 "column": 11 22 } 23 } 24 }, 25 "decorators": [], 26 "loc": { 27 "start": { 28 "line": 17, 29 "column": 5 30 }, 31 "end": { 32 "line": 17, 33 "column": 6 34 } 35 } 36 }, 37 "init": null, 38 "loc": { 39 "start": { 40 "line": 17, 41 "column": 5 42 }, 43 "end": { 44 "line": 17, 45 "column": 6 46 } 47 } 48 } 49 ], 50 "kind": "var", 51 "loc": { 52 "start": { 53 "line": 17, 54 "column": 1 55 }, 56 "end": { 57 "line": 17, 58 "column": 12 59 } 60 } 61 }, 62 { 63 "type": "VariableDeclaration", 64 "declarations": [ 65 { 66 "type": "VariableDeclarator", 67 "id": { 68 "type": "Identifier", 69 "name": "a", 70 "typeAnnotation": { 71 "type": "TSAnyKeyword", 72 "loc": { 73 "start": { 74 "line": 18, 75 "column": 8 76 }, 77 "end": { 78 "line": 18, 79 "column": 11 80 } 81 } 82 }, 83 "decorators": [], 84 "loc": { 85 "start": { 86 "line": 18, 87 "column": 5 88 }, 89 "end": { 90 "line": 18, 91 "column": 6 92 } 93 } 94 }, 95 "init": null, 96 "loc": { 97 "start": { 98 "line": 18, 99 "column": 5 100 }, 101 "end": { 102 "line": 18, 103 "column": 6 104 } 105 } 106 } 107 ], 108 "kind": "var", 109 "loc": { 110 "start": { 111 "line": 18, 112 "column": 1 113 }, 114 "end": { 115 "line": 18, 116 "column": 12 117 } 118 } 119 }, 120 { 121 "type": "VariableDeclaration", 122 "declarations": [ 123 { 124 "type": "VariableDeclarator", 125 "id": { 126 "type": "Identifier", 127 "name": "b", 128 "typeAnnotation": { 129 "type": "TSNumberKeyword", 130 "loc": { 131 "start": { 132 "line": 20, 133 "column": 8 134 }, 135 "end": { 136 "line": 20, 137 "column": 14 138 } 139 } 140 }, 141 "decorators": [], 142 "loc": { 143 "start": { 144 "line": 20, 145 "column": 5 146 }, 147 "end": { 148 "line": 20, 149 "column": 6 150 } 151 } 152 }, 153 "init": null, 154 "loc": { 155 "start": { 156 "line": 20, 157 "column": 5 158 }, 159 "end": { 160 "line": 20, 161 "column": 6 162 } 163 } 164 } 165 ], 166 "kind": "var", 167 "loc": { 168 "start": { 169 "line": 20, 170 "column": 1 171 }, 172 "end": { 173 "line": 20, 174 "column": 15 175 } 176 } 177 }, 178 { 179 "type": "VariableDeclaration", 180 "declarations": [ 181 { 182 "type": "VariableDeclarator", 183 "id": { 184 "type": "Identifier", 185 "name": "b", 186 "typeAnnotation": { 187 "type": "TSNumberKeyword", 188 "loc": { 189 "start": { 190 "line": 21, 191 "column": 8 192 }, 193 "end": { 194 "line": 21, 195 "column": 14 196 } 197 } 198 }, 199 "decorators": [], 200 "loc": { 201 "start": { 202 "line": 21, 203 "column": 5 204 }, 205 "end": { 206 "line": 21, 207 "column": 6 208 } 209 } 210 }, 211 "init": null, 212 "loc": { 213 "start": { 214 "line": 21, 215 "column": 5 216 }, 217 "end": { 218 "line": 21, 219 "column": 6 220 } 221 } 222 } 223 ], 224 "kind": "var", 225 "loc": { 226 "start": { 227 "line": 21, 228 "column": 1 229 }, 230 "end": { 231 "line": 21, 232 "column": 15 233 } 234 } 235 }, 236 { 237 "type": "VariableDeclaration", 238 "declarations": [ 239 { 240 "type": "VariableDeclarator", 241 "id": { 242 "type": "Identifier", 243 "name": "c", 244 "typeAnnotation": { 245 "type": "TSUnionType", 246 "types": [ 247 { 248 "type": "TSNumberKeyword", 249 "loc": { 250 "start": { 251 "line": 23, 252 "column": 8 253 }, 254 "end": { 255 "line": 23, 256 "column": 14 257 } 258 } 259 }, 260 { 261 "type": "TSStringKeyword", 262 "loc": { 263 "start": { 264 "line": 23, 265 "column": 17 266 }, 267 "end": { 268 "line": 23, 269 "column": 23 270 } 271 } 272 } 273 ], 274 "loc": { 275 "start": { 276 "line": 23, 277 "column": 8 278 }, 279 "end": { 280 "line": 23, 281 "column": 23 282 } 283 } 284 }, 285 "decorators": [], 286 "loc": { 287 "start": { 288 "line": 23, 289 "column": 5 290 }, 291 "end": { 292 "line": 23, 293 "column": 6 294 } 295 } 296 }, 297 "init": null, 298 "loc": { 299 "start": { 300 "line": 23, 301 "column": 5 302 }, 303 "end": { 304 "line": 23, 305 "column": 6 306 } 307 } 308 } 309 ], 310 "kind": "var", 311 "loc": { 312 "start": { 313 "line": 23, 314 "column": 1 315 }, 316 "end": { 317 "line": 23, 318 "column": 24 319 } 320 } 321 }, 322 { 323 "type": "VariableDeclaration", 324 "declarations": [ 325 { 326 "type": "VariableDeclarator", 327 "id": { 328 "type": "Identifier", 329 "name": "c", 330 "typeAnnotation": { 331 "type": "TSUnionType", 332 "types": [ 333 { 334 "type": "TSStringKeyword", 335 "loc": { 336 "start": { 337 "line": 24, 338 "column": 8 339 }, 340 "end": { 341 "line": 24, 342 "column": 14 343 } 344 } 345 }, 346 { 347 "type": "TSNumberKeyword", 348 "loc": { 349 "start": { 350 "line": 24, 351 "column": 17 352 }, 353 "end": { 354 "line": 24, 355 "column": 23 356 } 357 } 358 } 359 ], 360 "loc": { 361 "start": { 362 "line": 24, 363 "column": 8 364 }, 365 "end": { 366 "line": 24, 367 "column": 23 368 } 369 } 370 }, 371 "decorators": [], 372 "loc": { 373 "start": { 374 "line": 24, 375 "column": 5 376 }, 377 "end": { 378 "line": 24, 379 "column": 6 380 } 381 } 382 }, 383 "init": null, 384 "loc": { 385 "start": { 386 "line": 24, 387 "column": 5 388 }, 389 "end": { 390 "line": 24, 391 "column": 6 392 } 393 } 394 } 395 ], 396 "kind": "var", 397 "loc": { 398 "start": { 399 "line": 24, 400 "column": 1 401 }, 402 "end": { 403 "line": 24, 404 "column": 24 405 } 406 } 407 }, 408 { 409 "type": "VariableDeclaration", 410 "declarations": [ 411 { 412 "type": "VariableDeclarator", 413 "id": { 414 "type": "Identifier", 415 "name": "d", 416 "typeAnnotation": { 417 "type": "TSTypeLiteral", 418 "members": [ 419 { 420 "type": "TSPropertySignature", 421 "computed": false, 422 "optional": false, 423 "readonly": false, 424 "key": { 425 "type": "Identifier", 426 "name": "a", 427 "decorators": [], 428 "loc": { 429 "start": { 430 "line": 26, 431 "column": 10 432 }, 433 "end": { 434 "line": 26, 435 "column": 11 436 } 437 } 438 }, 439 "typeAnnotation": { 440 "type": "TSNumberKeyword", 441 "loc": { 442 "start": { 443 "line": 26, 444 "column": 13 445 }, 446 "end": { 447 "line": 26, 448 "column": 19 449 } 450 } 451 }, 452 "loc": { 453 "start": { 454 "line": 26, 455 "column": 10 456 }, 457 "end": { 458 "line": 26, 459 "column": 20 460 } 461 } 462 }, 463 { 464 "type": "TSPropertySignature", 465 "computed": false, 466 "optional": false, 467 "readonly": false, 468 "key": { 469 "type": "Identifier", 470 "name": "b", 471 "decorators": [], 472 "loc": { 473 "start": { 474 "line": 26, 475 "column": 21 476 }, 477 "end": { 478 "line": 26, 479 "column": 22 480 } 481 } 482 }, 483 "typeAnnotation": { 484 "type": "TSStringKeyword", 485 "loc": { 486 "start": { 487 "line": 26, 488 "column": 24 489 }, 490 "end": { 491 "line": 26, 492 "column": 30 493 } 494 } 495 }, 496 "loc": { 497 "start": { 498 "line": 26, 499 "column": 21 500 }, 501 "end": { 502 "line": 26, 503 "column": 32 504 } 505 } 506 } 507 ], 508 "loc": { 509 "start": { 510 "line": 26, 511 "column": 8 512 }, 513 "end": { 514 "line": 26, 515 "column": 32 516 } 517 } 518 }, 519 "decorators": [], 520 "loc": { 521 "start": { 522 "line": 26, 523 "column": 5 524 }, 525 "end": { 526 "line": 26, 527 "column": 6 528 } 529 } 530 }, 531 "init": null, 532 "loc": { 533 "start": { 534 "line": 26, 535 "column": 5 536 }, 537 "end": { 538 "line": 26, 539 "column": 6 540 } 541 } 542 } 543 ], 544 "kind": "var", 545 "loc": { 546 "start": { 547 "line": 26, 548 "column": 1 549 }, 550 "end": { 551 "line": 26, 552 "column": 33 553 } 554 } 555 }, 556 { 557 "type": "VariableDeclaration", 558 "declarations": [ 559 { 560 "type": "VariableDeclarator", 561 "id": { 562 "type": "Identifier", 563 "name": "d", 564 "typeAnnotation": { 565 "type": "TSTypeLiteral", 566 "members": [ 567 { 568 "type": "TSPropertySignature", 569 "computed": false, 570 "optional": false, 571 "readonly": false, 572 "key": { 573 "type": "Identifier", 574 "name": "b", 575 "decorators": [], 576 "loc": { 577 "start": { 578 "line": 27, 579 "column": 10 580 }, 581 "end": { 582 "line": 27, 583 "column": 11 584 } 585 } 586 }, 587 "typeAnnotation": { 588 "type": "TSStringKeyword", 589 "loc": { 590 "start": { 591 "line": 27, 592 "column": 13 593 }, 594 "end": { 595 "line": 27, 596 "column": 19 597 } 598 } 599 }, 600 "loc": { 601 "start": { 602 "line": 27, 603 "column": 10 604 }, 605 "end": { 606 "line": 27, 607 "column": 20 608 } 609 } 610 }, 611 { 612 "type": "TSPropertySignature", 613 "computed": false, 614 "optional": false, 615 "readonly": false, 616 "key": { 617 "type": "Identifier", 618 "name": "a", 619 "decorators": [], 620 "loc": { 621 "start": { 622 "line": 27, 623 "column": 21 624 }, 625 "end": { 626 "line": 27, 627 "column": 22 628 } 629 } 630 }, 631 "typeAnnotation": { 632 "type": "TSNumberKeyword", 633 "loc": { 634 "start": { 635 "line": 27, 636 "column": 24 637 }, 638 "end": { 639 "line": 27, 640 "column": 30 641 } 642 } 643 }, 644 "loc": { 645 "start": { 646 "line": 27, 647 "column": 21 648 }, 649 "end": { 650 "line": 27, 651 "column": 32 652 } 653 } 654 } 655 ], 656 "loc": { 657 "start": { 658 "line": 27, 659 "column": 8 660 }, 661 "end": { 662 "line": 27, 663 "column": 32 664 } 665 } 666 }, 667 "decorators": [], 668 "loc": { 669 "start": { 670 "line": 27, 671 "column": 5 672 }, 673 "end": { 674 "line": 27, 675 "column": 6 676 } 677 } 678 }, 679 "init": null, 680 "loc": { 681 "start": { 682 "line": 27, 683 "column": 5 684 }, 685 "end": { 686 "line": 27, 687 "column": 6 688 } 689 } 690 } 691 ], 692 "kind": "var", 693 "loc": { 694 "start": { 695 "line": 27, 696 "column": 1 697 }, 698 "end": { 699 "line": 27, 700 "column": 33 701 } 702 } 703 }, 704 { 705 "type": "VariableDeclaration", 706 "declarations": [ 707 { 708 "type": "VariableDeclarator", 709 "id": { 710 "type": "Identifier", 711 "name": "e", 712 "typeAnnotation": { 713 "type": "TSFunctionType", 714 "params": [ 715 { 716 "type": "Identifier", 717 "name": "a", 718 "typeAnnotation": { 719 "type": "TSNumberKeyword", 720 "loc": { 721 "start": { 722 "line": 29, 723 "column": 12 724 }, 725 "end": { 726 "line": 29, 727 "column": 18 728 } 729 } 730 }, 731 "decorators": [], 732 "loc": { 733 "start": { 734 "line": 29, 735 "column": 9 736 }, 737 "end": { 738 "line": 29, 739 "column": 10 740 } 741 } 742 }, 743 { 744 "type": "Identifier", 745 "name": "b", 746 "typeAnnotation": { 747 "type": "TSArrayType", 748 "elementType": { 749 "type": "TSParenthesizedType", 750 "typeAnnotation": { 751 "type": "TSUnionType", 752 "types": [ 753 { 754 "type": "TSStringKeyword", 755 "loc": { 756 "start": { 757 "line": 29, 758 "column": 24 759 }, 760 "end": { 761 "line": 29, 762 "column": 30 763 } 764 } 765 }, 766 { 767 "type": "TSNumberKeyword", 768 "loc": { 769 "start": { 770 "line": 29, 771 "column": 33 772 }, 773 "end": { 774 "line": 29, 775 "column": 39 776 } 777 } 778 } 779 ], 780 "loc": { 781 "start": { 782 "line": 29, 783 "column": 24 784 }, 785 "end": { 786 "line": 29, 787 "column": 39 788 } 789 } 790 }, 791 "loc": { 792 "start": { 793 "line": 29, 794 "column": 23 795 }, 796 "end": { 797 "line": 29, 798 "column": 40 799 } 800 } 801 }, 802 "loc": { 803 "start": { 804 "line": 29, 805 "column": 23 806 }, 807 "end": { 808 "line": 29, 809 "column": 42 810 } 811 } 812 }, 813 "decorators": [], 814 "loc": { 815 "start": { 816 "line": 29, 817 "column": 20 818 }, 819 "end": { 820 "line": 29, 821 "column": 21 822 } 823 } 824 } 825 ], 826 "returnType": { 827 "type": "TSVoidKeyword", 828 "loc": { 829 "start": { 830 "line": 29, 831 "column": 47 832 }, 833 "end": { 834 "line": 29, 835 "column": 51 836 } 837 } 838 }, 839 "loc": { 840 "start": { 841 "line": 29, 842 "column": 8 843 }, 844 "end": { 845 "line": 29, 846 "column": 51 847 } 848 } 849 }, 850 "decorators": [], 851 "loc": { 852 "start": { 853 "line": 29, 854 "column": 5 855 }, 856 "end": { 857 "line": 29, 858 "column": 6 859 } 860 } 861 }, 862 "init": null, 863 "loc": { 864 "start": { 865 "line": 29, 866 "column": 5 867 }, 868 "end": { 869 "line": 29, 870 "column": 6 871 } 872 } 873 } 874 ], 875 "kind": "var", 876 "loc": { 877 "start": { 878 "line": 29, 879 "column": 1 880 }, 881 "end": { 882 "line": 29, 883 "column": 52 884 } 885 } 886 }, 887 { 888 "type": "VariableDeclaration", 889 "declarations": [ 890 { 891 "type": "VariableDeclarator", 892 "id": { 893 "type": "Identifier", 894 "name": "e", 895 "typeAnnotation": { 896 "type": "TSFunctionType", 897 "params": [ 898 { 899 "type": "Identifier", 900 "name": "a", 901 "typeAnnotation": { 902 "type": "TSNumberKeyword", 903 "loc": { 904 "start": { 905 "line": 30, 906 "column": 12 907 }, 908 "end": { 909 "line": 30, 910 "column": 18 911 } 912 } 913 }, 914 "decorators": [], 915 "loc": { 916 "start": { 917 "line": 30, 918 "column": 9 919 }, 920 "end": { 921 "line": 30, 922 "column": 10 923 } 924 } 925 }, 926 { 927 "type": "Identifier", 928 "name": "b", 929 "typeAnnotation": { 930 "type": "TSArrayType", 931 "elementType": { 932 "type": "TSParenthesizedType", 933 "typeAnnotation": { 934 "type": "TSUnionType", 935 "types": [ 936 { 937 "type": "TSStringKeyword", 938 "loc": { 939 "start": { 940 "line": 30, 941 "column": 24 942 }, 943 "end": { 944 "line": 30, 945 "column": 30 946 } 947 } 948 }, 949 { 950 "type": "TSNumberKeyword", 951 "loc": { 952 "start": { 953 "line": 30, 954 "column": 33 955 }, 956 "end": { 957 "line": 30, 958 "column": 39 959 } 960 } 961 } 962 ], 963 "loc": { 964 "start": { 965 "line": 30, 966 "column": 24 967 }, 968 "end": { 969 "line": 30, 970 "column": 39 971 } 972 } 973 }, 974 "loc": { 975 "start": { 976 "line": 30, 977 "column": 23 978 }, 979 "end": { 980 "line": 30, 981 "column": 40 982 } 983 } 984 }, 985 "loc": { 986 "start": { 987 "line": 30, 988 "column": 23 989 }, 990 "end": { 991 "line": 30, 992 "column": 42 993 } 994 } 995 }, 996 "decorators": [], 997 "loc": { 998 "start": { 999 "line": 30, 1000 "column": 20 1001 }, 1002 "end": { 1003 "line": 30, 1004 "column": 21 1005 } 1006 } 1007 } 1008 ], 1009 "returnType": { 1010 "type": "TSVoidKeyword", 1011 "loc": { 1012 "start": { 1013 "line": 30, 1014 "column": 47 1015 }, 1016 "end": { 1017 "line": 30, 1018 "column": 51 1019 } 1020 } 1021 }, 1022 "loc": { 1023 "start": { 1024 "line": 30, 1025 "column": 8 1026 }, 1027 "end": { 1028 "line": 30, 1029 "column": 51 1030 } 1031 } 1032 }, 1033 "decorators": [], 1034 "loc": { 1035 "start": { 1036 "line": 30, 1037 "column": 5 1038 }, 1039 "end": { 1040 "line": 30, 1041 "column": 6 1042 } 1043 } 1044 }, 1045 "init": null, 1046 "loc": { 1047 "start": { 1048 "line": 30, 1049 "column": 5 1050 }, 1051 "end": { 1052 "line": 30, 1053 "column": 6 1054 } 1055 } 1056 } 1057 ], 1058 "kind": "var", 1059 "loc": { 1060 "start": { 1061 "line": 30, 1062 "column": 1 1063 }, 1064 "end": { 1065 "line": 30, 1066 "column": 52 1067 } 1068 } 1069 }, 1070 { 1071 "type": "VariableDeclaration", 1072 "declarations": [ 1073 { 1074 "type": "VariableDeclarator", 1075 "id": { 1076 "type": "Identifier", 1077 "name": "f", 1078 "typeAnnotation": { 1079 "type": "TSUnionType", 1080 "types": [ 1081 { 1082 "type": "TSTypeLiteral", 1083 "members": [ 1084 { 1085 "type": "TSPropertySignature", 1086 "computed": false, 1087 "optional": false, 1088 "readonly": false, 1089 "key": { 1090 "type": "Identifier", 1091 "name": "a", 1092 "decorators": [], 1093 "loc": { 1094 "start": { 1095 "line": 32, 1096 "column": 10 1097 }, 1098 "end": { 1099 "line": 32, 1100 "column": 11 1101 } 1102 } 1103 }, 1104 "typeAnnotation": { 1105 "type": "TSNumberKeyword", 1106 "loc": { 1107 "start": { 1108 "line": 32, 1109 "column": 13 1110 }, 1111 "end": { 1112 "line": 32, 1113 "column": 19 1114 } 1115 } 1116 }, 1117 "loc": { 1118 "start": { 1119 "line": 32, 1120 "column": 10 1121 }, 1122 "end": { 1123 "line": 32, 1124 "column": 20 1125 } 1126 } 1127 }, 1128 { 1129 "type": "TSPropertySignature", 1130 "computed": false, 1131 "optional": false, 1132 "readonly": false, 1133 "key": { 1134 "type": "Identifier", 1135 "name": "b", 1136 "decorators": [], 1137 "loc": { 1138 "start": { 1139 "line": 32, 1140 "column": 21 1141 }, 1142 "end": { 1143 "line": 32, 1144 "column": 22 1145 } 1146 } 1147 }, 1148 "typeAnnotation": { 1149 "type": "TSStringKeyword", 1150 "loc": { 1151 "start": { 1152 "line": 32, 1153 "column": 24 1154 }, 1155 "end": { 1156 "line": 32, 1157 "column": 30 1158 } 1159 } 1160 }, 1161 "loc": { 1162 "start": { 1163 "line": 32, 1164 "column": 21 1165 }, 1166 "end": { 1167 "line": 32, 1168 "column": 32 1169 } 1170 } 1171 } 1172 ], 1173 "loc": { 1174 "start": { 1175 "line": 32, 1176 "column": 8 1177 }, 1178 "end": { 1179 "line": 32, 1180 "column": 32 1181 } 1182 } 1183 }, 1184 { 1185 "type": "TSTypeLiteral", 1186 "members": [ 1187 { 1188 "type": "TSPropertySignature", 1189 "computed": false, 1190 "optional": false, 1191 "readonly": false, 1192 "key": { 1193 "type": "Identifier", 1194 "name": "a", 1195 "decorators": [], 1196 "loc": { 1197 "start": { 1198 "line": 32, 1199 "column": 37 1200 }, 1201 "end": { 1202 "line": 32, 1203 "column": 38 1204 } 1205 } 1206 }, 1207 "typeAnnotation": { 1208 "type": "TSArrayType", 1209 "elementType": { 1210 "type": "TSNumberKeyword", 1211 "loc": { 1212 "start": { 1213 "line": 32, 1214 "column": 40 1215 }, 1216 "end": { 1217 "line": 32, 1218 "column": 46 1219 } 1220 } 1221 }, 1222 "loc": { 1223 "start": { 1224 "line": 32, 1225 "column": 40 1226 }, 1227 "end": { 1228 "line": 32, 1229 "column": 48 1230 } 1231 } 1232 }, 1233 "loc": { 1234 "start": { 1235 "line": 32, 1236 "column": 37 1237 }, 1238 "end": { 1239 "line": 32, 1240 "column": 49 1241 } 1242 } 1243 }, 1244 { 1245 "type": "TSPropertySignature", 1246 "computed": false, 1247 "optional": true, 1248 "readonly": false, 1249 "key": { 1250 "type": "Identifier", 1251 "name": "b", 1252 "decorators": [], 1253 "loc": { 1254 "start": { 1255 "line": 32, 1256 "column": 50 1257 }, 1258 "end": { 1259 "line": 32, 1260 "column": 51 1261 } 1262 } 1263 }, 1264 "typeAnnotation": { 1265 "type": "TSStringKeyword", 1266 "loc": { 1267 "start": { 1268 "line": 32, 1269 "column": 54 1270 }, 1271 "end": { 1272 "line": 32, 1273 "column": 60 1274 } 1275 } 1276 }, 1277 "loc": { 1278 "start": { 1279 "line": 32, 1280 "column": 50 1281 }, 1282 "end": { 1283 "line": 32, 1284 "column": 62 1285 } 1286 } 1287 } 1288 ], 1289 "loc": { 1290 "start": { 1291 "line": 32, 1292 "column": 35 1293 }, 1294 "end": { 1295 "line": 32, 1296 "column": 62 1297 } 1298 } 1299 } 1300 ], 1301 "loc": { 1302 "start": { 1303 "line": 32, 1304 "column": 8 1305 }, 1306 "end": { 1307 "line": 32, 1308 "column": 62 1309 } 1310 } 1311 }, 1312 "decorators": [], 1313 "loc": { 1314 "start": { 1315 "line": 32, 1316 "column": 5 1317 }, 1318 "end": { 1319 "line": 32, 1320 "column": 6 1321 } 1322 } 1323 }, 1324 "init": null, 1325 "loc": { 1326 "start": { 1327 "line": 32, 1328 "column": 5 1329 }, 1330 "end": { 1331 "line": 32, 1332 "column": 6 1333 } 1334 } 1335 } 1336 ], 1337 "kind": "var", 1338 "loc": { 1339 "start": { 1340 "line": 32, 1341 "column": 1 1342 }, 1343 "end": { 1344 "line": 32, 1345 "column": 63 1346 } 1347 } 1348 }, 1349 { 1350 "type": "VariableDeclaration", 1351 "declarations": [ 1352 { 1353 "type": "VariableDeclarator", 1354 "id": { 1355 "type": "Identifier", 1356 "name": "f", 1357 "typeAnnotation": { 1358 "type": "TSUnionType", 1359 "types": [ 1360 { 1361 "type": "TSTypeLiteral", 1362 "members": [ 1363 { 1364 "type": "TSPropertySignature", 1365 "computed": false, 1366 "optional": false, 1367 "readonly": false, 1368 "key": { 1369 "type": "Identifier", 1370 "name": "a", 1371 "decorators": [], 1372 "loc": { 1373 "start": { 1374 "line": 33, 1375 "column": 10 1376 }, 1377 "end": { 1378 "line": 33, 1379 "column": 11 1380 } 1381 } 1382 }, 1383 "typeAnnotation": { 1384 "type": "TSNumberKeyword", 1385 "loc": { 1386 "start": { 1387 "line": 33, 1388 "column": 13 1389 }, 1390 "end": { 1391 "line": 33, 1392 "column": 19 1393 } 1394 } 1395 }, 1396 "loc": { 1397 "start": { 1398 "line": 33, 1399 "column": 10 1400 }, 1401 "end": { 1402 "line": 33, 1403 "column": 20 1404 } 1405 } 1406 }, 1407 { 1408 "type": "TSPropertySignature", 1409 "computed": false, 1410 "optional": false, 1411 "readonly": false, 1412 "key": { 1413 "type": "Identifier", 1414 "name": "b", 1415 "decorators": [], 1416 "loc": { 1417 "start": { 1418 "line": 33, 1419 "column": 21 1420 }, 1421 "end": { 1422 "line": 33, 1423 "column": 22 1424 } 1425 } 1426 }, 1427 "typeAnnotation": { 1428 "type": "TSStringKeyword", 1429 "loc": { 1430 "start": { 1431 "line": 33, 1432 "column": 24 1433 }, 1434 "end": { 1435 "line": 33, 1436 "column": 30 1437 } 1438 } 1439 }, 1440 "loc": { 1441 "start": { 1442 "line": 33, 1443 "column": 21 1444 }, 1445 "end": { 1446 "line": 33, 1447 "column": 32 1448 } 1449 } 1450 } 1451 ], 1452 "loc": { 1453 "start": { 1454 "line": 33, 1455 "column": 8 1456 }, 1457 "end": { 1458 "line": 33, 1459 "column": 32 1460 } 1461 } 1462 }, 1463 { 1464 "type": "TSTypeLiteral", 1465 "members": [ 1466 { 1467 "type": "TSPropertySignature", 1468 "computed": false, 1469 "optional": false, 1470 "readonly": false, 1471 "key": { 1472 "type": "Identifier", 1473 "name": "a", 1474 "decorators": [], 1475 "loc": { 1476 "start": { 1477 "line": 33, 1478 "column": 37 1479 }, 1480 "end": { 1481 "line": 33, 1482 "column": 38 1483 } 1484 } 1485 }, 1486 "typeAnnotation": { 1487 "type": "TSArrayType", 1488 "elementType": { 1489 "type": "TSNumberKeyword", 1490 "loc": { 1491 "start": { 1492 "line": 33, 1493 "column": 40 1494 }, 1495 "end": { 1496 "line": 33, 1497 "column": 46 1498 } 1499 } 1500 }, 1501 "loc": { 1502 "start": { 1503 "line": 33, 1504 "column": 40 1505 }, 1506 "end": { 1507 "line": 33, 1508 "column": 48 1509 } 1510 } 1511 }, 1512 "loc": { 1513 "start": { 1514 "line": 33, 1515 "column": 37 1516 }, 1517 "end": { 1518 "line": 33, 1519 "column": 49 1520 } 1521 } 1522 }, 1523 { 1524 "type": "TSPropertySignature", 1525 "computed": false, 1526 "optional": true, 1527 "readonly": false, 1528 "key": { 1529 "type": "Identifier", 1530 "name": "b", 1531 "decorators": [], 1532 "loc": { 1533 "start": { 1534 "line": 33, 1535 "column": 50 1536 }, 1537 "end": { 1538 "line": 33, 1539 "column": 51 1540 } 1541 } 1542 }, 1543 "typeAnnotation": { 1544 "type": "TSStringKeyword", 1545 "loc": { 1546 "start": { 1547 "line": 33, 1548 "column": 54 1549 }, 1550 "end": { 1551 "line": 33, 1552 "column": 60 1553 } 1554 } 1555 }, 1556 "loc": { 1557 "start": { 1558 "line": 33, 1559 "column": 50 1560 }, 1561 "end": { 1562 "line": 33, 1563 "column": 62 1564 } 1565 } 1566 } 1567 ], 1568 "loc": { 1569 "start": { 1570 "line": 33, 1571 "column": 35 1572 }, 1573 "end": { 1574 "line": 33, 1575 "column": 62 1576 } 1577 } 1578 } 1579 ], 1580 "loc": { 1581 "start": { 1582 "line": 33, 1583 "column": 8 1584 }, 1585 "end": { 1586 "line": 33, 1587 "column": 62 1588 } 1589 } 1590 }, 1591 "decorators": [], 1592 "loc": { 1593 "start": { 1594 "line": 33, 1595 "column": 5 1596 }, 1597 "end": { 1598 "line": 33, 1599 "column": 6 1600 } 1601 } 1602 }, 1603 "init": null, 1604 "loc": { 1605 "start": { 1606 "line": 33, 1607 "column": 5 1608 }, 1609 "end": { 1610 "line": 33, 1611 "column": 6 1612 } 1613 } 1614 } 1615 ], 1616 "kind": "var", 1617 "loc": { 1618 "start": { 1619 "line": 33, 1620 "column": 1 1621 }, 1622 "end": { 1623 "line": 33, 1624 "column": 63 1625 } 1626 } 1627 }, 1628 { 1629 "type": "TSInterfaceDeclaration", 1630 "body": { 1631 "type": "TSInterfaceBody", 1632 "body": [ 1633 { 1634 "type": "TSPropertySignature", 1635 "computed": false, 1636 "optional": false, 1637 "readonly": false, 1638 "key": { 1639 "type": "Identifier", 1640 "name": "a", 1641 "decorators": [], 1642 "loc": { 1643 "start": { 1644 "line": 36, 1645 "column": 5 1646 }, 1647 "end": { 1648 "line": 36, 1649 "column": 6 1650 } 1651 } 1652 }, 1653 "typeAnnotation": { 1654 "type": "TSNumberKeyword", 1655 "loc": { 1656 "start": { 1657 "line": 36, 1658 "column": 8 1659 }, 1660 "end": { 1661 "line": 36, 1662 "column": 14 1663 } 1664 } 1665 }, 1666 "loc": { 1667 "start": { 1668 "line": 36, 1669 "column": 5 1670 }, 1671 "end": { 1672 "line": 36, 1673 "column": 15 1674 } 1675 } 1676 }, 1677 { 1678 "type": "TSPropertySignature", 1679 "computed": false, 1680 "optional": false, 1681 "readonly": false, 1682 "key": { 1683 "type": "Identifier", 1684 "name": "b", 1685 "decorators": [], 1686 "loc": { 1687 "start": { 1688 "line": 37, 1689 "column": 5 1690 }, 1691 "end": { 1692 "line": 37, 1693 "column": 6 1694 } 1695 } 1696 }, 1697 "typeAnnotation": { 1698 "type": "TSStringKeyword", 1699 "loc": { 1700 "start": { 1701 "line": 37, 1702 "column": 8 1703 }, 1704 "end": { 1705 "line": 37, 1706 "column": 14 1707 } 1708 } 1709 }, 1710 "loc": { 1711 "start": { 1712 "line": 37, 1713 "column": 5 1714 }, 1715 "end": { 1716 "line": 37, 1717 "column": 15 1718 } 1719 } 1720 } 1721 ], 1722 "loc": { 1723 "start": { 1724 "line": 35, 1725 "column": 22 1726 }, 1727 "end": { 1728 "line": 38, 1729 "column": 2 1730 } 1731 } 1732 }, 1733 "id": { 1734 "type": "Identifier", 1735 "name": "interface1", 1736 "decorators": [], 1737 "loc": { 1738 "start": { 1739 "line": 35, 1740 "column": 11 1741 }, 1742 "end": { 1743 "line": 35, 1744 "column": 21 1745 } 1746 } 1747 }, 1748 "extends": [], 1749 "loc": { 1750 "start": { 1751 "line": 35, 1752 "column": 1 1753 }, 1754 "end": { 1755 "line": 38, 1756 "column": 2 1757 } 1758 } 1759 }, 1760 { 1761 "type": "TSInterfaceDeclaration", 1762 "body": { 1763 "type": "TSInterfaceBody", 1764 "body": [ 1765 { 1766 "type": "TSPropertySignature", 1767 "computed": false, 1768 "optional": false, 1769 "readonly": false, 1770 "key": { 1771 "type": "Identifier", 1772 "name": "a", 1773 "decorators": [], 1774 "loc": { 1775 "start": { 1776 "line": 41, 1777 "column": 5 1778 }, 1779 "end": { 1780 "line": 41, 1781 "column": 6 1782 } 1783 } 1784 }, 1785 "typeAnnotation": { 1786 "type": "TSNumberKeyword", 1787 "loc": { 1788 "start": { 1789 "line": 41, 1790 "column": 8 1791 }, 1792 "end": { 1793 "line": 41, 1794 "column": 14 1795 } 1796 } 1797 }, 1798 "loc": { 1799 "start": { 1800 "line": 41, 1801 "column": 5 1802 }, 1803 "end": { 1804 "line": 41, 1805 "column": 15 1806 } 1807 } 1808 }, 1809 { 1810 "type": "TSPropertySignature", 1811 "computed": false, 1812 "optional": false, 1813 "readonly": false, 1814 "key": { 1815 "type": "Identifier", 1816 "name": "b", 1817 "decorators": [], 1818 "loc": { 1819 "start": { 1820 "line": 42, 1821 "column": 5 1822 }, 1823 "end": { 1824 "line": 42, 1825 "column": 6 1826 } 1827 } 1828 }, 1829 "typeAnnotation": { 1830 "type": "TSStringKeyword", 1831 "loc": { 1832 "start": { 1833 "line": 42, 1834 "column": 8 1835 }, 1836 "end": { 1837 "line": 42, 1838 "column": 14 1839 } 1840 } 1841 }, 1842 "loc": { 1843 "start": { 1844 "line": 42, 1845 "column": 5 1846 }, 1847 "end": { 1848 "line": 42, 1849 "column": 15 1850 } 1851 } 1852 } 1853 ], 1854 "loc": { 1855 "start": { 1856 "line": 40, 1857 "column": 22 1858 }, 1859 "end": { 1860 "line": 43, 1861 "column": 2 1862 } 1863 } 1864 }, 1865 "id": { 1866 "type": "Identifier", 1867 "name": "interface2", 1868 "decorators": [], 1869 "loc": { 1870 "start": { 1871 "line": 40, 1872 "column": 11 1873 }, 1874 "end": { 1875 "line": 40, 1876 "column": 21 1877 } 1878 } 1879 }, 1880 "extends": [], 1881 "loc": { 1882 "start": { 1883 "line": 40, 1884 "column": 1 1885 }, 1886 "end": { 1887 "line": 43, 1888 "column": 2 1889 } 1890 } 1891 }, 1892 { 1893 "type": "VariableDeclaration", 1894 "declarations": [ 1895 { 1896 "type": "VariableDeclarator", 1897 "id": { 1898 "type": "Identifier", 1899 "name": "g", 1900 "typeAnnotation": { 1901 "type": "TSTypeReference", 1902 "typeName": { 1903 "type": "Identifier", 1904 "name": "interface1", 1905 "decorators": [], 1906 "loc": { 1907 "start": { 1908 "line": 45, 1909 "column": 8 1910 }, 1911 "end": { 1912 "line": 45, 1913 "column": 18 1914 } 1915 } 1916 }, 1917 "loc": { 1918 "start": { 1919 "line": 45, 1920 "column": 8 1921 }, 1922 "end": { 1923 "line": 45, 1924 "column": 18 1925 } 1926 } 1927 }, 1928 "decorators": [], 1929 "loc": { 1930 "start": { 1931 "line": 45, 1932 "column": 5 1933 }, 1934 "end": { 1935 "line": 45, 1936 "column": 6 1937 } 1938 } 1939 }, 1940 "init": null, 1941 "loc": { 1942 "start": { 1943 "line": 45, 1944 "column": 5 1945 }, 1946 "end": { 1947 "line": 45, 1948 "column": 6 1949 } 1950 } 1951 } 1952 ], 1953 "kind": "var", 1954 "loc": { 1955 "start": { 1956 "line": 45, 1957 "column": 1 1958 }, 1959 "end": { 1960 "line": 45, 1961 "column": 19 1962 } 1963 } 1964 }, 1965 { 1966 "type": "VariableDeclaration", 1967 "declarations": [ 1968 { 1969 "type": "VariableDeclarator", 1970 "id": { 1971 "type": "Identifier", 1972 "name": "g", 1973 "typeAnnotation": { 1974 "type": "TSTypeReference", 1975 "typeName": { 1976 "type": "Identifier", 1977 "name": "interface2", 1978 "decorators": [], 1979 "loc": { 1980 "start": { 1981 "line": 46, 1982 "column": 8 1983 }, 1984 "end": { 1985 "line": 46, 1986 "column": 18 1987 } 1988 } 1989 }, 1990 "loc": { 1991 "start": { 1992 "line": 46, 1993 "column": 8 1994 }, 1995 "end": { 1996 "line": 46, 1997 "column": 18 1998 } 1999 } 2000 }, 2001 "decorators": [], 2002 "loc": { 2003 "start": { 2004 "line": 46, 2005 "column": 5 2006 }, 2007 "end": { 2008 "line": 46, 2009 "column": 6 2010 } 2011 } 2012 }, 2013 "init": null, 2014 "loc": { 2015 "start": { 2016 "line": 46, 2017 "column": 5 2018 }, 2019 "end": { 2020 "line": 46, 2021 "column": 6 2022 } 2023 } 2024 } 2025 ], 2026 "kind": "var", 2027 "loc": { 2028 "start": { 2029 "line": 46, 2030 "column": 1 2031 }, 2032 "end": { 2033 "line": 46, 2034 "column": 19 2035 } 2036 } 2037 }, 2038 { 2039 "type": "TSInterfaceDeclaration", 2040 "body": { 2041 "type": "TSInterfaceBody", 2042 "body": [ 2043 { 2044 "type": "TSPropertySignature", 2045 "computed": false, 2046 "optional": false, 2047 "readonly": false, 2048 "key": { 2049 "type": "Identifier", 2050 "name": "c", 2051 "decorators": [], 2052 "loc": { 2053 "start": { 2054 "line": 49, 2055 "column": 5 2056 }, 2057 "end": { 2058 "line": 49, 2059 "column": 6 2060 } 2061 } 2062 }, 2063 "typeAnnotation": { 2064 "type": "TSBooleanKeyword", 2065 "loc": { 2066 "start": { 2067 "line": 49, 2068 "column": 8 2069 }, 2070 "end": { 2071 "line": 49, 2072 "column": 15 2073 } 2074 } 2075 }, 2076 "loc": { 2077 "start": { 2078 "line": 49, 2079 "column": 5 2080 }, 2081 "end": { 2082 "line": 49, 2083 "column": 16 2084 } 2085 } 2086 } 2087 ], 2088 "loc": { 2089 "start": { 2090 "line": 48, 2091 "column": 41 2092 }, 2093 "end": { 2094 "line": 50, 2095 "column": 2 2096 } 2097 } 2098 }, 2099 "id": { 2100 "type": "Identifier", 2101 "name": "interface3", 2102 "decorators": [], 2103 "loc": { 2104 "start": { 2105 "line": 48, 2106 "column": 11 2107 }, 2108 "end": { 2109 "line": 48, 2110 "column": 21 2111 } 2112 } 2113 }, 2114 "extends": [ 2115 { 2116 "type": "TSInterfaceHeritage", 2117 "expression": { 2118 "type": "TSTypeReference", 2119 "typeName": { 2120 "type": "Identifier", 2121 "name": "interface1", 2122 "decorators": [], 2123 "loc": { 2124 "start": { 2125 "line": 48, 2126 "column": 30 2127 }, 2128 "end": { 2129 "line": 48, 2130 "column": 40 2131 } 2132 } 2133 }, 2134 "loc": { 2135 "start": { 2136 "line": 48, 2137 "column": 41 2138 }, 2139 "end": { 2140 "line": 48, 2141 "column": 40 2142 } 2143 } 2144 }, 2145 "loc": { 2146 "start": { 2147 "line": 48, 2148 "column": 41 2149 }, 2150 "end": { 2151 "line": 48, 2152 "column": 40 2153 } 2154 } 2155 } 2156 ], 2157 "loc": { 2158 "start": { 2159 "line": 48, 2160 "column": 1 2161 }, 2162 "end": { 2163 "line": 50, 2164 "column": 2 2165 } 2166 } 2167 }, 2168 { 2169 "type": "TSInterfaceDeclaration", 2170 "body": { 2171 "type": "TSInterfaceBody", 2172 "body": [ 2173 { 2174 "type": "TSPropertySignature", 2175 "computed": false, 2176 "optional": false, 2177 "readonly": false, 2178 "key": { 2179 "type": "Identifier", 2180 "name": "c", 2181 "decorators": [], 2182 "loc": { 2183 "start": { 2184 "line": 53, 2185 "column": 5 2186 }, 2187 "end": { 2188 "line": 53, 2189 "column": 6 2190 } 2191 } 2192 }, 2193 "typeAnnotation": { 2194 "type": "TSBooleanKeyword", 2195 "loc": { 2196 "start": { 2197 "line": 53, 2198 "column": 8 2199 }, 2200 "end": { 2201 "line": 53, 2202 "column": 15 2203 } 2204 } 2205 }, 2206 "loc": { 2207 "start": { 2208 "line": 53, 2209 "column": 5 2210 }, 2211 "end": { 2212 "line": 53, 2213 "column": 16 2214 } 2215 } 2216 } 2217 ], 2218 "loc": { 2219 "start": { 2220 "line": 52, 2221 "column": 41 2222 }, 2223 "end": { 2224 "line": 54, 2225 "column": 2 2226 } 2227 } 2228 }, 2229 "id": { 2230 "type": "Identifier", 2231 "name": "interface4", 2232 "decorators": [], 2233 "loc": { 2234 "start": { 2235 "line": 52, 2236 "column": 11 2237 }, 2238 "end": { 2239 "line": 52, 2240 "column": 21 2241 } 2242 } 2243 }, 2244 "extends": [ 2245 { 2246 "type": "TSInterfaceHeritage", 2247 "expression": { 2248 "type": "TSTypeReference", 2249 "typeName": { 2250 "type": "Identifier", 2251 "name": "interface2", 2252 "decorators": [], 2253 "loc": { 2254 "start": { 2255 "line": 52, 2256 "column": 30 2257 }, 2258 "end": { 2259 "line": 52, 2260 "column": 40 2261 } 2262 } 2263 }, 2264 "loc": { 2265 "start": { 2266 "line": 52, 2267 "column": 41 2268 }, 2269 "end": { 2270 "line": 52, 2271 "column": 40 2272 } 2273 } 2274 }, 2275 "loc": { 2276 "start": { 2277 "line": 52, 2278 "column": 41 2279 }, 2280 "end": { 2281 "line": 52, 2282 "column": 40 2283 } 2284 } 2285 } 2286 ], 2287 "loc": { 2288 "start": { 2289 "line": 52, 2290 "column": 1 2291 }, 2292 "end": { 2293 "line": 54, 2294 "column": 2 2295 } 2296 } 2297 }, 2298 { 2299 "type": "VariableDeclaration", 2300 "declarations": [ 2301 { 2302 "type": "VariableDeclarator", 2303 "id": { 2304 "type": "Identifier", 2305 "name": "h", 2306 "typeAnnotation": { 2307 "type": "TSTypeReference", 2308 "typeName": { 2309 "type": "Identifier", 2310 "name": "interface3", 2311 "decorators": [], 2312 "loc": { 2313 "start": { 2314 "line": 56, 2315 "column": 8 2316 }, 2317 "end": { 2318 "line": 56, 2319 "column": 18 2320 } 2321 } 2322 }, 2323 "loc": { 2324 "start": { 2325 "line": 56, 2326 "column": 8 2327 }, 2328 "end": { 2329 "line": 56, 2330 "column": 18 2331 } 2332 } 2333 }, 2334 "decorators": [], 2335 "loc": { 2336 "start": { 2337 "line": 56, 2338 "column": 5 2339 }, 2340 "end": { 2341 "line": 56, 2342 "column": 6 2343 } 2344 } 2345 }, 2346 "init": null, 2347 "loc": { 2348 "start": { 2349 "line": 56, 2350 "column": 5 2351 }, 2352 "end": { 2353 "line": 56, 2354 "column": 6 2355 } 2356 } 2357 } 2358 ], 2359 "kind": "var", 2360 "loc": { 2361 "start": { 2362 "line": 56, 2363 "column": 1 2364 }, 2365 "end": { 2366 "line": 56, 2367 "column": 19 2368 } 2369 } 2370 }, 2371 { 2372 "type": "VariableDeclaration", 2373 "declarations": [ 2374 { 2375 "type": "VariableDeclarator", 2376 "id": { 2377 "type": "Identifier", 2378 "name": "h", 2379 "typeAnnotation": { 2380 "type": "TSTypeReference", 2381 "typeName": { 2382 "type": "Identifier", 2383 "name": "interface4", 2384 "decorators": [], 2385 "loc": { 2386 "start": { 2387 "line": 57, 2388 "column": 8 2389 }, 2390 "end": { 2391 "line": 57, 2392 "column": 18 2393 } 2394 } 2395 }, 2396 "loc": { 2397 "start": { 2398 "line": 57, 2399 "column": 8 2400 }, 2401 "end": { 2402 "line": 57, 2403 "column": 18 2404 } 2405 } 2406 }, 2407 "decorators": [], 2408 "loc": { 2409 "start": { 2410 "line": 57, 2411 "column": 5 2412 }, 2413 "end": { 2414 "line": 57, 2415 "column": 6 2416 } 2417 } 2418 }, 2419 "init": null, 2420 "loc": { 2421 "start": { 2422 "line": 57, 2423 "column": 5 2424 }, 2425 "end": { 2426 "line": 57, 2427 "column": 6 2428 } 2429 } 2430 } 2431 ], 2432 "kind": "var", 2433 "loc": { 2434 "start": { 2435 "line": 57, 2436 "column": 1 2437 }, 2438 "end": { 2439 "line": 57, 2440 "column": 19 2441 } 2442 } 2443 }, 2444 { 2445 "type": "TSInterfaceDeclaration", 2446 "body": { 2447 "type": "TSInterfaceBody", 2448 "body": [ 2449 { 2450 "type": "TSCallSignatureDeclaration", 2451 "params": [ 2452 { 2453 "type": "Identifier", 2454 "name": "a", 2455 "typeAnnotation": { 2456 "type": "TSNumberKeyword", 2457 "loc": { 2458 "start": { 2459 "line": 60, 2460 "column": 9 2461 }, 2462 "end": { 2463 "line": 60, 2464 "column": 15 2465 } 2466 } 2467 }, 2468 "decorators": [], 2469 "loc": { 2470 "start": { 2471 "line": 60, 2472 "column": 6 2473 }, 2474 "end": { 2475 "line": 60, 2476 "column": 7 2477 } 2478 } 2479 }, 2480 { 2481 "type": "Identifier", 2482 "name": "b", 2483 "typeAnnotation": { 2484 "type": "TSStringKeyword", 2485 "loc": { 2486 "start": { 2487 "line": 60, 2488 "column": 20 2489 }, 2490 "end": { 2491 "line": 60, 2492 "column": 26 2493 } 2494 } 2495 }, 2496 "decorators": [], 2497 "loc": { 2498 "start": { 2499 "line": 60, 2500 "column": 17 2501 }, 2502 "end": { 2503 "line": 60, 2504 "column": 18 2505 } 2506 } 2507 } 2508 ], 2509 "returnType": { 2510 "type": "TSNumberKeyword", 2511 "loc": { 2512 "start": { 2513 "line": 60, 2514 "column": 29 2515 }, 2516 "end": { 2517 "line": 60, 2518 "column": 35 2519 } 2520 } 2521 }, 2522 "loc": { 2523 "start": { 2524 "line": 60, 2525 "column": 5 2526 }, 2527 "end": { 2528 "line": 60, 2529 "column": 36 2530 } 2531 } 2532 }, 2533 { 2534 "type": "TSCallSignatureDeclaration", 2535 "params": [ 2536 { 2537 "type": "Identifier", 2538 "name": "a", 2539 "typeAnnotation": { 2540 "type": "TSNumberKeyword", 2541 "loc": { 2542 "start": { 2543 "line": 61, 2544 "column": 9 2545 }, 2546 "end": { 2547 "line": 61, 2548 "column": 15 2549 } 2550 } 2551 }, 2552 "decorators": [], 2553 "loc": { 2554 "start": { 2555 "line": 61, 2556 "column": 6 2557 }, 2558 "end": { 2559 "line": 61, 2560 "column": 7 2561 } 2562 } 2563 }, 2564 { 2565 "type": "Identifier", 2566 "name": "b", 2567 "typeAnnotation": { 2568 "type": "TSStringKeyword", 2569 "loc": { 2570 "start": { 2571 "line": 61, 2572 "column": 20 2573 }, 2574 "end": { 2575 "line": 61, 2576 "column": 26 2577 } 2578 } 2579 }, 2580 "decorators": [], 2581 "loc": { 2582 "start": { 2583 "line": 61, 2584 "column": 17 2585 }, 2586 "end": { 2587 "line": 61, 2588 "column": 18 2589 } 2590 } 2591 } 2592 ], 2593 "returnType": { 2594 "type": "TSStringKeyword", 2595 "loc": { 2596 "start": { 2597 "line": 61, 2598 "column": 29 2599 }, 2600 "end": { 2601 "line": 61, 2602 "column": 35 2603 } 2604 } 2605 }, 2606 "loc": { 2607 "start": { 2608 "line": 61, 2609 "column": 5 2610 }, 2611 "end": { 2612 "line": 61, 2613 "column": 36 2614 } 2615 } 2616 }, 2617 { 2618 "type": "TSConstructSignatureDeclaration", 2619 "params": [ 2620 { 2621 "type": "Identifier", 2622 "name": "a", 2623 "typeAnnotation": { 2624 "type": "TSArrayType", 2625 "elementType": { 2626 "type": "TSNumberKeyword", 2627 "loc": { 2628 "start": { 2629 "line": 62, 2630 "column": 12 2631 }, 2632 "end": { 2633 "line": 62, 2634 "column": 18 2635 } 2636 } 2637 }, 2638 "loc": { 2639 "start": { 2640 "line": 62, 2641 "column": 12 2642 }, 2643 "end": { 2644 "line": 62, 2645 "column": 20 2646 } 2647 } 2648 }, 2649 "decorators": [], 2650 "loc": { 2651 "start": { 2652 "line": 62, 2653 "column": 9 2654 }, 2655 "end": { 2656 "line": 62, 2657 "column": 10 2658 } 2659 } 2660 }, 2661 { 2662 "type": "Identifier", 2663 "name": "b", 2664 "typeAnnotation": { 2665 "type": "TSTypeLiteral", 2666 "members": [ 2667 { 2668 "type": "TSPropertySignature", 2669 "computed": false, 2670 "optional": false, 2671 "readonly": false, 2672 "key": { 2673 "type": "Identifier", 2674 "name": "a", 2675 "decorators": [], 2676 "loc": { 2677 "start": { 2678 "line": 62, 2679 "column": 27 2680 }, 2681 "end": { 2682 "line": 62, 2683 "column": 28 2684 } 2685 } 2686 }, 2687 "typeAnnotation": { 2688 "type": "TSNumberKeyword", 2689 "loc": { 2690 "start": { 2691 "line": 62, 2692 "column": 30 2693 }, 2694 "end": { 2695 "line": 62, 2696 "column": 36 2697 } 2698 } 2699 }, 2700 "loc": { 2701 "start": { 2702 "line": 62, 2703 "column": 27 2704 }, 2705 "end": { 2706 "line": 62, 2707 "column": 37 2708 } 2709 } 2710 }, 2711 { 2712 "type": "TSPropertySignature", 2713 "computed": false, 2714 "optional": false, 2715 "readonly": false, 2716 "key": { 2717 "type": "Identifier", 2718 "name": "b", 2719 "decorators": [], 2720 "loc": { 2721 "start": { 2722 "line": 62, 2723 "column": 38 2724 }, 2725 "end": { 2726 "line": 62, 2727 "column": 39 2728 } 2729 } 2730 }, 2731 "typeAnnotation": { 2732 "type": "TSStringKeyword", 2733 "loc": { 2734 "start": { 2735 "line": 62, 2736 "column": 41 2737 }, 2738 "end": { 2739 "line": 62, 2740 "column": 47 2741 } 2742 } 2743 }, 2744 "loc": { 2745 "start": { 2746 "line": 62, 2747 "column": 38 2748 }, 2749 "end": { 2750 "line": 62, 2751 "column": 49 2752 } 2753 } 2754 } 2755 ], 2756 "loc": { 2757 "start": { 2758 "line": 62, 2759 "column": 25 2760 }, 2761 "end": { 2762 "line": 62, 2763 "column": 49 2764 } 2765 } 2766 }, 2767 "decorators": [], 2768 "loc": { 2769 "start": { 2770 "line": 62, 2771 "column": 22 2772 }, 2773 "end": { 2774 "line": 62, 2775 "column": 23 2776 } 2777 } 2778 } 2779 ], 2780 "returnType": { 2781 "type": "TSBooleanKeyword", 2782 "loc": { 2783 "start": { 2784 "line": 62, 2785 "column": 52 2786 }, 2787 "end": { 2788 "line": 62, 2789 "column": 59 2790 } 2791 } 2792 }, 2793 "loc": { 2794 "start": { 2795 "line": 62, 2796 "column": 5 2797 }, 2798 "end": { 2799 "line": 62, 2800 "column": 60 2801 } 2802 } 2803 }, 2804 { 2805 "type": "TSConstructSignatureDeclaration", 2806 "params": [ 2807 { 2808 "type": "Identifier", 2809 "name": "a", 2810 "typeAnnotation": { 2811 "type": "TSArrayType", 2812 "elementType": { 2813 "type": "TSNumberKeyword", 2814 "loc": { 2815 "start": { 2816 "line": 63, 2817 "column": 12 2818 }, 2819 "end": { 2820 "line": 63, 2821 "column": 18 2822 } 2823 } 2824 }, 2825 "loc": { 2826 "start": { 2827 "line": 63, 2828 "column": 12 2829 }, 2830 "end": { 2831 "line": 63, 2832 "column": 20 2833 } 2834 } 2835 }, 2836 "decorators": [], 2837 "loc": { 2838 "start": { 2839 "line": 63, 2840 "column": 9 2841 }, 2842 "end": { 2843 "line": 63, 2844 "column": 10 2845 } 2846 } 2847 }, 2848 { 2849 "type": "Identifier", 2850 "name": "b", 2851 "typeAnnotation": { 2852 "type": "TSTypeLiteral", 2853 "members": [ 2854 { 2855 "type": "TSPropertySignature", 2856 "computed": false, 2857 "optional": false, 2858 "readonly": false, 2859 "key": { 2860 "type": "Identifier", 2861 "name": "a", 2862 "decorators": [], 2863 "loc": { 2864 "start": { 2865 "line": 63, 2866 "column": 27 2867 }, 2868 "end": { 2869 "line": 63, 2870 "column": 28 2871 } 2872 } 2873 }, 2874 "typeAnnotation": { 2875 "type": "TSNumberKeyword", 2876 "loc": { 2877 "start": { 2878 "line": 63, 2879 "column": 30 2880 }, 2881 "end": { 2882 "line": 63, 2883 "column": 36 2884 } 2885 } 2886 }, 2887 "loc": { 2888 "start": { 2889 "line": 63, 2890 "column": 27 2891 }, 2892 "end": { 2893 "line": 63, 2894 "column": 37 2895 } 2896 } 2897 }, 2898 { 2899 "type": "TSPropertySignature", 2900 "computed": false, 2901 "optional": false, 2902 "readonly": false, 2903 "key": { 2904 "type": "Identifier", 2905 "name": "b", 2906 "decorators": [], 2907 "loc": { 2908 "start": { 2909 "line": 63, 2910 "column": 38 2911 }, 2912 "end": { 2913 "line": 63, 2914 "column": 39 2915 } 2916 } 2917 }, 2918 "typeAnnotation": { 2919 "type": "TSStringKeyword", 2920 "loc": { 2921 "start": { 2922 "line": 63, 2923 "column": 41 2924 }, 2925 "end": { 2926 "line": 63, 2927 "column": 47 2928 } 2929 } 2930 }, 2931 "loc": { 2932 "start": { 2933 "line": 63, 2934 "column": 38 2935 }, 2936 "end": { 2937 "line": 63, 2938 "column": 49 2939 } 2940 } 2941 } 2942 ], 2943 "loc": { 2944 "start": { 2945 "line": 63, 2946 "column": 25 2947 }, 2948 "end": { 2949 "line": 63, 2950 "column": 49 2951 } 2952 } 2953 }, 2954 "decorators": [], 2955 "loc": { 2956 "start": { 2957 "line": 63, 2958 "column": 22 2959 }, 2960 "end": { 2961 "line": 63, 2962 "column": 23 2963 } 2964 } 2965 } 2966 ], 2967 "returnType": { 2968 "type": "TSVoidKeyword", 2969 "loc": { 2970 "start": { 2971 "line": 63, 2972 "column": 52 2973 }, 2974 "end": { 2975 "line": 63, 2976 "column": 56 2977 } 2978 } 2979 }, 2980 "loc": { 2981 "start": { 2982 "line": 63, 2983 "column": 5 2984 }, 2985 "end": { 2986 "line": 63, 2987 "column": 57 2988 } 2989 } 2990 } 2991 ], 2992 "loc": { 2993 "start": { 2994 "line": 59, 2995 "column": 22 2996 }, 2997 "end": { 2998 "line": 64, 2999 "column": 2 3000 } 3001 } 3002 }, 3003 "id": { 3004 "type": "Identifier", 3005 "name": "interface5", 3006 "decorators": [], 3007 "loc": { 3008 "start": { 3009 "line": 59, 3010 "column": 11 3011 }, 3012 "end": { 3013 "line": 59, 3014 "column": 21 3015 } 3016 } 3017 }, 3018 "extends": [], 3019 "loc": { 3020 "start": { 3021 "line": 59, 3022 "column": 1 3023 }, 3024 "end": { 3025 "line": 64, 3026 "column": 2 3027 } 3028 } 3029 }, 3030 { 3031 "type": "TSInterfaceDeclaration", 3032 "body": { 3033 "type": "TSInterfaceBody", 3034 "body": [ 3035 { 3036 "type": "TSCallSignatureDeclaration", 3037 "params": [ 3038 { 3039 "type": "Identifier", 3040 "name": "a", 3041 "typeAnnotation": { 3042 "type": "TSNumberKeyword", 3043 "loc": { 3044 "start": { 3045 "line": 67, 3046 "column": 9 3047 }, 3048 "end": { 3049 "line": 67, 3050 "column": 15 3051 } 3052 } 3053 }, 3054 "decorators": [], 3055 "loc": { 3056 "start": { 3057 "line": 67, 3058 "column": 6 3059 }, 3060 "end": { 3061 "line": 67, 3062 "column": 7 3063 } 3064 } 3065 }, 3066 { 3067 "type": "Identifier", 3068 "name": "b", 3069 "typeAnnotation": { 3070 "type": "TSStringKeyword", 3071 "loc": { 3072 "start": { 3073 "line": 67, 3074 "column": 20 3075 }, 3076 "end": { 3077 "line": 67, 3078 "column": 26 3079 } 3080 } 3081 }, 3082 "decorators": [], 3083 "loc": { 3084 "start": { 3085 "line": 67, 3086 "column": 17 3087 }, 3088 "end": { 3089 "line": 67, 3090 "column": 18 3091 } 3092 } 3093 } 3094 ], 3095 "returnType": { 3096 "type": "TSNumberKeyword", 3097 "loc": { 3098 "start": { 3099 "line": 67, 3100 "column": 29 3101 }, 3102 "end": { 3103 "line": 67, 3104 "column": 35 3105 } 3106 } 3107 }, 3108 "loc": { 3109 "start": { 3110 "line": 67, 3111 "column": 5 3112 }, 3113 "end": { 3114 "line": 67, 3115 "column": 36 3116 } 3117 } 3118 }, 3119 { 3120 "type": "TSCallSignatureDeclaration", 3121 "params": [ 3122 { 3123 "type": "Identifier", 3124 "name": "a", 3125 "typeAnnotation": { 3126 "type": "TSNumberKeyword", 3127 "loc": { 3128 "start": { 3129 "line": 68, 3130 "column": 9 3131 }, 3132 "end": { 3133 "line": 68, 3134 "column": 15 3135 } 3136 } 3137 }, 3138 "decorators": [], 3139 "loc": { 3140 "start": { 3141 "line": 68, 3142 "column": 6 3143 }, 3144 "end": { 3145 "line": 68, 3146 "column": 7 3147 } 3148 } 3149 }, 3150 { 3151 "type": "Identifier", 3152 "name": "b", 3153 "typeAnnotation": { 3154 "type": "TSStringKeyword", 3155 "loc": { 3156 "start": { 3157 "line": 68, 3158 "column": 20 3159 }, 3160 "end": { 3161 "line": 68, 3162 "column": 26 3163 } 3164 } 3165 }, 3166 "decorators": [], 3167 "loc": { 3168 "start": { 3169 "line": 68, 3170 "column": 17 3171 }, 3172 "end": { 3173 "line": 68, 3174 "column": 18 3175 } 3176 } 3177 } 3178 ], 3179 "returnType": { 3180 "type": "TSStringKeyword", 3181 "loc": { 3182 "start": { 3183 "line": 68, 3184 "column": 29 3185 }, 3186 "end": { 3187 "line": 68, 3188 "column": 35 3189 } 3190 } 3191 }, 3192 "loc": { 3193 "start": { 3194 "line": 68, 3195 "column": 5 3196 }, 3197 "end": { 3198 "line": 68, 3199 "column": 36 3200 } 3201 } 3202 }, 3203 { 3204 "type": "TSConstructSignatureDeclaration", 3205 "params": [ 3206 { 3207 "type": "Identifier", 3208 "name": "a", 3209 "typeAnnotation": { 3210 "type": "TSArrayType", 3211 "elementType": { 3212 "type": "TSNumberKeyword", 3213 "loc": { 3214 "start": { 3215 "line": 69, 3216 "column": 12 3217 }, 3218 "end": { 3219 "line": 69, 3220 "column": 18 3221 } 3222 } 3223 }, 3224 "loc": { 3225 "start": { 3226 "line": 69, 3227 "column": 12 3228 }, 3229 "end": { 3230 "line": 69, 3231 "column": 20 3232 } 3233 } 3234 }, 3235 "decorators": [], 3236 "loc": { 3237 "start": { 3238 "line": 69, 3239 "column": 9 3240 }, 3241 "end": { 3242 "line": 69, 3243 "column": 10 3244 } 3245 } 3246 }, 3247 { 3248 "type": "Identifier", 3249 "name": "b", 3250 "typeAnnotation": { 3251 "type": "TSTypeLiteral", 3252 "members": [ 3253 { 3254 "type": "TSPropertySignature", 3255 "computed": false, 3256 "optional": false, 3257 "readonly": false, 3258 "key": { 3259 "type": "Identifier", 3260 "name": "a", 3261 "decorators": [], 3262 "loc": { 3263 "start": { 3264 "line": 69, 3265 "column": 27 3266 }, 3267 "end": { 3268 "line": 69, 3269 "column": 28 3270 } 3271 } 3272 }, 3273 "typeAnnotation": { 3274 "type": "TSNumberKeyword", 3275 "loc": { 3276 "start": { 3277 "line": 69, 3278 "column": 30 3279 }, 3280 "end": { 3281 "line": 69, 3282 "column": 36 3283 } 3284 } 3285 }, 3286 "loc": { 3287 "start": { 3288 "line": 69, 3289 "column": 27 3290 }, 3291 "end": { 3292 "line": 69, 3293 "column": 37 3294 } 3295 } 3296 }, 3297 { 3298 "type": "TSPropertySignature", 3299 "computed": false, 3300 "optional": false, 3301 "readonly": false, 3302 "key": { 3303 "type": "Identifier", 3304 "name": "b", 3305 "decorators": [], 3306 "loc": { 3307 "start": { 3308 "line": 69, 3309 "column": 38 3310 }, 3311 "end": { 3312 "line": 69, 3313 "column": 39 3314 } 3315 } 3316 }, 3317 "typeAnnotation": { 3318 "type": "TSStringKeyword", 3319 "loc": { 3320 "start": { 3321 "line": 69, 3322 "column": 41 3323 }, 3324 "end": { 3325 "line": 69, 3326 "column": 47 3327 } 3328 } 3329 }, 3330 "loc": { 3331 "start": { 3332 "line": 69, 3333 "column": 38 3334 }, 3335 "end": { 3336 "line": 69, 3337 "column": 49 3338 } 3339 } 3340 } 3341 ], 3342 "loc": { 3343 "start": { 3344 "line": 69, 3345 "column": 25 3346 }, 3347 "end": { 3348 "line": 69, 3349 "column": 49 3350 } 3351 } 3352 }, 3353 "decorators": [], 3354 "loc": { 3355 "start": { 3356 "line": 69, 3357 "column": 22 3358 }, 3359 "end": { 3360 "line": 69, 3361 "column": 23 3362 } 3363 } 3364 } 3365 ], 3366 "returnType": { 3367 "type": "TSVoidKeyword", 3368 "loc": { 3369 "start": { 3370 "line": 69, 3371 "column": 52 3372 }, 3373 "end": { 3374 "line": 69, 3375 "column": 56 3376 } 3377 } 3378 }, 3379 "loc": { 3380 "start": { 3381 "line": 69, 3382 "column": 5 3383 }, 3384 "end": { 3385 "line": 69, 3386 "column": 57 3387 } 3388 } 3389 }, 3390 { 3391 "type": "TSConstructSignatureDeclaration", 3392 "params": [ 3393 { 3394 "type": "Identifier", 3395 "name": "a", 3396 "typeAnnotation": { 3397 "type": "TSArrayType", 3398 "elementType": { 3399 "type": "TSNumberKeyword", 3400 "loc": { 3401 "start": { 3402 "line": 70, 3403 "column": 12 3404 }, 3405 "end": { 3406 "line": 70, 3407 "column": 18 3408 } 3409 } 3410 }, 3411 "loc": { 3412 "start": { 3413 "line": 70, 3414 "column": 12 3415 }, 3416 "end": { 3417 "line": 70, 3418 "column": 20 3419 } 3420 } 3421 }, 3422 "decorators": [], 3423 "loc": { 3424 "start": { 3425 "line": 70, 3426 "column": 9 3427 }, 3428 "end": { 3429 "line": 70, 3430 "column": 10 3431 } 3432 } 3433 }, 3434 { 3435 "type": "Identifier", 3436 "name": "b", 3437 "typeAnnotation": { 3438 "type": "TSTypeLiteral", 3439 "members": [ 3440 { 3441 "type": "TSPropertySignature", 3442 "computed": false, 3443 "optional": false, 3444 "readonly": false, 3445 "key": { 3446 "type": "Identifier", 3447 "name": "a", 3448 "decorators": [], 3449 "loc": { 3450 "start": { 3451 "line": 70, 3452 "column": 27 3453 }, 3454 "end": { 3455 "line": 70, 3456 "column": 28 3457 } 3458 } 3459 }, 3460 "typeAnnotation": { 3461 "type": "TSNumberKeyword", 3462 "loc": { 3463 "start": { 3464 "line": 70, 3465 "column": 30 3466 }, 3467 "end": { 3468 "line": 70, 3469 "column": 36 3470 } 3471 } 3472 }, 3473 "loc": { 3474 "start": { 3475 "line": 70, 3476 "column": 27 3477 }, 3478 "end": { 3479 "line": 70, 3480 "column": 37 3481 } 3482 } 3483 }, 3484 { 3485 "type": "TSPropertySignature", 3486 "computed": false, 3487 "optional": false, 3488 "readonly": false, 3489 "key": { 3490 "type": "Identifier", 3491 "name": "b", 3492 "decorators": [], 3493 "loc": { 3494 "start": { 3495 "line": 70, 3496 "column": 38 3497 }, 3498 "end": { 3499 "line": 70, 3500 "column": 39 3501 } 3502 } 3503 }, 3504 "typeAnnotation": { 3505 "type": "TSStringKeyword", 3506 "loc": { 3507 "start": { 3508 "line": 70, 3509 "column": 41 3510 }, 3511 "end": { 3512 "line": 70, 3513 "column": 47 3514 } 3515 } 3516 }, 3517 "loc": { 3518 "start": { 3519 "line": 70, 3520 "column": 38 3521 }, 3522 "end": { 3523 "line": 70, 3524 "column": 49 3525 } 3526 } 3527 } 3528 ], 3529 "loc": { 3530 "start": { 3531 "line": 70, 3532 "column": 25 3533 }, 3534 "end": { 3535 "line": 70, 3536 "column": 49 3537 } 3538 } 3539 }, 3540 "decorators": [], 3541 "loc": { 3542 "start": { 3543 "line": 70, 3544 "column": 22 3545 }, 3546 "end": { 3547 "line": 70, 3548 "column": 23 3549 } 3550 } 3551 } 3552 ], 3553 "returnType": { 3554 "type": "TSBooleanKeyword", 3555 "loc": { 3556 "start": { 3557 "line": 70, 3558 "column": 52 3559 }, 3560 "end": { 3561 "line": 70, 3562 "column": 59 3563 } 3564 } 3565 }, 3566 "loc": { 3567 "start": { 3568 "line": 70, 3569 "column": 5 3570 }, 3571 "end": { 3572 "line": 70, 3573 "column": 60 3574 } 3575 } 3576 } 3577 ], 3578 "loc": { 3579 "start": { 3580 "line": 66, 3581 "column": 22 3582 }, 3583 "end": { 3584 "line": 71, 3585 "column": 2 3586 } 3587 } 3588 }, 3589 "id": { 3590 "type": "Identifier", 3591 "name": "interface6", 3592 "decorators": [], 3593 "loc": { 3594 "start": { 3595 "line": 66, 3596 "column": 11 3597 }, 3598 "end": { 3599 "line": 66, 3600 "column": 21 3601 } 3602 } 3603 }, 3604 "extends": [], 3605 "loc": { 3606 "start": { 3607 "line": 66, 3608 "column": 1 3609 }, 3610 "end": { 3611 "line": 71, 3612 "column": 2 3613 } 3614 } 3615 }, 3616 { 3617 "type": "VariableDeclaration", 3618 "declarations": [ 3619 { 3620 "type": "VariableDeclarator", 3621 "id": { 3622 "type": "Identifier", 3623 "name": "i", 3624 "typeAnnotation": { 3625 "type": "TSTypeReference", 3626 "typeName": { 3627 "type": "Identifier", 3628 "name": "interface5", 3629 "decorators": [], 3630 "loc": { 3631 "start": { 3632 "line": 73, 3633 "column": 8 3634 }, 3635 "end": { 3636 "line": 73, 3637 "column": 18 3638 } 3639 } 3640 }, 3641 "loc": { 3642 "start": { 3643 "line": 73, 3644 "column": 8 3645 }, 3646 "end": { 3647 "line": 73, 3648 "column": 18 3649 } 3650 } 3651 }, 3652 "decorators": [], 3653 "loc": { 3654 "start": { 3655 "line": 73, 3656 "column": 5 3657 }, 3658 "end": { 3659 "line": 73, 3660 "column": 6 3661 } 3662 } 3663 }, 3664 "init": null, 3665 "loc": { 3666 "start": { 3667 "line": 73, 3668 "column": 5 3669 }, 3670 "end": { 3671 "line": 73, 3672 "column": 6 3673 } 3674 } 3675 } 3676 ], 3677 "kind": "var", 3678 "loc": { 3679 "start": { 3680 "line": 73, 3681 "column": 1 3682 }, 3683 "end": { 3684 "line": 73, 3685 "column": 19 3686 } 3687 } 3688 }, 3689 { 3690 "type": "VariableDeclaration", 3691 "declarations": [ 3692 { 3693 "type": "VariableDeclarator", 3694 "id": { 3695 "type": "Identifier", 3696 "name": "i", 3697 "typeAnnotation": { 3698 "type": "TSTypeReference", 3699 "typeName": { 3700 "type": "Identifier", 3701 "name": "interface6", 3702 "decorators": [], 3703 "loc": { 3704 "start": { 3705 "line": 74, 3706 "column": 8 3707 }, 3708 "end": { 3709 "line": 74, 3710 "column": 18 3711 } 3712 } 3713 }, 3714 "loc": { 3715 "start": { 3716 "line": 74, 3717 "column": 8 3718 }, 3719 "end": { 3720 "line": 74, 3721 "column": 18 3722 } 3723 } 3724 }, 3725 "decorators": [], 3726 "loc": { 3727 "start": { 3728 "line": 74, 3729 "column": 5 3730 }, 3731 "end": { 3732 "line": 74, 3733 "column": 6 3734 } 3735 } 3736 }, 3737 "init": null, 3738 "loc": { 3739 "start": { 3740 "line": 74, 3741 "column": 5 3742 }, 3743 "end": { 3744 "line": 74, 3745 "column": 6 3746 } 3747 } 3748 } 3749 ], 3750 "kind": "var", 3751 "loc": { 3752 "start": { 3753 "line": 74, 3754 "column": 1 3755 }, 3756 "end": { 3757 "line": 74, 3758 "column": 19 3759 } 3760 } 3761 }, 3762 { 3763 "type": "VariableDeclaration", 3764 "declarations": [ 3765 { 3766 "type": "VariableDeclarator", 3767 "id": { 3768 "type": "Identifier", 3769 "name": "j", 3770 "decorators": [], 3771 "loc": { 3772 "start": { 3773 "line": 76, 3774 "column": 5 3775 }, 3776 "end": { 3777 "line": 76, 3778 "column": 6 3779 } 3780 } 3781 }, 3782 "init": { 3783 "type": "FunctionExpression", 3784 "function": { 3785 "type": "ScriptFunction", 3786 "id": null, 3787 "generator": false, 3788 "async": false, 3789 "expression": false, 3790 "params": [ 3791 { 3792 "type": "Identifier", 3793 "name": "a", 3794 "typeAnnotation": { 3795 "type": "TSTypeReference", 3796 "typeName": { 3797 "type": "Identifier", 3798 "name": "interface6", 3799 "decorators": [], 3800 "loc": { 3801 "start": { 3802 "line": 76, 3803 "column": 22 3804 }, 3805 "end": { 3806 "line": 76, 3807 "column": 32 3808 } 3809 } 3810 }, 3811 "loc": { 3812 "start": { 3813 "line": 76, 3814 "column": 22 3815 }, 3816 "end": { 3817 "line": 76, 3818 "column": 32 3819 } 3820 } 3821 }, 3822 "decorators": [], 3823 "loc": { 3824 "start": { 3825 "line": 76, 3826 "column": 19 3827 }, 3828 "end": { 3829 "line": 76, 3830 "column": 20 3831 } 3832 } 3833 }, 3834 { 3835 "type": "Identifier", 3836 "name": "b", 3837 "typeAnnotation": { 3838 "type": "TSArrayType", 3839 "elementType": { 3840 "type": "TSNumberKeyword", 3841 "loc": { 3842 "start": { 3843 "line": 76, 3844 "column": 37 3845 }, 3846 "end": { 3847 "line": 76, 3848 "column": 43 3849 } 3850 } 3851 }, 3852 "loc": { 3853 "start": { 3854 "line": 76, 3855 "column": 37 3856 }, 3857 "end": { 3858 "line": 76, 3859 "column": 45 3860 } 3861 } 3862 }, 3863 "decorators": [], 3864 "loc": { 3865 "start": { 3866 "line": 76, 3867 "column": 34 3868 }, 3869 "end": { 3870 "line": 76, 3871 "column": 35 3872 } 3873 } 3874 } 3875 ], 3876 "returnType": { 3877 "type": "TSNumberKeyword", 3878 "loc": { 3879 "start": { 3880 "line": 76, 3881 "column": 48 3882 }, 3883 "end": { 3884 "line": 76, 3885 "column": 54 3886 } 3887 } 3888 }, 3889 "body": { 3890 "type": "BlockStatement", 3891 "statements": [ 3892 { 3893 "type": "ReturnStatement", 3894 "argument": { 3895 "type": "NumberLiteral", 3896 "value": 123, 3897 "loc": { 3898 "start": { 3899 "line": 77, 3900 "column": 12 3901 }, 3902 "end": { 3903 "line": 77, 3904 "column": 15 3905 } 3906 } 3907 }, 3908 "loc": { 3909 "start": { 3910 "line": 77, 3911 "column": 5 3912 }, 3913 "end": { 3914 "line": 77, 3915 "column": 16 3916 } 3917 } 3918 } 3919 ], 3920 "loc": { 3921 "start": { 3922 "line": 76, 3923 "column": 55 3924 }, 3925 "end": { 3926 "line": 78, 3927 "column": 2 3928 } 3929 } 3930 }, 3931 "loc": { 3932 "start": { 3933 "line": 76, 3934 "column": 9 3935 }, 3936 "end": { 3937 "line": 78, 3938 "column": 2 3939 } 3940 } 3941 }, 3942 "loc": { 3943 "start": { 3944 "line": 76, 3945 "column": 9 3946 }, 3947 "end": { 3948 "line": 78, 3949 "column": 2 3950 } 3951 } 3952 }, 3953 "loc": { 3954 "start": { 3955 "line": 76, 3956 "column": 5 3957 }, 3958 "end": { 3959 "line": 78, 3960 "column": 2 3961 } 3962 } 3963 } 3964 ], 3965 "kind": "var", 3966 "loc": { 3967 "start": { 3968 "line": 76, 3969 "column": 1 3970 }, 3971 "end": { 3972 "line": 78, 3973 "column": 2 3974 } 3975 } 3976 }, 3977 { 3978 "type": "VariableDeclaration", 3979 "declarations": [ 3980 { 3981 "type": "VariableDeclarator", 3982 "id": { 3983 "type": "Identifier", 3984 "name": "j", 3985 "typeAnnotation": { 3986 "type": "TSFunctionType", 3987 "params": [ 3988 { 3989 "type": "Identifier", 3990 "name": "a", 3991 "typeAnnotation": { 3992 "type": "TSTypeReference", 3993 "typeName": { 3994 "type": "Identifier", 3995 "name": "interface6", 3996 "decorators": [], 3997 "loc": { 3998 "start": { 3999 "line": 79, 4000 "column": 12 4001 }, 4002 "end": { 4003 "line": 79, 4004 "column": 22 4005 } 4006 } 4007 }, 4008 "loc": { 4009 "start": { 4010 "line": 79, 4011 "column": 12 4012 }, 4013 "end": { 4014 "line": 79, 4015 "column": 22 4016 } 4017 } 4018 }, 4019 "decorators": [], 4020 "loc": { 4021 "start": { 4022 "line": 79, 4023 "column": 9 4024 }, 4025 "end": { 4026 "line": 79, 4027 "column": 10 4028 } 4029 } 4030 }, 4031 { 4032 "type": "Identifier", 4033 "name": "b", 4034 "typeAnnotation": { 4035 "type": "TSArrayType", 4036 "elementType": { 4037 "type": "TSNumberKeyword", 4038 "loc": { 4039 "start": { 4040 "line": 79, 4041 "column": 27 4042 }, 4043 "end": { 4044 "line": 79, 4045 "column": 33 4046 } 4047 } 4048 }, 4049 "loc": { 4050 "start": { 4051 "line": 79, 4052 "column": 27 4053 }, 4054 "end": { 4055 "line": 79, 4056 "column": 35 4057 } 4058 } 4059 }, 4060 "decorators": [], 4061 "loc": { 4062 "start": { 4063 "line": 79, 4064 "column": 24 4065 }, 4066 "end": { 4067 "line": 79, 4068 "column": 25 4069 } 4070 } 4071 } 4072 ], 4073 "returnType": { 4074 "type": "TSNumberKeyword", 4075 "loc": { 4076 "start": { 4077 "line": 79, 4078 "column": 40 4079 }, 4080 "end": { 4081 "line": 79, 4082 "column": 46 4083 } 4084 } 4085 }, 4086 "loc": { 4087 "start": { 4088 "line": 79, 4089 "column": 8 4090 }, 4091 "end": { 4092 "line": 79, 4093 "column": 46 4094 } 4095 } 4096 }, 4097 "decorators": [], 4098 "loc": { 4099 "start": { 4100 "line": 79, 4101 "column": 5 4102 }, 4103 "end": { 4104 "line": 79, 4105 "column": 6 4106 } 4107 } 4108 }, 4109 "init": null, 4110 "loc": { 4111 "start": { 4112 "line": 79, 4113 "column": 5 4114 }, 4115 "end": { 4116 "line": 79, 4117 "column": 6 4118 } 4119 } 4120 } 4121 ], 4122 "kind": "var", 4123 "loc": { 4124 "start": { 4125 "line": 79, 4126 "column": 1 4127 }, 4128 "end": { 4129 "line": 79, 4130 "column": 47 4131 } 4132 } 4133 }, 4134 { 4135 "type": "VariableDeclaration", 4136 "declarations": [ 4137 { 4138 "type": "VariableDeclarator", 4139 "id": { 4140 "type": "Identifier", 4141 "name": "obj", 4142 "decorators": [], 4143 "loc": { 4144 "start": { 4145 "line": 81, 4146 "column": 5 4147 }, 4148 "end": { 4149 "line": 81, 4150 "column": 8 4151 } 4152 } 4153 }, 4154 "init": { 4155 "type": "ObjectExpression", 4156 "properties": [ 4157 { 4158 "type": "Property", 4159 "method": false, 4160 "shorthand": false, 4161 "computed": false, 4162 "key": { 4163 "type": "Identifier", 4164 "name": "a", 4165 "decorators": [], 4166 "loc": { 4167 "start": { 4168 "line": 81, 4169 "column": 13 4170 }, 4171 "end": { 4172 "line": 81, 4173 "column": 14 4174 } 4175 } 4176 }, 4177 "value": { 4178 "type": "NumberLiteral", 4179 "value": 1, 4180 "loc": { 4181 "start": { 4182 "line": 81, 4183 "column": 16 4184 }, 4185 "end": { 4186 "line": 81, 4187 "column": 17 4188 } 4189 } 4190 }, 4191 "kind": "init", 4192 "loc": { 4193 "start": { 4194 "line": 81, 4195 "column": 13 4196 }, 4197 "end": { 4198 "line": 81, 4199 "column": 17 4200 } 4201 } 4202 }, 4203 { 4204 "type": "Property", 4205 "method": false, 4206 "shorthand": false, 4207 "computed": false, 4208 "key": { 4209 "type": "Identifier", 4210 "name": "b", 4211 "decorators": [], 4212 "loc": { 4213 "start": { 4214 "line": 81, 4215 "column": 19 4216 }, 4217 "end": { 4218 "line": 81, 4219 "column": 20 4220 } 4221 } 4222 }, 4223 "value": { 4224 "type": "NumberLiteral", 4225 "value": 2, 4226 "loc": { 4227 "start": { 4228 "line": 81, 4229 "column": 22 4230 }, 4231 "end": { 4232 "line": 81, 4233 "column": 23 4234 } 4235 } 4236 }, 4237 "kind": "init", 4238 "loc": { 4239 "start": { 4240 "line": 81, 4241 "column": 19 4242 }, 4243 "end": { 4244 "line": 81, 4245 "column": 23 4246 } 4247 } 4248 }, 4249 { 4250 "type": "Property", 4251 "method": false, 4252 "shorthand": false, 4253 "computed": false, 4254 "key": { 4255 "type": "Identifier", 4256 "name": "c", 4257 "decorators": [], 4258 "loc": { 4259 "start": { 4260 "line": 81, 4261 "column": 25 4262 }, 4263 "end": { 4264 "line": 81, 4265 "column": 26 4266 } 4267 } 4268 }, 4269 "value": { 4270 "type": "NumberLiteral", 4271 "value": 3, 4272 "loc": { 4273 "start": { 4274 "line": 81, 4275 "column": 28 4276 }, 4277 "end": { 4278 "line": 81, 4279 "column": 29 4280 } 4281 } 4282 }, 4283 "kind": "init", 4284 "loc": { 4285 "start": { 4286 "line": 81, 4287 "column": 25 4288 }, 4289 "end": { 4290 "line": 81, 4291 "column": 29 4292 } 4293 } 4294 } 4295 ], 4296 "loc": { 4297 "start": { 4298 "line": 81, 4299 "column": 11 4300 }, 4301 "end": { 4302 "line": 81, 4303 "column": 31 4304 } 4305 } 4306 }, 4307 "loc": { 4308 "start": { 4309 "line": 81, 4310 "column": 5 4311 }, 4312 "end": { 4313 "line": 81, 4314 "column": 31 4315 } 4316 } 4317 } 4318 ], 4319 "kind": "var", 4320 "loc": { 4321 "start": { 4322 "line": 81, 4323 "column": 1 4324 }, 4325 "end": { 4326 "line": 81, 4327 "column": 32 4328 } 4329 } 4330 }, 4331 { 4332 "type": "VariableDeclaration", 4333 "declarations": [ 4334 { 4335 "type": "VariableDeclarator", 4336 "id": { 4337 "type": "Identifier", 4338 "name": "k", 4339 "decorators": [], 4340 "loc": { 4341 "start": { 4342 "line": 82, 4343 "column": 5 4344 }, 4345 "end": { 4346 "line": 82, 4347 "column": 6 4348 } 4349 } 4350 }, 4351 "init": { 4352 "type": "ObjectExpression", 4353 "properties": [ 4354 { 4355 "type": "Property", 4356 "method": false, 4357 "shorthand": false, 4358 "computed": false, 4359 "key": { 4360 "type": "Identifier", 4361 "name": "d", 4362 "decorators": [], 4363 "loc": { 4364 "start": { 4365 "line": 82, 4366 "column": 11 4367 }, 4368 "end": { 4369 "line": 82, 4370 "column": 12 4371 } 4372 } 4373 }, 4374 "value": { 4375 "type": "StringLiteral", 4376 "value": "foo", 4377 "loc": { 4378 "start": { 4379 "line": 82, 4380 "column": 14 4381 }, 4382 "end": { 4383 "line": 82, 4384 "column": 19 4385 } 4386 } 4387 }, 4388 "kind": "init", 4389 "loc": { 4390 "start": { 4391 "line": 82, 4392 "column": 11 4393 }, 4394 "end": { 4395 "line": 82, 4396 "column": 19 4397 } 4398 } 4399 }, 4400 { 4401 "type": "Property", 4402 "method": false, 4403 "shorthand": false, 4404 "computed": false, 4405 "key": { 4406 "type": "Identifier", 4407 "name": "e", 4408 "decorators": [], 4409 "loc": { 4410 "start": { 4411 "line": 82, 4412 "column": 21 4413 }, 4414 "end": { 4415 "line": 82, 4416 "column": 22 4417 } 4418 } 4419 }, 4420 "value": { 4421 "type": "StringLiteral", 4422 "value": "bar", 4423 "loc": { 4424 "start": { 4425 "line": 82, 4426 "column": 24 4427 }, 4428 "end": { 4429 "line": 82, 4430 "column": 29 4431 } 4432 } 4433 }, 4434 "kind": "init", 4435 "loc": { 4436 "start": { 4437 "line": 82, 4438 "column": 21 4439 }, 4440 "end": { 4441 "line": 82, 4442 "column": 29 4443 } 4444 } 4445 }, 4446 { 4447 "type": "SpreadElement", 4448 "argument": { 4449 "type": "Identifier", 4450 "name": "obj", 4451 "decorators": [], 4452 "loc": { 4453 "start": { 4454 "line": 82, 4455 "column": 34 4456 }, 4457 "end": { 4458 "line": 82, 4459 "column": 37 4460 } 4461 } 4462 }, 4463 "loc": { 4464 "start": { 4465 "line": 82, 4466 "column": 31 4467 }, 4468 "end": { 4469 "line": 82, 4470 "column": 37 4471 } 4472 } 4473 } 4474 ], 4475 "loc": { 4476 "start": { 4477 "line": 82, 4478 "column": 9 4479 }, 4480 "end": { 4481 "line": 82, 4482 "column": 39 4483 } 4484 } 4485 }, 4486 "loc": { 4487 "start": { 4488 "line": 82, 4489 "column": 5 4490 }, 4491 "end": { 4492 "line": 82, 4493 "column": 39 4494 } 4495 } 4496 } 4497 ], 4498 "kind": "var", 4499 "loc": { 4500 "start": { 4501 "line": 82, 4502 "column": 1 4503 }, 4504 "end": { 4505 "line": 82, 4506 "column": 40 4507 } 4508 } 4509 }, 4510 { 4511 "type": "VariableDeclaration", 4512 "declarations": [ 4513 { 4514 "type": "VariableDeclarator", 4515 "id": { 4516 "type": "Identifier", 4517 "name": "k", 4518 "typeAnnotation": { 4519 "type": "TSTypeLiteral", 4520 "members": [ 4521 { 4522 "type": "TSPropertySignature", 4523 "computed": false, 4524 "optional": false, 4525 "readonly": false, 4526 "key": { 4527 "type": "Identifier", 4528 "name": "a", 4529 "decorators": [], 4530 "loc": { 4531 "start": { 4532 "line": 83, 4533 "column": 10 4534 }, 4535 "end": { 4536 "line": 83, 4537 "column": 11 4538 } 4539 } 4540 }, 4541 "typeAnnotation": { 4542 "type": "TSNumberKeyword", 4543 "loc": { 4544 "start": { 4545 "line": 83, 4546 "column": 13 4547 }, 4548 "end": { 4549 "line": 83, 4550 "column": 19 4551 } 4552 } 4553 }, 4554 "loc": { 4555 "start": { 4556 "line": 83, 4557 "column": 10 4558 }, 4559 "end": { 4560 "line": 83, 4561 "column": 20 4562 } 4563 } 4564 }, 4565 { 4566 "type": "TSPropertySignature", 4567 "computed": false, 4568 "optional": false, 4569 "readonly": false, 4570 "key": { 4571 "type": "Identifier", 4572 "name": "b", 4573 "decorators": [], 4574 "loc": { 4575 "start": { 4576 "line": 83, 4577 "column": 21 4578 }, 4579 "end": { 4580 "line": 83, 4581 "column": 22 4582 } 4583 } 4584 }, 4585 "typeAnnotation": { 4586 "type": "TSNumberKeyword", 4587 "loc": { 4588 "start": { 4589 "line": 83, 4590 "column": 24 4591 }, 4592 "end": { 4593 "line": 83, 4594 "column": 30 4595 } 4596 } 4597 }, 4598 "loc": { 4599 "start": { 4600 "line": 83, 4601 "column": 21 4602 }, 4603 "end": { 4604 "line": 83, 4605 "column": 31 4606 } 4607 } 4608 }, 4609 { 4610 "type": "TSPropertySignature", 4611 "computed": false, 4612 "optional": false, 4613 "readonly": false, 4614 "key": { 4615 "type": "Identifier", 4616 "name": "c", 4617 "decorators": [], 4618 "loc": { 4619 "start": { 4620 "line": 83, 4621 "column": 32 4622 }, 4623 "end": { 4624 "line": 83, 4625 "column": 33 4626 } 4627 } 4628 }, 4629 "typeAnnotation": { 4630 "type": "TSNumberKeyword", 4631 "loc": { 4632 "start": { 4633 "line": 83, 4634 "column": 35 4635 }, 4636 "end": { 4637 "line": 83, 4638 "column": 41 4639 } 4640 } 4641 }, 4642 "loc": { 4643 "start": { 4644 "line": 83, 4645 "column": 32 4646 }, 4647 "end": { 4648 "line": 83, 4649 "column": 42 4650 } 4651 } 4652 }, 4653 { 4654 "type": "TSPropertySignature", 4655 "computed": false, 4656 "optional": false, 4657 "readonly": false, 4658 "key": { 4659 "type": "Identifier", 4660 "name": "d", 4661 "decorators": [], 4662 "loc": { 4663 "start": { 4664 "line": 83, 4665 "column": 43 4666 }, 4667 "end": { 4668 "line": 83, 4669 "column": 44 4670 } 4671 } 4672 }, 4673 "typeAnnotation": { 4674 "type": "TSStringKeyword", 4675 "loc": { 4676 "start": { 4677 "line": 83, 4678 "column": 46 4679 }, 4680 "end": { 4681 "line": 83, 4682 "column": 52 4683 } 4684 } 4685 }, 4686 "loc": { 4687 "start": { 4688 "line": 83, 4689 "column": 43 4690 }, 4691 "end": { 4692 "line": 83, 4693 "column": 53 4694 } 4695 } 4696 }, 4697 { 4698 "type": "TSPropertySignature", 4699 "computed": false, 4700 "optional": false, 4701 "readonly": false, 4702 "key": { 4703 "type": "Identifier", 4704 "name": "e", 4705 "decorators": [], 4706 "loc": { 4707 "start": { 4708 "line": 83, 4709 "column": 54 4710 }, 4711 "end": { 4712 "line": 83, 4713 "column": 55 4714 } 4715 } 4716 }, 4717 "typeAnnotation": { 4718 "type": "TSStringKeyword", 4719 "loc": { 4720 "start": { 4721 "line": 83, 4722 "column": 57 4723 }, 4724 "end": { 4725 "line": 83, 4726 "column": 63 4727 } 4728 } 4729 }, 4730 "loc": { 4731 "start": { 4732 "line": 83, 4733 "column": 54 4734 }, 4735 "end": { 4736 "line": 83, 4737 "column": 65 4738 } 4739 } 4740 } 4741 ], 4742 "loc": { 4743 "start": { 4744 "line": 83, 4745 "column": 8 4746 }, 4747 "end": { 4748 "line": 83, 4749 "column": 65 4750 } 4751 } 4752 }, 4753 "decorators": [], 4754 "loc": { 4755 "start": { 4756 "line": 83, 4757 "column": 5 4758 }, 4759 "end": { 4760 "line": 83, 4761 "column": 6 4762 } 4763 } 4764 }, 4765 "init": null, 4766 "loc": { 4767 "start": { 4768 "line": 83, 4769 "column": 5 4770 }, 4771 "end": { 4772 "line": 83, 4773 "column": 6 4774 } 4775 } 4776 } 4777 ], 4778 "kind": "var", 4779 "loc": { 4780 "start": { 4781 "line": 83, 4782 "column": 1 4783 }, 4784 "end": { 4785 "line": 83, 4786 "column": 66 4787 } 4788 } 4789 }, 4790 { 4791 "type": "FunctionDeclaration", 4792 "function": { 4793 "type": "ScriptFunction", 4794 "id": { 4795 "type": "Identifier", 4796 "name": "func1", 4797 "decorators": [], 4798 "loc": { 4799 "start": { 4800 "line": 85, 4801 "column": 10 4802 }, 4803 "end": { 4804 "line": 85, 4805 "column": 15 4806 } 4807 } 4808 }, 4809 "generator": false, 4810 "async": false, 4811 "expression": false, 4812 "params": [ 4813 { 4814 "type": "Identifier", 4815 "name": "a", 4816 "typeAnnotation": { 4817 "type": "TSNumberKeyword", 4818 "loc": { 4819 "start": { 4820 "line": 85, 4821 "column": 19 4822 }, 4823 "end": { 4824 "line": 85, 4825 "column": 25 4826 } 4827 } 4828 }, 4829 "decorators": [], 4830 "loc": { 4831 "start": { 4832 "line": 85, 4833 "column": 16 4834 }, 4835 "end": { 4836 "line": 85, 4837 "column": 17 4838 } 4839 } 4840 }, 4841 { 4842 "type": "Identifier", 4843 "name": "b", 4844 "typeAnnotation": { 4845 "type": "TSStringKeyword", 4846 "loc": { 4847 "start": { 4848 "line": 85, 4849 "column": 30 4850 }, 4851 "end": { 4852 "line": 85, 4853 "column": 36 4854 } 4855 } 4856 }, 4857 "decorators": [], 4858 "loc": { 4859 "start": { 4860 "line": 85, 4861 "column": 27 4862 }, 4863 "end": { 4864 "line": 85, 4865 "column": 28 4866 } 4867 } 4868 } 4869 ], 4870 "returnType": { 4871 "type": "TSLiteralType", 4872 "literal": { 4873 "type": "StringLiteral", 4874 "value": "foo", 4875 "loc": { 4876 "start": { 4877 "line": 85, 4878 "column": 39 4879 }, 4880 "end": { 4881 "line": 85, 4882 "column": 44 4883 } 4884 } 4885 }, 4886 "loc": { 4887 "start": { 4888 "line": 85, 4889 "column": 39 4890 }, 4891 "end": { 4892 "line": 85, 4893 "column": 44 4894 } 4895 } 4896 }, 4897 "body": { 4898 "type": "BlockStatement", 4899 "statements": [ 4900 { 4901 "type": "ReturnStatement", 4902 "argument": { 4903 "type": "StringLiteral", 4904 "value": "foo", 4905 "loc": { 4906 "start": { 4907 "line": 86, 4908 "column": 12 4909 }, 4910 "end": { 4911 "line": 86, 4912 "column": 17 4913 } 4914 } 4915 }, 4916 "loc": { 4917 "start": { 4918 "line": 86, 4919 "column": 5 4920 }, 4921 "end": { 4922 "line": 86, 4923 "column": 18 4924 } 4925 } 4926 } 4927 ], 4928 "loc": { 4929 "start": { 4930 "line": 85, 4931 "column": 45 4932 }, 4933 "end": { 4934 "line": 87, 4935 "column": 2 4936 } 4937 } 4938 }, 4939 "loc": { 4940 "start": { 4941 "line": 85, 4942 "column": 1 4943 }, 4944 "end": { 4945 "line": 87, 4946 "column": 2 4947 } 4948 } 4949 }, 4950 "loc": { 4951 "start": { 4952 "line": 85, 4953 "column": 1 4954 }, 4955 "end": { 4956 "line": 87, 4957 "column": 2 4958 } 4959 } 4960 }, 4961 { 4962 "type": "FunctionDeclaration", 4963 "function": { 4964 "type": "ScriptFunction", 4965 "id": { 4966 "type": "Identifier", 4967 "name": "func2", 4968 "decorators": [], 4969 "loc": { 4970 "start": { 4971 "line": 88, 4972 "column": 10 4973 }, 4974 "end": { 4975 "line": 88, 4976 "column": 15 4977 } 4978 } 4979 }, 4980 "generator": false, 4981 "async": false, 4982 "expression": false, 4983 "params": [ 4984 { 4985 "type": "Identifier", 4986 "name": "a", 4987 "typeAnnotation": { 4988 "type": "TSStringKeyword", 4989 "loc": { 4990 "start": { 4991 "line": 88, 4992 "column": 19 4993 }, 4994 "end": { 4995 "line": 88, 4996 "column": 25 4997 } 4998 } 4999 }, 5000 "decorators": [], 5001 "loc": { 5002 "start": { 5003 "line": 88, 5004 "column": 16 5005 }, 5006 "end": { 5007 "line": 88, 5008 "column": 17 5009 } 5010 } 5011 }, 5012 { 5013 "type": "Identifier", 5014 "name": "b", 5015 "typeAnnotation": { 5016 "type": "TSNumberKeyword", 5017 "loc": { 5018 "start": { 5019 "line": 88, 5020 "column": 30 5021 }, 5022 "end": { 5023 "line": 88, 5024 "column": 36 5025 } 5026 } 5027 }, 5028 "decorators": [], 5029 "loc": { 5030 "start": { 5031 "line": 88, 5032 "column": 27 5033 }, 5034 "end": { 5035 "line": 88, 5036 "column": 28 5037 } 5038 } 5039 } 5040 ], 5041 "returnType": { 5042 "type": "TSLiteralType", 5043 "literal": { 5044 "type": "BooleanLiteral", 5045 "value": true, 5046 "loc": { 5047 "start": { 5048 "line": 88, 5049 "column": 39 5050 }, 5051 "end": { 5052 "line": 88, 5053 "column": 43 5054 } 5055 } 5056 }, 5057 "loc": { 5058 "start": { 5059 "line": 88, 5060 "column": 39 5061 }, 5062 "end": { 5063 "line": 88, 5064 "column": 43 5065 } 5066 } 5067 }, 5068 "body": { 5069 "type": "BlockStatement", 5070 "statements": [ 5071 { 5072 "type": "ReturnStatement", 5073 "argument": { 5074 "type": "BooleanLiteral", 5075 "value": true, 5076 "loc": { 5077 "start": { 5078 "line": 89, 5079 "column": 12 5080 }, 5081 "end": { 5082 "line": 89, 5083 "column": 16 5084 } 5085 } 5086 }, 5087 "loc": { 5088 "start": { 5089 "line": 89, 5090 "column": 5 5091 }, 5092 "end": { 5093 "line": 89, 5094 "column": 17 5095 } 5096 } 5097 } 5098 ], 5099 "loc": { 5100 "start": { 5101 "line": 88, 5102 "column": 44 5103 }, 5104 "end": { 5105 "line": 90, 5106 "column": 2 5107 } 5108 } 5109 }, 5110 "loc": { 5111 "start": { 5112 "line": 88, 5113 "column": 1 5114 }, 5115 "end": { 5116 "line": 90, 5117 "column": 2 5118 } 5119 } 5120 }, 5121 "loc": { 5122 "start": { 5123 "line": 88, 5124 "column": 1 5125 }, 5126 "end": { 5127 "line": 90, 5128 "column": 2 5129 } 5130 } 5131 }, 5132 { 5133 "type": "VariableDeclaration", 5134 "declarations": [ 5135 { 5136 "type": "VariableDeclarator", 5137 "id": { 5138 "type": "Identifier", 5139 "name": "l", 5140 "typeAnnotation": { 5141 "type": "TSUnionType", 5142 "types": [ 5143 { 5144 "type": "TSTypeQuery", 5145 "exprName": { 5146 "type": "Identifier", 5147 "name": "func1", 5148 "decorators": [], 5149 "loc": { 5150 "start": { 5151 "line": 91, 5152 "column": 15 5153 }, 5154 "end": { 5155 "line": 91, 5156 "column": 20 5157 } 5158 } 5159 }, 5160 "loc": { 5161 "start": { 5162 "line": 91, 5163 "column": 8 5164 }, 5165 "end": { 5166 "line": 91, 5167 "column": 20 5168 } 5169 } 5170 }, 5171 { 5172 "type": "TSTypeQuery", 5173 "exprName": { 5174 "type": "Identifier", 5175 "name": "func2", 5176 "decorators": [], 5177 "loc": { 5178 "start": { 5179 "line": 91, 5180 "column": 30 5181 }, 5182 "end": { 5183 "line": 91, 5184 "column": 35 5185 } 5186 } 5187 }, 5188 "loc": { 5189 "start": { 5190 "line": 91, 5191 "column": 23 5192 }, 5193 "end": { 5194 "line": 91, 5195 "column": 35 5196 } 5197 } 5198 } 5199 ], 5200 "loc": { 5201 "start": { 5202 "line": 91, 5203 "column": 8 5204 }, 5205 "end": { 5206 "line": 91, 5207 "column": 35 5208 } 5209 } 5210 }, 5211 "decorators": [], 5212 "loc": { 5213 "start": { 5214 "line": 91, 5215 "column": 5 5216 }, 5217 "end": { 5218 "line": 91, 5219 "column": 6 5220 } 5221 } 5222 }, 5223 "init": null, 5224 "loc": { 5225 "start": { 5226 "line": 91, 5227 "column": 5 5228 }, 5229 "end": { 5230 "line": 91, 5231 "column": 6 5232 } 5233 } 5234 } 5235 ], 5236 "kind": "var", 5237 "loc": { 5238 "start": { 5239 "line": 91, 5240 "column": 1 5241 }, 5242 "end": { 5243 "line": 91, 5244 "column": 36 5245 } 5246 } 5247 }, 5248 { 5249 "type": "VariableDeclaration", 5250 "declarations": [ 5251 { 5252 "type": "VariableDeclarator", 5253 "id": { 5254 "type": "Identifier", 5255 "name": "l", 5256 "typeAnnotation": { 5257 "type": "TSUnionType", 5258 "types": [ 5259 { 5260 "type": "TSParenthesizedType", 5261 "typeAnnotation": { 5262 "type": "TSFunctionType", 5263 "params": [ 5264 { 5265 "type": "Identifier", 5266 "name": "a", 5267 "typeAnnotation": { 5268 "type": "TSNumberKeyword", 5269 "loc": { 5270 "start": { 5271 "line": 92, 5272 "column": 13 5273 }, 5274 "end": { 5275 "line": 92, 5276 "column": 19 5277 } 5278 } 5279 }, 5280 "decorators": [], 5281 "loc": { 5282 "start": { 5283 "line": 92, 5284 "column": 10 5285 }, 5286 "end": { 5287 "line": 92, 5288 "column": 11 5289 } 5290 } 5291 }, 5292 { 5293 "type": "Identifier", 5294 "name": "b", 5295 "typeAnnotation": { 5296 "type": "TSStringKeyword", 5297 "loc": { 5298 "start": { 5299 "line": 92, 5300 "column": 24 5301 }, 5302 "end": { 5303 "line": 92, 5304 "column": 30 5305 } 5306 } 5307 }, 5308 "decorators": [], 5309 "loc": { 5310 "start": { 5311 "line": 92, 5312 "column": 21 5313 }, 5314 "end": { 5315 "line": 92, 5316 "column": 22 5317 } 5318 } 5319 } 5320 ], 5321 "returnType": { 5322 "type": "TSLiteralType", 5323 "literal": { 5324 "type": "StringLiteral", 5325 "value": "foo", 5326 "loc": { 5327 "start": { 5328 "line": 92, 5329 "column": 35 5330 }, 5331 "end": { 5332 "line": 92, 5333 "column": 40 5334 } 5335 } 5336 }, 5337 "loc": { 5338 "start": { 5339 "line": 92, 5340 "column": 35 5341 }, 5342 "end": { 5343 "line": 92, 5344 "column": 40 5345 } 5346 } 5347 }, 5348 "loc": { 5349 "start": { 5350 "line": 92, 5351 "column": 9 5352 }, 5353 "end": { 5354 "line": 92, 5355 "column": 40 5356 } 5357 } 5358 }, 5359 "loc": { 5360 "start": { 5361 "line": 92, 5362 "column": 8 5363 }, 5364 "end": { 5365 "line": 92, 5366 "column": 41 5367 } 5368 } 5369 }, 5370 { 5371 "type": "TSParenthesizedType", 5372 "typeAnnotation": { 5373 "type": "TSFunctionType", 5374 "params": [ 5375 { 5376 "type": "Identifier", 5377 "name": "a", 5378 "typeAnnotation": { 5379 "type": "TSStringKeyword", 5380 "loc": { 5381 "start": { 5382 "line": 92, 5383 "column": 49 5384 }, 5385 "end": { 5386 "line": 92, 5387 "column": 55 5388 } 5389 } 5390 }, 5391 "decorators": [], 5392 "loc": { 5393 "start": { 5394 "line": 92, 5395 "column": 46 5396 }, 5397 "end": { 5398 "line": 92, 5399 "column": 47 5400 } 5401 } 5402 }, 5403 { 5404 "type": "Identifier", 5405 "name": "b", 5406 "typeAnnotation": { 5407 "type": "TSNumberKeyword", 5408 "loc": { 5409 "start": { 5410 "line": 92, 5411 "column": 60 5412 }, 5413 "end": { 5414 "line": 92, 5415 "column": 66 5416 } 5417 } 5418 }, 5419 "decorators": [], 5420 "loc": { 5421 "start": { 5422 "line": 92, 5423 "column": 57 5424 }, 5425 "end": { 5426 "line": 92, 5427 "column": 58 5428 } 5429 } 5430 } 5431 ], 5432 "returnType": { 5433 "type": "TSLiteralType", 5434 "literal": { 5435 "type": "BooleanLiteral", 5436 "value": true, 5437 "loc": { 5438 "start": { 5439 "line": 92, 5440 "column": 71 5441 }, 5442 "end": { 5443 "line": 92, 5444 "column": 75 5445 } 5446 } 5447 }, 5448 "loc": { 5449 "start": { 5450 "line": 92, 5451 "column": 71 5452 }, 5453 "end": { 5454 "line": 92, 5455 "column": 75 5456 } 5457 } 5458 }, 5459 "loc": { 5460 "start": { 5461 "line": 92, 5462 "column": 45 5463 }, 5464 "end": { 5465 "line": 92, 5466 "column": 75 5467 } 5468 } 5469 }, 5470 "loc": { 5471 "start": { 5472 "line": 92, 5473 "column": 44 5474 }, 5475 "end": { 5476 "line": 92, 5477 "column": 76 5478 } 5479 } 5480 } 5481 ], 5482 "loc": { 5483 "start": { 5484 "line": 92, 5485 "column": 8 5486 }, 5487 "end": { 5488 "line": 92, 5489 "column": 76 5490 } 5491 } 5492 }, 5493 "decorators": [], 5494 "loc": { 5495 "start": { 5496 "line": 92, 5497 "column": 5 5498 }, 5499 "end": { 5500 "line": 92, 5501 "column": 6 5502 } 5503 } 5504 }, 5505 "init": null, 5506 "loc": { 5507 "start": { 5508 "line": 92, 5509 "column": 5 5510 }, 5511 "end": { 5512 "line": 92, 5513 "column": 6 5514 } 5515 } 5516 } 5517 ], 5518 "kind": "var", 5519 "loc": { 5520 "start": { 5521 "line": 92, 5522 "column": 1 5523 }, 5524 "end": { 5525 "line": 92, 5526 "column": 6 5527 } 5528 } 5529 }, 5530 { 5531 "type": "VariableDeclaration", 5532 "declarations": [ 5533 { 5534 "type": "VariableDeclarator", 5535 "id": { 5536 "type": "Identifier", 5537 "name": "m", 5538 "typeAnnotation": { 5539 "type": "TSTupleType", 5540 "elementTypes": [ 5541 { 5542 "type": "TSNamedTupleMember", 5543 "elementType": { 5544 "type": "TSNumberKeyword", 5545 "loc": { 5546 "start": { 5547 "line": 94, 5548 "column": 12 5549 }, 5550 "end": { 5551 "line": 94, 5552 "column": 18 5553 } 5554 } 5555 }, 5556 "label": { 5557 "type": "Identifier", 5558 "name": "a", 5559 "decorators": [], 5560 "loc": { 5561 "start": { 5562 "line": 94, 5563 "column": 9 5564 }, 5565 "end": { 5566 "line": 94, 5567 "column": 10 5568 } 5569 } 5570 }, 5571 "loc": { 5572 "start": { 5573 "line": 94, 5574 "column": 9 5575 }, 5576 "end": { 5577 "line": 94, 5578 "column": 19 5579 } 5580 } 5581 }, 5582 { 5583 "type": "TSNamedTupleMember", 5584 "elementType": { 5585 "type": "TSStringKeyword", 5586 "loc": { 5587 "start": { 5588 "line": 94, 5589 "column": 23 5590 }, 5591 "end": { 5592 "line": 94, 5593 "column": 29 5594 } 5595 } 5596 }, 5597 "label": { 5598 "type": "Identifier", 5599 "name": "b", 5600 "decorators": [], 5601 "loc": { 5602 "start": { 5603 "line": 94, 5604 "column": 20 5605 }, 5606 "end": { 5607 "line": 94, 5608 "column": 21 5609 } 5610 } 5611 }, 5612 "loc": { 5613 "start": { 5614 "line": 94, 5615 "column": 20 5616 }, 5617 "end": { 5618 "line": 94, 5619 "column": 30 5620 } 5621 } 5622 }, 5623 { 5624 "type": "TSNamedTupleMember", 5625 "elementType": { 5626 "type": "TSBooleanKeyword", 5627 "loc": { 5628 "start": { 5629 "line": 94, 5630 "column": 34 5631 }, 5632 "end": { 5633 "line": 94, 5634 "column": 41 5635 } 5636 } 5637 }, 5638 "label": { 5639 "type": "Identifier", 5640 "name": "c", 5641 "decorators": [], 5642 "loc": { 5643 "start": { 5644 "line": 94, 5645 "column": 31 5646 }, 5647 "end": { 5648 "line": 94, 5649 "column": 32 5650 } 5651 } 5652 }, 5653 "loc": { 5654 "start": { 5655 "line": 94, 5656 "column": 31 5657 }, 5658 "end": { 5659 "line": 94, 5660 "column": 42 5661 } 5662 } 5663 } 5664 ], 5665 "loc": { 5666 "start": { 5667 "line": 94, 5668 "column": 8 5669 }, 5670 "end": { 5671 "line": 94, 5672 "column": 42 5673 } 5674 } 5675 }, 5676 "decorators": [], 5677 "loc": { 5678 "start": { 5679 "line": 94, 5680 "column": 5 5681 }, 5682 "end": { 5683 "line": 94, 5684 "column": 6 5685 } 5686 } 5687 }, 5688 "init": null, 5689 "loc": { 5690 "start": { 5691 "line": 94, 5692 "column": 5 5693 }, 5694 "end": { 5695 "line": 94, 5696 "column": 6 5697 } 5698 } 5699 } 5700 ], 5701 "kind": "var", 5702 "loc": { 5703 "start": { 5704 "line": 94, 5705 "column": 1 5706 }, 5707 "end": { 5708 "line": 94, 5709 "column": 43 5710 } 5711 } 5712 }, 5713 { 5714 "type": "VariableDeclaration", 5715 "declarations": [ 5716 { 5717 "type": "VariableDeclarator", 5718 "id": { 5719 "type": "Identifier", 5720 "name": "m", 5721 "typeAnnotation": { 5722 "type": "TSTupleType", 5723 "elementTypes": [ 5724 { 5725 "type": "TSNumberKeyword", 5726 "loc": { 5727 "start": { 5728 "line": 95, 5729 "column": 9 5730 }, 5731 "end": { 5732 "line": 95, 5733 "column": 16 5734 } 5735 } 5736 }, 5737 { 5738 "type": "TSStringKeyword", 5739 "loc": { 5740 "start": { 5741 "line": 95, 5742 "column": 17 5743 }, 5744 "end": { 5745 "line": 95, 5746 "column": 24 5747 } 5748 } 5749 }, 5750 { 5751 "type": "TSBooleanKeyword", 5752 "loc": { 5753 "start": { 5754 "line": 95, 5755 "column": 25 5756 }, 5757 "end": { 5758 "line": 95, 5759 "column": 33 5760 } 5761 } 5762 } 5763 ], 5764 "loc": { 5765 "start": { 5766 "line": 95, 5767 "column": 8 5768 }, 5769 "end": { 5770 "line": 95, 5771 "column": 33 5772 } 5773 } 5774 }, 5775 "decorators": [], 5776 "loc": { 5777 "start": { 5778 "line": 95, 5779 "column": 5 5780 }, 5781 "end": { 5782 "line": 95, 5783 "column": 6 5784 } 5785 } 5786 }, 5787 "init": null, 5788 "loc": { 5789 "start": { 5790 "line": 95, 5791 "column": 5 5792 }, 5793 "end": { 5794 "line": 95, 5795 "column": 6 5796 } 5797 } 5798 } 5799 ], 5800 "kind": "var", 5801 "loc": { 5802 "start": { 5803 "line": 95, 5804 "column": 1 5805 }, 5806 "end": { 5807 "line": 95, 5808 "column": 34 5809 } 5810 } 5811 }, 5812 { 5813 "type": "VariableDeclaration", 5814 "declarations": [ 5815 { 5816 "type": "VariableDeclarator", 5817 "id": { 5818 "type": "Identifier", 5819 "name": "n", 5820 "typeAnnotation": { 5821 "type": "TSUnionType", 5822 "types": [ 5823 { 5824 "type": "TSArrayType", 5825 "elementType": { 5826 "type": "TSNumberKeyword", 5827 "loc": { 5828 "start": { 5829 "line": 97, 5830 "column": 8 5831 }, 5832 "end": { 5833 "line": 97, 5834 "column": 14 5835 } 5836 } 5837 }, 5838 "loc": { 5839 "start": { 5840 "line": 97, 5841 "column": 8 5842 }, 5843 "end": { 5844 "line": 97, 5845 "column": 16 5846 } 5847 } 5848 }, 5849 { 5850 "type": "TSTupleType", 5851 "elementTypes": [ 5852 { 5853 "type": "TSLiteralType", 5854 "literal": { 5855 "type": "NumberLiteral", 5856 "value": 1, 5857 "loc": { 5858 "start": { 5859 "line": 97, 5860 "column": 20 5861 }, 5862 "end": { 5863 "line": 97, 5864 "column": 21 5865 } 5866 } 5867 }, 5868 "loc": { 5869 "start": { 5870 "line": 97, 5871 "column": 20 5872 }, 5873 "end": { 5874 "line": 97, 5875 "column": 22 5876 } 5877 } 5878 }, 5879 { 5880 "type": "TSLiteralType", 5881 "literal": { 5882 "type": "NumberLiteral", 5883 "value": 2, 5884 "loc": { 5885 "start": { 5886 "line": 97, 5887 "column": 23 5888 }, 5889 "end": { 5890 "line": 97, 5891 "column": 24 5892 } 5893 } 5894 }, 5895 "loc": { 5896 "start": { 5897 "line": 97, 5898 "column": 23 5899 }, 5900 "end": { 5901 "line": 97, 5902 "column": 25 5903 } 5904 } 5905 }, 5906 { 5907 "type": "TSLiteralType", 5908 "literal": { 5909 "type": "NumberLiteral", 5910 "value": 3, 5911 "loc": { 5912 "start": { 5913 "line": 97, 5914 "column": 26 5915 }, 5916 "end": { 5917 "line": 97, 5918 "column": 27 5919 } 5920 } 5921 }, 5922 "loc": { 5923 "start": { 5924 "line": 97, 5925 "column": 26 5926 }, 5927 "end": { 5928 "line": 97, 5929 "column": 28 5930 } 5931 } 5932 } 5933 ], 5934 "loc": { 5935 "start": { 5936 "line": 97, 5937 "column": 19 5938 }, 5939 "end": { 5940 "line": 97, 5941 "column": 28 5942 } 5943 } 5944 } 5945 ], 5946 "loc": { 5947 "start": { 5948 "line": 97, 5949 "column": 8 5950 }, 5951 "end": { 5952 "line": 97, 5953 "column": 28 5954 } 5955 } 5956 }, 5957 "decorators": [], 5958 "loc": { 5959 "start": { 5960 "line": 97, 5961 "column": 5 5962 }, 5963 "end": { 5964 "line": 97, 5965 "column": 6 5966 } 5967 } 5968 }, 5969 "init": null, 5970 "loc": { 5971 "start": { 5972 "line": 97, 5973 "column": 5 5974 }, 5975 "end": { 5976 "line": 97, 5977 "column": 6 5978 } 5979 } 5980 } 5981 ], 5982 "kind": "var", 5983 "loc": { 5984 "start": { 5985 "line": 97, 5986 "column": 1 5987 }, 5988 "end": { 5989 "line": 97, 5990 "column": 29 5991 } 5992 } 5993 }, 5994 { 5995 "type": "VariableDeclaration", 5996 "declarations": [ 5997 { 5998 "type": "VariableDeclarator", 5999 "id": { 6000 "type": "Identifier", 6001 "name": "n", 6002 "typeAnnotation": { 6003 "type": "TSUnionType", 6004 "types": [ 6005 { 6006 "type": "TSTupleType", 6007 "elementTypes": [ 6008 { 6009 "type": "TSLiteralType", 6010 "literal": { 6011 "type": "NumberLiteral", 6012 "value": 1, 6013 "loc": { 6014 "start": { 6015 "line": 98, 6016 "column": 9 6017 }, 6018 "end": { 6019 "line": 98, 6020 "column": 10 6021 } 6022 } 6023 }, 6024 "loc": { 6025 "start": { 6026 "line": 98, 6027 "column": 9 6028 }, 6029 "end": { 6030 "line": 98, 6031 "column": 11 6032 } 6033 } 6034 }, 6035 { 6036 "type": "TSLiteralType", 6037 "literal": { 6038 "type": "NumberLiteral", 6039 "value": 2, 6040 "loc": { 6041 "start": { 6042 "line": 98, 6043 "column": 12 6044 }, 6045 "end": { 6046 "line": 98, 6047 "column": 13 6048 } 6049 } 6050 }, 6051 "loc": { 6052 "start": { 6053 "line": 98, 6054 "column": 12 6055 }, 6056 "end": { 6057 "line": 98, 6058 "column": 14 6059 } 6060 } 6061 }, 6062 { 6063 "type": "TSLiteralType", 6064 "literal": { 6065 "type": "NumberLiteral", 6066 "value": 3, 6067 "loc": { 6068 "start": { 6069 "line": 98, 6070 "column": 15 6071 }, 6072 "end": { 6073 "line": 98, 6074 "column": 16 6075 } 6076 } 6077 }, 6078 "loc": { 6079 "start": { 6080 "line": 98, 6081 "column": 15 6082 }, 6083 "end": { 6084 "line": 98, 6085 "column": 17 6086 } 6087 } 6088 } 6089 ], 6090 "loc": { 6091 "start": { 6092 "line": 98, 6093 "column": 8 6094 }, 6095 "end": { 6096 "line": 98, 6097 "column": 17 6098 } 6099 } 6100 }, 6101 { 6102 "type": "TSArrayType", 6103 "elementType": { 6104 "type": "TSNumberKeyword", 6105 "loc": { 6106 "start": { 6107 "line": 98, 6108 "column": 20 6109 }, 6110 "end": { 6111 "line": 98, 6112 "column": 26 6113 } 6114 } 6115 }, 6116 "loc": { 6117 "start": { 6118 "line": 98, 6119 "column": 20 6120 }, 6121 "end": { 6122 "line": 98, 6123 "column": 28 6124 } 6125 } 6126 } 6127 ], 6128 "loc": { 6129 "start": { 6130 "line": 98, 6131 "column": 8 6132 }, 6133 "end": { 6134 "line": 98, 6135 "column": 28 6136 } 6137 } 6138 }, 6139 "decorators": [], 6140 "loc": { 6141 "start": { 6142 "line": 98, 6143 "column": 5 6144 }, 6145 "end": { 6146 "line": 98, 6147 "column": 6 6148 } 6149 } 6150 }, 6151 "init": null, 6152 "loc": { 6153 "start": { 6154 "line": 98, 6155 "column": 5 6156 }, 6157 "end": { 6158 "line": 98, 6159 "column": 6 6160 } 6161 } 6162 } 6163 ], 6164 "kind": "var", 6165 "loc": { 6166 "start": { 6167 "line": 98, 6168 "column": 1 6169 }, 6170 "end": { 6171 "line": 98, 6172 "column": 29 6173 } 6174 } 6175 }, 6176 { 6177 "type": "TSInterfaceDeclaration", 6178 "body": { 6179 "type": "TSInterfaceBody", 6180 "body": [ 6181 { 6182 "type": "TSPropertySignature", 6183 "computed": false, 6184 "optional": false, 6185 "readonly": false, 6186 "key": { 6187 "type": "Identifier", 6188 "name": "a", 6189 "decorators": [], 6190 "loc": { 6191 "start": { 6192 "line": 101, 6193 "column": 5 6194 }, 6195 "end": { 6196 "line": 101, 6197 "column": 6 6198 } 6199 } 6200 }, 6201 "typeAnnotation": { 6202 "type": "TSNumberKeyword", 6203 "loc": { 6204 "start": { 6205 "line": 101, 6206 "column": 8 6207 }, 6208 "end": { 6209 "line": 101, 6210 "column": 14 6211 } 6212 } 6213 }, 6214 "loc": { 6215 "start": { 6216 "line": 101, 6217 "column": 5 6218 }, 6219 "end": { 6220 "line": 101, 6221 "column": 15 6222 } 6223 } 6224 } 6225 ], 6226 "loc": { 6227 "start": { 6228 "line": 100, 6229 "column": 22 6230 }, 6231 "end": { 6232 "line": 102, 6233 "column": 2 6234 } 6235 } 6236 }, 6237 "id": { 6238 "type": "Identifier", 6239 "name": "interface7", 6240 "decorators": [], 6241 "loc": { 6242 "start": { 6243 "line": 100, 6244 "column": 11 6245 }, 6246 "end": { 6247 "line": 100, 6248 "column": 21 6249 } 6250 } 6251 }, 6252 "extends": [], 6253 "loc": { 6254 "start": { 6255 "line": 100, 6256 "column": 1 6257 }, 6258 "end": { 6259 "line": 102, 6260 "column": 2 6261 } 6262 } 6263 }, 6264 { 6265 "type": "TSInterfaceDeclaration", 6266 "body": { 6267 "type": "TSInterfaceBody", 6268 "body": [ 6269 { 6270 "type": "TSPropertySignature", 6271 "computed": false, 6272 "optional": false, 6273 "readonly": false, 6274 "key": { 6275 "type": "Identifier", 6276 "name": "a", 6277 "decorators": [], 6278 "loc": { 6279 "start": { 6280 "line": 105, 6281 "column": 5 6282 }, 6283 "end": { 6284 "line": 105, 6285 "column": 6 6286 } 6287 } 6288 }, 6289 "typeAnnotation": { 6290 "type": "TSNumberKeyword", 6291 "loc": { 6292 "start": { 6293 "line": 105, 6294 "column": 8 6295 }, 6296 "end": { 6297 "line": 105, 6298 "column": 14 6299 } 6300 } 6301 }, 6302 "loc": { 6303 "start": { 6304 "line": 105, 6305 "column": 5 6306 }, 6307 "end": { 6308 "line": 105, 6309 "column": 15 6310 } 6311 } 6312 } 6313 ], 6314 "loc": { 6315 "start": { 6316 "line": 104, 6317 "column": 41 6318 }, 6319 "end": { 6320 "line": 106, 6321 "column": 2 6322 } 6323 } 6324 }, 6325 "id": { 6326 "type": "Identifier", 6327 "name": "interface8", 6328 "decorators": [], 6329 "loc": { 6330 "start": { 6331 "line": 104, 6332 "column": 11 6333 }, 6334 "end": { 6335 "line": 104, 6336 "column": 21 6337 } 6338 } 6339 }, 6340 "extends": [ 6341 { 6342 "type": "TSInterfaceHeritage", 6343 "expression": { 6344 "type": "TSTypeReference", 6345 "typeName": { 6346 "type": "Identifier", 6347 "name": "interface7", 6348 "decorators": [], 6349 "loc": { 6350 "start": { 6351 "line": 104, 6352 "column": 30 6353 }, 6354 "end": { 6355 "line": 104, 6356 "column": 40 6357 } 6358 } 6359 }, 6360 "loc": { 6361 "start": { 6362 "line": 104, 6363 "column": 41 6364 }, 6365 "end": { 6366 "line": 104, 6367 "column": 40 6368 } 6369 } 6370 }, 6371 "loc": { 6372 "start": { 6373 "line": 104, 6374 "column": 41 6375 }, 6376 "end": { 6377 "line": 104, 6378 "column": 40 6379 } 6380 } 6381 } 6382 ], 6383 "loc": { 6384 "start": { 6385 "line": 104, 6386 "column": 1 6387 }, 6388 "end": { 6389 "line": 106, 6390 "column": 2 6391 } 6392 } 6393 }, 6394 { 6395 "type": "TSInterfaceDeclaration", 6396 "body": { 6397 "type": "TSInterfaceBody", 6398 "body": [ 6399 { 6400 "type": "TSPropertySignature", 6401 "computed": false, 6402 "optional": false, 6403 "readonly": false, 6404 "key": { 6405 "type": "Identifier", 6406 "name": "a", 6407 "decorators": [], 6408 "loc": { 6409 "start": { 6410 "line": 109, 6411 "column": 5 6412 }, 6413 "end": { 6414 "line": 109, 6415 "column": 6 6416 } 6417 } 6418 }, 6419 "typeAnnotation": { 6420 "type": "TSNumberKeyword", 6421 "loc": { 6422 "start": { 6423 "line": 109, 6424 "column": 8 6425 }, 6426 "end": { 6427 "line": 109, 6428 "column": 14 6429 } 6430 } 6431 }, 6432 "loc": { 6433 "start": { 6434 "line": 109, 6435 "column": 5 6436 }, 6437 "end": { 6438 "line": 109, 6439 "column": 15 6440 } 6441 } 6442 } 6443 ], 6444 "loc": { 6445 "start": { 6446 "line": 108, 6447 "column": 22 6448 }, 6449 "end": { 6450 "line": 110, 6451 "column": 2 6452 } 6453 } 6454 }, 6455 "id": { 6456 "type": "Identifier", 6457 "name": "interface9", 6458 "decorators": [], 6459 "loc": { 6460 "start": { 6461 "line": 108, 6462 "column": 11 6463 }, 6464 "end": { 6465 "line": 108, 6466 "column": 21 6467 } 6468 } 6469 }, 6470 "extends": [], 6471 "loc": { 6472 "start": { 6473 "line": 108, 6474 "column": 1 6475 }, 6476 "end": { 6477 "line": 110, 6478 "column": 2 6479 } 6480 } 6481 }, 6482 { 6483 "type": "VariableDeclaration", 6484 "declarations": [ 6485 { 6486 "type": "VariableDeclarator", 6487 "id": { 6488 "type": "Identifier", 6489 "name": "o", 6490 "typeAnnotation": { 6491 "type": "TSTypeReference", 6492 "typeName": { 6493 "type": "Identifier", 6494 "name": "interface9", 6495 "decorators": [], 6496 "loc": { 6497 "start": { 6498 "line": 112, 6499 "column": 8 6500 }, 6501 "end": { 6502 "line": 112, 6503 "column": 18 6504 } 6505 } 6506 }, 6507 "loc": { 6508 "start": { 6509 "line": 112, 6510 "column": 8 6511 }, 6512 "end": { 6513 "line": 112, 6514 "column": 18 6515 } 6516 } 6517 }, 6518 "decorators": [], 6519 "loc": { 6520 "start": { 6521 "line": 112, 6522 "column": 5 6523 }, 6524 "end": { 6525 "line": 112, 6526 "column": 6 6527 } 6528 } 6529 }, 6530 "init": null, 6531 "loc": { 6532 "start": { 6533 "line": 112, 6534 "column": 5 6535 }, 6536 "end": { 6537 "line": 112, 6538 "column": 6 6539 } 6540 } 6541 } 6542 ], 6543 "kind": "var", 6544 "loc": { 6545 "start": { 6546 "line": 112, 6547 "column": 1 6548 }, 6549 "end": { 6550 "line": 112, 6551 "column": 19 6552 } 6553 } 6554 }, 6555 { 6556 "type": "VariableDeclaration", 6557 "declarations": [ 6558 { 6559 "type": "VariableDeclarator", 6560 "id": { 6561 "type": "Identifier", 6562 "name": "o", 6563 "typeAnnotation": { 6564 "type": "TSTypeReference", 6565 "typeName": { 6566 "type": "Identifier", 6567 "name": "interface8", 6568 "decorators": [], 6569 "loc": { 6570 "start": { 6571 "line": 113, 6572 "column": 8 6573 }, 6574 "end": { 6575 "line": 113, 6576 "column": 18 6577 } 6578 } 6579 }, 6580 "loc": { 6581 "start": { 6582 "line": 113, 6583 "column": 8 6584 }, 6585 "end": { 6586 "line": 113, 6587 "column": 18 6588 } 6589 } 6590 }, 6591 "decorators": [], 6592 "loc": { 6593 "start": { 6594 "line": 113, 6595 "column": 5 6596 }, 6597 "end": { 6598 "line": 113, 6599 "column": 6 6600 } 6601 } 6602 }, 6603 "init": null, 6604 "loc": { 6605 "start": { 6606 "line": 113, 6607 "column": 5 6608 }, 6609 "end": { 6610 "line": 113, 6611 "column": 6 6612 } 6613 } 6614 } 6615 ], 6616 "kind": "var", 6617 "loc": { 6618 "start": { 6619 "line": 113, 6620 "column": 1 6621 }, 6622 "end": { 6623 "line": 113, 6624 "column": 19 6625 } 6626 } 6627 }, 6628 { 6629 "type": "VariableDeclaration", 6630 "declarations": [ 6631 { 6632 "type": "VariableDeclarator", 6633 "id": { 6634 "type": "Identifier", 6635 "name": "p", 6636 "typeAnnotation": { 6637 "type": "TSTypeLiteral", 6638 "members": [ 6639 { 6640 "type": "TSPropertySignature", 6641 "computed": false, 6642 "optional": false, 6643 "readonly": false, 6644 "key": { 6645 "type": "Identifier", 6646 "name": "a", 6647 "decorators": [], 6648 "loc": { 6649 "start": { 6650 "line": 115, 6651 "column": 10 6652 }, 6653 "end": { 6654 "line": 115, 6655 "column": 11 6656 } 6657 } 6658 }, 6659 "typeAnnotation": { 6660 "type": "TSNumberKeyword", 6661 "loc": { 6662 "start": { 6663 "line": 115, 6664 "column": 13 6665 }, 6666 "end": { 6667 "line": 115, 6668 "column": 19 6669 } 6670 } 6671 }, 6672 "loc": { 6673 "start": { 6674 "line": 115, 6675 "column": 10 6676 }, 6677 "end": { 6678 "line": 115, 6679 "column": 20 6680 } 6681 } 6682 }, 6683 { 6684 "type": "TSPropertySignature", 6685 "computed": false, 6686 "optional": false, 6687 "readonly": false, 6688 "key": { 6689 "type": "Identifier", 6690 "name": "b", 6691 "decorators": [], 6692 "loc": { 6693 "start": { 6694 "line": 115, 6695 "column": 21 6696 }, 6697 "end": { 6698 "line": 115, 6699 "column": 22 6700 } 6701 } 6702 }, 6703 "typeAnnotation": { 6704 "type": "TSStringKeyword", 6705 "loc": { 6706 "start": { 6707 "line": 115, 6708 "column": 24 6709 }, 6710 "end": { 6711 "line": 115, 6712 "column": 30 6713 } 6714 } 6715 }, 6716 "loc": { 6717 "start": { 6718 "line": 115, 6719 "column": 21 6720 }, 6721 "end": { 6722 "line": 115, 6723 "column": 32 6724 } 6725 } 6726 } 6727 ], 6728 "loc": { 6729 "start": { 6730 "line": 115, 6731 "column": 8 6732 }, 6733 "end": { 6734 "line": 115, 6735 "column": 32 6736 } 6737 } 6738 }, 6739 "decorators": [], 6740 "loc": { 6741 "start": { 6742 "line": 115, 6743 "column": 5 6744 }, 6745 "end": { 6746 "line": 115, 6747 "column": 6 6748 } 6749 } 6750 }, 6751 "init": null, 6752 "loc": { 6753 "start": { 6754 "line": 115, 6755 "column": 5 6756 }, 6757 "end": { 6758 "line": 115, 6759 "column": 6 6760 } 6761 } 6762 } 6763 ], 6764 "kind": "var", 6765 "loc": { 6766 "start": { 6767 "line": 115, 6768 "column": 1 6769 }, 6770 "end": { 6771 "line": 115, 6772 "column": 33 6773 } 6774 } 6775 }, 6776 { 6777 "type": "VariableDeclaration", 6778 "declarations": [ 6779 { 6780 "type": "VariableDeclarator", 6781 "id": { 6782 "type": "Identifier", 6783 "name": "p", 6784 "typeAnnotation": { 6785 "type": "TSTypeQuery", 6786 "exprName": { 6787 "type": "Identifier", 6788 "name": "p", 6789 "decorators": [], 6790 "loc": { 6791 "start": { 6792 "line": 116, 6793 "column": 15 6794 }, 6795 "end": { 6796 "line": 116, 6797 "column": 16 6798 } 6799 } 6800 }, 6801 "loc": { 6802 "start": { 6803 "line": 116, 6804 "column": 8 6805 }, 6806 "end": { 6807 "line": 116, 6808 "column": 16 6809 } 6810 } 6811 }, 6812 "decorators": [], 6813 "loc": { 6814 "start": { 6815 "line": 116, 6816 "column": 5 6817 }, 6818 "end": { 6819 "line": 116, 6820 "column": 6 6821 } 6822 } 6823 }, 6824 "init": null, 6825 "loc": { 6826 "start": { 6827 "line": 116, 6828 "column": 5 6829 }, 6830 "end": { 6831 "line": 116, 6832 "column": 6 6833 } 6834 } 6835 } 6836 ], 6837 "kind": "var", 6838 "loc": { 6839 "start": { 6840 "line": 116, 6841 "column": 1 6842 }, 6843 "end": { 6844 "line": 116, 6845 "column": 17 6846 } 6847 } 6848 } 6849 ], 6850 "loc": { 6851 "start": { 6852 "line": 1, 6853 "column": 1 6854 }, 6855 "end": { 6856 "line": 117, 6857 "column": 1 6858 } 6859 } 6860} 6861