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