1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "TSInterfaceDeclaration", 6 "body": { 7 "type": "TSInterfaceBody", 8 "body": [], 9 "loc": { 10 "start": { 11 "line": 16, 12 "column": 31 13 }, 14 "end": { 15 "line": 16, 16 "column": 33 17 } 18 } 19 }, 20 "id": { 21 "type": "Identifier", 22 "name": "MutableState", 23 "decorators": [], 24 "loc": { 25 "start": { 26 "line": 16, 27 "column": 11 28 }, 29 "end": { 30 "line": 16, 31 "column": 23 32 } 33 } 34 }, 35 "extends": [], 36 "typeParameters": { 37 "type": "TSTypeParameterDeclaration", 38 "params": [ 39 { 40 "type": "TSTypeParameter", 41 "name": { 42 "type": "Identifier", 43 "name": "Value", 44 "decorators": [], 45 "loc": { 46 "start": { 47 "line": 16, 48 "column": 24 49 }, 50 "end": { 51 "line": 16, 52 "column": 29 53 } 54 } 55 }, 56 "loc": { 57 "start": { 58 "line": 16, 59 "column": 24 60 }, 61 "end": { 62 "line": 16, 63 "column": 30 64 } 65 } 66 } 67 ], 68 "loc": { 69 "start": { 70 "line": 16, 71 "column": 23 72 }, 73 "end": { 74 "line": 16, 75 "column": 30 76 } 77 } 78 }, 79 "loc": { 80 "start": { 81 "line": 16, 82 "column": 1 83 }, 84 "end": { 85 "line": 18, 86 "column": 6 87 } 88 } 89 }, 90 { 91 "type": "ClassDeclaration", 92 "definition": { 93 "id": { 94 "type": "Identifier", 95 "name": "StateImpl", 96 "decorators": [], 97 "loc": { 98 "start": { 99 "line": 18, 100 "column": 7 101 }, 102 "end": { 103 "line": 18, 104 "column": 16 105 } 106 } 107 }, 108 "typeParameters": { 109 "type": "TSTypeParameterDeclaration", 110 "params": [ 111 { 112 "type": "TSTypeParameter", 113 "name": { 114 "type": "Identifier", 115 "name": "Value", 116 "decorators": [], 117 "loc": { 118 "start": { 119 "line": 18, 120 "column": 17 121 }, 122 "end": { 123 "line": 18, 124 "column": 22 125 } 126 } 127 }, 128 "loc": { 129 "start": { 130 "line": 18, 131 "column": 17 132 }, 133 "end": { 134 "line": 18, 135 "column": 23 136 } 137 } 138 } 139 ], 140 "loc": { 141 "start": { 142 "line": 18, 143 "column": 16 144 }, 145 "end": { 146 "line": 18, 147 "column": 23 148 } 149 } 150 }, 151 "superClass": null, 152 "implements": [ 153 { 154 "type": "TSClassImplements", 155 "expression": { 156 "type": "ETSTypeReference", 157 "part": { 158 "type": "ETSTypeReferencePart", 159 "name": { 160 "type": "Identifier", 161 "name": "MutableState", 162 "decorators": [], 163 "loc": { 164 "start": { 165 "line": 18, 166 "column": 35 167 }, 168 "end": { 169 "line": 18, 170 "column": 47 171 } 172 } 173 }, 174 "typeParams": { 175 "type": "TSTypeParameterInstantiation", 176 "params": [ 177 { 178 "type": "ETSTypeReference", 179 "part": { 180 "type": "ETSTypeReferencePart", 181 "name": { 182 "type": "Identifier", 183 "name": "Value", 184 "decorators": [], 185 "loc": { 186 "start": { 187 "line": 18, 188 "column": 48 189 }, 190 "end": { 191 "line": 18, 192 "column": 53 193 } 194 } 195 }, 196 "loc": { 197 "start": { 198 "line": 18, 199 "column": 48 200 }, 201 "end": { 202 "line": 18, 203 "column": 54 204 } 205 } 206 }, 207 "loc": { 208 "start": { 209 "line": 18, 210 "column": 48 211 }, 212 "end": { 213 "line": 18, 214 "column": 54 215 } 216 } 217 } 218 ], 219 "loc": { 220 "start": { 221 "line": 18, 222 "column": 47 223 }, 224 "end": { 225 "line": 18, 226 "column": 54 227 } 228 } 229 }, 230 "loc": { 231 "start": { 232 "line": 18, 233 "column": 35 234 }, 235 "end": { 236 "line": 18, 237 "column": 56 238 } 239 } 240 }, 241 "loc": { 242 "start": { 243 "line": 18, 244 "column": 35 245 }, 246 "end": { 247 "line": 18, 248 "column": 56 249 } 250 } 251 }, 252 "loc": { 253 "start": { 254 "line": 18, 255 "column": 35 256 }, 257 "end": { 258 "line": 18, 259 "column": 56 260 } 261 } 262 } 263 ], 264 "body": [ 265 { 266 "type": "MethodDefinition", 267 "key": { 268 "type": "Identifier", 269 "name": "constructor", 270 "decorators": [], 271 "loc": { 272 "start": { 273 "line": 1, 274 "column": 1 275 }, 276 "end": { 277 "line": 1, 278 "column": 1 279 } 280 } 281 }, 282 "kind": "constructor", 283 "static": false, 284 "optional": false, 285 "computed": false, 286 "value": { 287 "type": "FunctionExpression", 288 "function": { 289 "type": "ScriptFunction", 290 "id": { 291 "type": "Identifier", 292 "name": "constructor", 293 "decorators": [], 294 "loc": { 295 "start": { 296 "line": 1, 297 "column": 1 298 }, 299 "end": { 300 "line": 1, 301 "column": 1 302 } 303 } 304 }, 305 "generator": false, 306 "async": false, 307 "expression": false, 308 "params": [], 309 "body": { 310 "type": "BlockStatement", 311 "statements": [], 312 "loc": { 313 "start": { 314 "line": 1, 315 "column": 1 316 }, 317 "end": { 318 "line": 1, 319 "column": 1 320 } 321 } 322 }, 323 "loc": { 324 "start": { 325 "line": 1, 326 "column": 1 327 }, 328 "end": { 329 "line": 1, 330 "column": 1 331 } 332 } 333 }, 334 "loc": { 335 "start": { 336 "line": 1, 337 "column": 1 338 }, 339 "end": { 340 "line": 1, 341 "column": 1 342 } 343 } 344 }, 345 "overloads": [], 346 "decorators": [], 347 "loc": { 348 "start": { 349 "line": 18, 350 "column": 57 351 }, 352 "end": { 353 "line": 18, 354 "column": 57 355 } 356 } 357 } 358 ], 359 "loc": { 360 "start": { 361 "line": 18, 362 "column": 55 363 }, 364 "end": { 365 "line": 18, 366 "column": 57 367 } 368 } 369 }, 370 "loc": { 371 "start": { 372 "line": 18, 373 "column": 1 374 }, 375 "end": { 376 "line": 18, 377 "column": 57 378 } 379 } 380 }, 381 { 382 "type": "TSInterfaceDeclaration", 383 "body": { 384 "type": "TSInterfaceBody", 385 "body": [ 386 { 387 "type": "MethodDefinition", 388 "key": { 389 "type": "Identifier", 390 "name": "foo", 391 "decorators": [], 392 "loc": { 393 "start": { 394 "line": 21, 395 "column": 5 396 }, 397 "end": { 398 "line": 21, 399 "column": 8 400 } 401 } 402 }, 403 "kind": "method", 404 "accessibility": "public", 405 "static": false, 406 "optional": false, 407 "computed": false, 408 "value": { 409 "type": "FunctionExpression", 410 "function": { 411 "type": "ScriptFunction", 412 "id": { 413 "type": "Identifier", 414 "name": "foo", 415 "decorators": [], 416 "loc": { 417 "start": { 418 "line": 21, 419 "column": 5 420 }, 421 "end": { 422 "line": 21, 423 "column": 8 424 } 425 } 426 }, 427 "generator": false, 428 "async": false, 429 "expression": false, 430 "params": [ 431 { 432 "type": "ETSParameterExpression", 433 "name": { 434 "type": "Identifier", 435 "name": "equivalent", 436 "typeAnnotation": { 437 "type": "ETSUnionType", 438 "types": [ 439 { 440 "type": "ETSTypeReference", 441 "part": { 442 "type": "ETSTypeReferencePart", 443 "name": { 444 "type": "Identifier", 445 "name": "ValueTracker", 446 "decorators": [], 447 "loc": { 448 "start": { 449 "line": 21, 450 "column": 29 451 }, 452 "end": { 453 "line": 21, 454 "column": 41 455 } 456 } 457 }, 458 "typeParams": { 459 "type": "TSTypeParameterInstantiation", 460 "params": [ 461 { 462 "type": "ETSTypeReference", 463 "part": { 464 "type": "ETSTypeReferencePart", 465 "name": { 466 "type": "Identifier", 467 "name": "Value", 468 "decorators": [], 469 "loc": { 470 "start": { 471 "line": 21, 472 "column": 42 473 }, 474 "end": { 475 "line": 21, 476 "column": 47 477 } 478 } 479 }, 480 "loc": { 481 "start": { 482 "line": 21, 483 "column": 42 484 }, 485 "end": { 486 "line": 21, 487 "column": 48 488 } 489 } 490 }, 491 "loc": { 492 "start": { 493 "line": 21, 494 "column": 42 495 }, 496 "end": { 497 "line": 21, 498 "column": 48 499 } 500 } 501 } 502 ], 503 "loc": { 504 "start": { 505 "line": 21, 506 "column": 41 507 }, 508 "end": { 509 "line": 21, 510 "column": 48 511 } 512 } 513 }, 514 "loc": { 515 "start": { 516 "line": 21, 517 "column": 29 518 }, 519 "end": { 520 "line": 21, 521 "column": 49 522 } 523 } 524 }, 525 "loc": { 526 "start": { 527 "line": 21, 528 "column": 29 529 }, 530 "end": { 531 "line": 21, 532 "column": 49 533 } 534 } 535 }, 536 { 537 "type": "ETSUndefinedType", 538 "loc": { 539 "start": { 540 "line": 21, 541 "column": 26 542 }, 543 "end": { 544 "line": 21, 545 "column": 27 546 } 547 } 548 } 549 ], 550 "loc": { 551 "start": { 552 "line": 21, 553 "column": 29 554 }, 555 "end": { 556 "line": 21, 557 "column": 49 558 } 559 } 560 }, 561 "decorators": [], 562 "loc": { 563 "start": { 564 "line": 21, 565 "column": 16 566 }, 567 "end": { 568 "line": 21, 569 "column": 49 570 } 571 } 572 }, 573 "loc": { 574 "start": { 575 "line": 21, 576 "column": 16 577 }, 578 "end": { 579 "line": 21, 580 "column": 49 581 } 582 } 583 }, 584 { 585 "type": "ETSParameterExpression", 586 "name": { 587 "type": "Identifier", 588 "name": "tracker", 589 "typeAnnotation": { 590 "type": "ETSUnionType", 591 "types": [ 592 { 593 "type": "ETSTypeReference", 594 "part": { 595 "type": "ETSTypeReferencePart", 596 "name": { 597 "type": "Identifier", 598 "name": "ValueTracker", 599 "decorators": [], 600 "loc": { 601 "start": { 602 "line": 21, 603 "column": 60 604 }, 605 "end": { 606 "line": 21, 607 "column": 72 608 } 609 } 610 }, 611 "typeParams": { 612 "type": "TSTypeParameterInstantiation", 613 "params": [ 614 { 615 "type": "ETSTypeReference", 616 "part": { 617 "type": "ETSTypeReferencePart", 618 "name": { 619 "type": "Identifier", 620 "name": "Value", 621 "decorators": [], 622 "loc": { 623 "start": { 624 "line": 21, 625 "column": 73 626 }, 627 "end": { 628 "line": 21, 629 "column": 78 630 } 631 } 632 }, 633 "loc": { 634 "start": { 635 "line": 21, 636 "column": 73 637 }, 638 "end": { 639 "line": 21, 640 "column": 79 641 } 642 } 643 }, 644 "loc": { 645 "start": { 646 "line": 21, 647 "column": 73 648 }, 649 "end": { 650 "line": 21, 651 "column": 79 652 } 653 } 654 } 655 ], 656 "loc": { 657 "start": { 658 "line": 21, 659 "column": 72 660 }, 661 "end": { 662 "line": 21, 663 "column": 79 664 } 665 } 666 }, 667 "loc": { 668 "start": { 669 "line": 21, 670 "column": 60 671 }, 672 "end": { 673 "line": 21, 674 "column": 80 675 } 676 } 677 }, 678 "loc": { 679 "start": { 680 "line": 21, 681 "column": 60 682 }, 683 "end": { 684 "line": 21, 685 "column": 80 686 } 687 } 688 }, 689 { 690 "type": "ETSUndefinedType", 691 "loc": { 692 "start": { 693 "line": 21, 694 "column": 57 695 }, 696 "end": { 697 "line": 21, 698 "column": 58 699 } 700 } 701 } 702 ], 703 "loc": { 704 "start": { 705 "line": 21, 706 "column": 60 707 }, 708 "end": { 709 "line": 21, 710 "column": 80 711 } 712 } 713 }, 714 "decorators": [], 715 "loc": { 716 "start": { 717 "line": 21, 718 "column": 50 719 }, 720 "end": { 721 "line": 21, 722 "column": 80 723 } 724 } 725 }, 726 "loc": { 727 "start": { 728 "line": 21, 729 "column": 50 730 }, 731 "end": { 732 "line": 21, 733 "column": 80 734 } 735 } 736 } 737 ], 738 "returnType": { 739 "type": "ETSTypeReference", 740 "part": { 741 "type": "ETSTypeReferencePart", 742 "name": { 743 "type": "Identifier", 744 "name": "MutableState", 745 "decorators": [], 746 "loc": { 747 "start": { 748 "line": 21, 749 "column": 82 750 }, 751 "end": { 752 "line": 21, 753 "column": 94 754 } 755 } 756 }, 757 "typeParams": { 758 "type": "TSTypeParameterInstantiation", 759 "params": [ 760 { 761 "type": "ETSTypeReference", 762 "part": { 763 "type": "ETSTypeReferencePart", 764 "name": { 765 "type": "Identifier", 766 "name": "Value", 767 "decorators": [], 768 "loc": { 769 "start": { 770 "line": 21, 771 "column": 95 772 }, 773 "end": { 774 "line": 21, 775 "column": 100 776 } 777 } 778 }, 779 "loc": { 780 "start": { 781 "line": 21, 782 "column": 95 783 }, 784 "end": { 785 "line": 21, 786 "column": 101 787 } 788 } 789 }, 790 "loc": { 791 "start": { 792 "line": 21, 793 "column": 95 794 }, 795 "end": { 796 "line": 21, 797 "column": 101 798 } 799 } 800 } 801 ], 802 "loc": { 803 "start": { 804 "line": 21, 805 "column": 94 806 }, 807 "end": { 808 "line": 21, 809 "column": 101 810 } 811 } 812 }, 813 "loc": { 814 "start": { 815 "line": 21, 816 "column": 82 817 }, 818 "end": { 819 "line": 22, 820 "column": 2 821 } 822 } 823 }, 824 "loc": { 825 "start": { 826 "line": 21, 827 "column": 82 828 }, 829 "end": { 830 "line": 22, 831 "column": 2 832 } 833 } 834 }, 835 "typeParameters": { 836 "type": "TSTypeParameterDeclaration", 837 "params": [ 838 { 839 "type": "TSTypeParameter", 840 "name": { 841 "type": "Identifier", 842 "name": "Value", 843 "decorators": [], 844 "loc": { 845 "start": { 846 "line": 21, 847 "column": 9 848 }, 849 "end": { 850 "line": 21, 851 "column": 14 852 } 853 } 854 }, 855 "loc": { 856 "start": { 857 "line": 21, 858 "column": 9 859 }, 860 "end": { 861 "line": 21, 862 "column": 15 863 } 864 } 865 } 866 ], 867 "loc": { 868 "start": { 869 "line": 21, 870 "column": 8 871 }, 872 "end": { 873 "line": 21, 874 "column": 15 875 } 876 } 877 }, 878 "declare": true, 879 "loc": { 880 "start": { 881 "line": 21, 882 "column": 8 883 }, 884 "end": { 885 "line": 22, 886 "column": 2 887 } 888 } 889 }, 890 "loc": { 891 "start": { 892 "line": 21, 893 "column": 8 894 }, 895 "end": { 896 "line": 22, 897 "column": 2 898 } 899 } 900 }, 901 "overloads": [ 902 { 903 "type": "MethodDefinition", 904 "key": { 905 "type": "Identifier", 906 "name": "foo", 907 "decorators": [], 908 "loc": { 909 "start": { 910 "line": 21, 911 "column": 5 912 }, 913 "end": { 914 "line": 21, 915 "column": 8 916 } 917 } 918 }, 919 "kind": "method", 920 "accessibility": "public", 921 "static": false, 922 "optional": false, 923 "computed": false, 924 "value": { 925 "type": "FunctionExpression", 926 "function": { 927 "type": "ScriptFunction", 928 "id": { 929 "type": "Identifier", 930 "name": "foo", 931 "decorators": [], 932 "loc": { 933 "start": { 934 "line": 21, 935 "column": 5 936 }, 937 "end": { 938 "line": 21, 939 "column": 8 940 } 941 } 942 }, 943 "generator": false, 944 "async": false, 945 "expression": false, 946 "params": [ 947 { 948 "type": "ETSParameterExpression", 949 "name": { 950 "type": "Identifier", 951 "name": "equivalent", 952 "typeAnnotation": { 953 "type": "ETSUnionType", 954 "types": [ 955 { 956 "type": "ETSTypeReference", 957 "part": { 958 "type": "ETSTypeReferencePart", 959 "name": { 960 "type": "Identifier", 961 "name": "ValueTracker", 962 "decorators": [], 963 "loc": { 964 "start": { 965 "line": 21, 966 "column": 29 967 }, 968 "end": { 969 "line": 21, 970 "column": 41 971 } 972 } 973 }, 974 "typeParams": { 975 "type": "TSTypeParameterInstantiation", 976 "params": [ 977 { 978 "type": "ETSTypeReference", 979 "part": { 980 "type": "ETSTypeReferencePart", 981 "name": { 982 "type": "Identifier", 983 "name": "Value", 984 "decorators": [], 985 "loc": { 986 "start": { 987 "line": 21, 988 "column": 42 989 }, 990 "end": { 991 "line": 21, 992 "column": 47 993 } 994 } 995 }, 996 "loc": { 997 "start": { 998 "line": 21, 999 "column": 42 1000 }, 1001 "end": { 1002 "line": 21, 1003 "column": 48 1004 } 1005 } 1006 }, 1007 "loc": { 1008 "start": { 1009 "line": 21, 1010 "column": 42 1011 }, 1012 "end": { 1013 "line": 21, 1014 "column": 48 1015 } 1016 } 1017 } 1018 ], 1019 "loc": { 1020 "start": { 1021 "line": 21, 1022 "column": 41 1023 }, 1024 "end": { 1025 "line": 21, 1026 "column": 48 1027 } 1028 } 1029 }, 1030 "loc": { 1031 "start": { 1032 "line": 21, 1033 "column": 29 1034 }, 1035 "end": { 1036 "line": 21, 1037 "column": 49 1038 } 1039 } 1040 }, 1041 "loc": { 1042 "start": { 1043 "line": 21, 1044 "column": 29 1045 }, 1046 "end": { 1047 "line": 21, 1048 "column": 49 1049 } 1050 } 1051 }, 1052 { 1053 "type": "ETSUndefinedType", 1054 "loc": { 1055 "start": { 1056 "line": 1, 1057 "column": 1 1058 }, 1059 "end": { 1060 "line": 1, 1061 "column": 1 1062 } 1063 } 1064 } 1065 ], 1066 "loc": { 1067 "start": { 1068 "line": 1, 1069 "column": 1 1070 }, 1071 "end": { 1072 "line": 1, 1073 "column": 1 1074 } 1075 } 1076 }, 1077 "decorators": [], 1078 "loc": { 1079 "start": { 1080 "line": 21, 1081 "column": 16 1082 }, 1083 "end": { 1084 "line": 21, 1085 "column": 49 1086 } 1087 } 1088 }, 1089 "loc": { 1090 "start": { 1091 "line": 1, 1092 "column": 1 1093 }, 1094 "end": { 1095 "line": 1, 1096 "column": 1 1097 } 1098 } 1099 } 1100 ], 1101 "returnType": { 1102 "type": "ETSTypeReference", 1103 "part": { 1104 "type": "ETSTypeReferencePart", 1105 "name": { 1106 "type": "Identifier", 1107 "name": "MutableState", 1108 "decorators": [], 1109 "loc": { 1110 "start": { 1111 "line": 21, 1112 "column": 82 1113 }, 1114 "end": { 1115 "line": 21, 1116 "column": 94 1117 } 1118 } 1119 }, 1120 "typeParams": { 1121 "type": "TSTypeParameterInstantiation", 1122 "params": [ 1123 { 1124 "type": "ETSTypeReference", 1125 "part": { 1126 "type": "ETSTypeReferencePart", 1127 "name": { 1128 "type": "Identifier", 1129 "name": "Value", 1130 "decorators": [], 1131 "loc": { 1132 "start": { 1133 "line": 21, 1134 "column": 95 1135 }, 1136 "end": { 1137 "line": 21, 1138 "column": 100 1139 } 1140 } 1141 }, 1142 "loc": { 1143 "start": { 1144 "line": 21, 1145 "column": 95 1146 }, 1147 "end": { 1148 "line": 21, 1149 "column": 101 1150 } 1151 } 1152 }, 1153 "loc": { 1154 "start": { 1155 "line": 21, 1156 "column": 95 1157 }, 1158 "end": { 1159 "line": 21, 1160 "column": 101 1161 } 1162 } 1163 } 1164 ], 1165 "loc": { 1166 "start": { 1167 "line": 21, 1168 "column": 94 1169 }, 1170 "end": { 1171 "line": 21, 1172 "column": 101 1173 } 1174 } 1175 }, 1176 "loc": { 1177 "start": { 1178 "line": 21, 1179 "column": 82 1180 }, 1181 "end": { 1182 "line": 22, 1183 "column": 2 1184 } 1185 } 1186 }, 1187 "loc": { 1188 "start": { 1189 "line": 21, 1190 "column": 82 1191 }, 1192 "end": { 1193 "line": 22, 1194 "column": 2 1195 } 1196 } 1197 }, 1198 "typeParameters": { 1199 "type": "TSTypeParameterDeclaration", 1200 "params": [ 1201 { 1202 "type": "TSTypeParameter", 1203 "name": { 1204 "type": "Identifier", 1205 "name": "Value", 1206 "decorators": [], 1207 "loc": { 1208 "start": { 1209 "line": 21, 1210 "column": 9 1211 }, 1212 "end": { 1213 "line": 21, 1214 "column": 14 1215 } 1216 } 1217 }, 1218 "loc": { 1219 "start": { 1220 "line": 1, 1221 "column": 1 1222 }, 1223 "end": { 1224 "line": 1, 1225 "column": 1 1226 } 1227 } 1228 } 1229 ], 1230 "loc": { 1231 "start": { 1232 "line": 1, 1233 "column": 1 1234 }, 1235 "end": { 1236 "line": 1, 1237 "column": 1 1238 } 1239 } 1240 }, 1241 "body": { 1242 "type": "BlockStatement", 1243 "statements": [], 1244 "loc": { 1245 "start": { 1246 "line": 1, 1247 "column": 1 1248 }, 1249 "end": { 1250 "line": 1, 1251 "column": 1 1252 } 1253 } 1254 }, 1255 "loc": { 1256 "start": { 1257 "line": 728, 1258 "column": 1 1259 }, 1260 "end": { 1261 "line": 728, 1262 "column": 1 1263 } 1264 } 1265 }, 1266 "loc": { 1267 "start": { 1268 "line": 1, 1269 "column": 1 1270 }, 1271 "end": { 1272 "line": 1, 1273 "column": 1 1274 } 1275 } 1276 }, 1277 "overloads": [], 1278 "decorators": [], 1279 "loc": { 1280 "start": { 1281 "line": 21, 1282 "column": 5 1283 }, 1284 "end": { 1285 "line": 1, 1286 "column": 1 1287 } 1288 } 1289 }, 1290 { 1291 "type": "MethodDefinition", 1292 "key": { 1293 "type": "Identifier", 1294 "name": "foo", 1295 "decorators": [], 1296 "loc": { 1297 "start": { 1298 "line": 21, 1299 "column": 5 1300 }, 1301 "end": { 1302 "line": 21, 1303 "column": 8 1304 } 1305 } 1306 }, 1307 "kind": "method", 1308 "accessibility": "public", 1309 "static": false, 1310 "optional": false, 1311 "computed": false, 1312 "value": { 1313 "type": "FunctionExpression", 1314 "function": { 1315 "type": "ScriptFunction", 1316 "id": { 1317 "type": "Identifier", 1318 "name": "foo", 1319 "decorators": [], 1320 "loc": { 1321 "start": { 1322 "line": 21, 1323 "column": 5 1324 }, 1325 "end": { 1326 "line": 21, 1327 "column": 8 1328 } 1329 } 1330 }, 1331 "generator": false, 1332 "async": false, 1333 "expression": false, 1334 "params": [], 1335 "returnType": { 1336 "type": "ETSTypeReference", 1337 "part": { 1338 "type": "ETSTypeReferencePart", 1339 "name": { 1340 "type": "Identifier", 1341 "name": "MutableState", 1342 "decorators": [], 1343 "loc": { 1344 "start": { 1345 "line": 21, 1346 "column": 82 1347 }, 1348 "end": { 1349 "line": 21, 1350 "column": 94 1351 } 1352 } 1353 }, 1354 "typeParams": { 1355 "type": "TSTypeParameterInstantiation", 1356 "params": [ 1357 { 1358 "type": "ETSTypeReference", 1359 "part": { 1360 "type": "ETSTypeReferencePart", 1361 "name": { 1362 "type": "Identifier", 1363 "name": "Value", 1364 "decorators": [], 1365 "loc": { 1366 "start": { 1367 "line": 21, 1368 "column": 95 1369 }, 1370 "end": { 1371 "line": 21, 1372 "column": 100 1373 } 1374 } 1375 }, 1376 "loc": { 1377 "start": { 1378 "line": 21, 1379 "column": 95 1380 }, 1381 "end": { 1382 "line": 21, 1383 "column": 101 1384 } 1385 } 1386 }, 1387 "loc": { 1388 "start": { 1389 "line": 21, 1390 "column": 95 1391 }, 1392 "end": { 1393 "line": 21, 1394 "column": 101 1395 } 1396 } 1397 } 1398 ], 1399 "loc": { 1400 "start": { 1401 "line": 21, 1402 "column": 94 1403 }, 1404 "end": { 1405 "line": 21, 1406 "column": 101 1407 } 1408 } 1409 }, 1410 "loc": { 1411 "start": { 1412 "line": 21, 1413 "column": 82 1414 }, 1415 "end": { 1416 "line": 22, 1417 "column": 2 1418 } 1419 } 1420 }, 1421 "loc": { 1422 "start": { 1423 "line": 21, 1424 "column": 82 1425 }, 1426 "end": { 1427 "line": 22, 1428 "column": 2 1429 } 1430 } 1431 }, 1432 "typeParameters": { 1433 "type": "TSTypeParameterDeclaration", 1434 "params": [ 1435 { 1436 "type": "TSTypeParameter", 1437 "name": { 1438 "type": "Identifier", 1439 "name": "Value", 1440 "decorators": [], 1441 "loc": { 1442 "start": { 1443 "line": 21, 1444 "column": 9 1445 }, 1446 "end": { 1447 "line": 21, 1448 "column": 14 1449 } 1450 } 1451 }, 1452 "loc": { 1453 "start": { 1454 "line": 1, 1455 "column": 1 1456 }, 1457 "end": { 1458 "line": 1, 1459 "column": 1 1460 } 1461 } 1462 } 1463 ], 1464 "loc": { 1465 "start": { 1466 "line": 1, 1467 "column": 1 1468 }, 1469 "end": { 1470 "line": 1, 1471 "column": 1 1472 } 1473 } 1474 }, 1475 "body": { 1476 "type": "BlockStatement", 1477 "statements": [], 1478 "loc": { 1479 "start": { 1480 "line": 1, 1481 "column": 1 1482 }, 1483 "end": { 1484 "line": 1, 1485 "column": 1 1486 } 1487 } 1488 }, 1489 "loc": { 1490 "start": { 1491 "line": 728, 1492 "column": 1 1493 }, 1494 "end": { 1495 "line": 728, 1496 "column": 1 1497 } 1498 } 1499 }, 1500 "loc": { 1501 "start": { 1502 "line": 1, 1503 "column": 1 1504 }, 1505 "end": { 1506 "line": 1, 1507 "column": 1 1508 } 1509 } 1510 }, 1511 "overloads": [], 1512 "decorators": [], 1513 "loc": { 1514 "start": { 1515 "line": 21, 1516 "column": 5 1517 }, 1518 "end": { 1519 "line": 1, 1520 "column": 1 1521 } 1522 } 1523 } 1524 ], 1525 "decorators": [], 1526 "loc": { 1527 "start": { 1528 "line": 21, 1529 "column": 5 1530 }, 1531 "end": { 1532 "line": 22, 1533 "column": 2 1534 } 1535 } 1536 } 1537 ], 1538 "loc": { 1539 "start": { 1540 "line": 20, 1541 "column": 25 1542 }, 1543 "end": { 1544 "line": 22, 1545 "column": 2 1546 } 1547 } 1548 }, 1549 "id": { 1550 "type": "Identifier", 1551 "name": "StateManager", 1552 "decorators": [], 1553 "loc": { 1554 "start": { 1555 "line": 20, 1556 "column": 11 1557 }, 1558 "end": { 1559 "line": 20, 1560 "column": 23 1561 } 1562 } 1563 }, 1564 "extends": [], 1565 "loc": { 1566 "start": { 1567 "line": 20, 1568 "column": 1 1569 }, 1570 "end": { 1571 "line": 24, 1572 "column": 10 1573 } 1574 } 1575 }, 1576 { 1577 "type": "TSInterfaceDeclaration", 1578 "body": { 1579 "type": "TSInterfaceBody", 1580 "body": [], 1581 "loc": { 1582 "start": { 1583 "line": 24, 1584 "column": 31 1585 }, 1586 "end": { 1587 "line": 24, 1588 "column": 33 1589 } 1590 } 1591 }, 1592 "id": { 1593 "type": "Identifier", 1594 "name": "ValueTracker", 1595 "decorators": [], 1596 "loc": { 1597 "start": { 1598 "line": 24, 1599 "column": 11 1600 }, 1601 "end": { 1602 "line": 24, 1603 "column": 23 1604 } 1605 } 1606 }, 1607 "extends": [], 1608 "typeParameters": { 1609 "type": "TSTypeParameterDeclaration", 1610 "params": [ 1611 { 1612 "type": "TSTypeParameter", 1613 "name": { 1614 "type": "Identifier", 1615 "name": "Value", 1616 "decorators": [], 1617 "loc": { 1618 "start": { 1619 "line": 24, 1620 "column": 24 1621 }, 1622 "end": { 1623 "line": 24, 1624 "column": 29 1625 } 1626 } 1627 }, 1628 "loc": { 1629 "start": { 1630 "line": 24, 1631 "column": 24 1632 }, 1633 "end": { 1634 "line": 24, 1635 "column": 30 1636 } 1637 } 1638 } 1639 ], 1640 "loc": { 1641 "start": { 1642 "line": 24, 1643 "column": 23 1644 }, 1645 "end": { 1646 "line": 24, 1647 "column": 30 1648 } 1649 } 1650 }, 1651 "loc": { 1652 "start": { 1653 "line": 24, 1654 "column": 1 1655 }, 1656 "end": { 1657 "line": 26, 1658 "column": 6 1659 } 1660 } 1661 }, 1662 { 1663 "type": "ClassDeclaration", 1664 "definition": { 1665 "id": { 1666 "type": "Identifier", 1667 "name": "StateManagerImpl", 1668 "decorators": [], 1669 "loc": { 1670 "start": { 1671 "line": 26, 1672 "column": 7 1673 }, 1674 "end": { 1675 "line": 26, 1676 "column": 23 1677 } 1678 } 1679 }, 1680 "superClass": null, 1681 "implements": [ 1682 { 1683 "type": "TSClassImplements", 1684 "expression": { 1685 "type": "ETSTypeReference", 1686 "part": { 1687 "type": "ETSTypeReferencePart", 1688 "name": { 1689 "type": "Identifier", 1690 "name": "StateManager", 1691 "decorators": [], 1692 "loc": { 1693 "start": { 1694 "line": 26, 1695 "column": 35 1696 }, 1697 "end": { 1698 "line": 26, 1699 "column": 47 1700 } 1701 } 1702 }, 1703 "loc": { 1704 "start": { 1705 "line": 26, 1706 "column": 35 1707 }, 1708 "end": { 1709 "line": 26, 1710 "column": 49 1711 } 1712 } 1713 }, 1714 "loc": { 1715 "start": { 1716 "line": 26, 1717 "column": 35 1718 }, 1719 "end": { 1720 "line": 26, 1721 "column": 49 1722 } 1723 } 1724 }, 1725 "loc": { 1726 "start": { 1727 "line": 26, 1728 "column": 35 1729 }, 1730 "end": { 1731 "line": 26, 1732 "column": 49 1733 } 1734 } 1735 } 1736 ], 1737 "body": [ 1738 { 1739 "type": "MethodDefinition", 1740 "key": { 1741 "type": "Identifier", 1742 "name": "foo", 1743 "decorators": [], 1744 "loc": { 1745 "start": { 1746 "line": 27, 1747 "column": 5 1748 }, 1749 "end": { 1750 "line": 27, 1751 "column": 8 1752 } 1753 } 1754 }, 1755 "kind": "method", 1756 "accessibility": "public", 1757 "static": false, 1758 "optional": false, 1759 "computed": false, 1760 "value": { 1761 "type": "FunctionExpression", 1762 "function": { 1763 "type": "ScriptFunction", 1764 "id": { 1765 "type": "Identifier", 1766 "name": "foo", 1767 "decorators": [], 1768 "loc": { 1769 "start": { 1770 "line": 27, 1771 "column": 5 1772 }, 1773 "end": { 1774 "line": 27, 1775 "column": 8 1776 } 1777 } 1778 }, 1779 "generator": false, 1780 "async": false, 1781 "expression": false, 1782 "params": [ 1783 { 1784 "type": "ETSParameterExpression", 1785 "name": { 1786 "type": "Identifier", 1787 "name": "equivalent", 1788 "typeAnnotation": { 1789 "type": "ETSUnionType", 1790 "types": [ 1791 { 1792 "type": "ETSTypeReference", 1793 "part": { 1794 "type": "ETSTypeReferencePart", 1795 "name": { 1796 "type": "Identifier", 1797 "name": "ValueTracker", 1798 "decorators": [], 1799 "loc": { 1800 "start": { 1801 "line": 27, 1802 "column": 29 1803 }, 1804 "end": { 1805 "line": 27, 1806 "column": 41 1807 } 1808 } 1809 }, 1810 "typeParams": { 1811 "type": "TSTypeParameterInstantiation", 1812 "params": [ 1813 { 1814 "type": "ETSTypeReference", 1815 "part": { 1816 "type": "ETSTypeReferencePart", 1817 "name": { 1818 "type": "Identifier", 1819 "name": "Value", 1820 "decorators": [], 1821 "loc": { 1822 "start": { 1823 "line": 27, 1824 "column": 42 1825 }, 1826 "end": { 1827 "line": 27, 1828 "column": 47 1829 } 1830 } 1831 }, 1832 "loc": { 1833 "start": { 1834 "line": 27, 1835 "column": 42 1836 }, 1837 "end": { 1838 "line": 27, 1839 "column": 48 1840 } 1841 } 1842 }, 1843 "loc": { 1844 "start": { 1845 "line": 27, 1846 "column": 42 1847 }, 1848 "end": { 1849 "line": 27, 1850 "column": 48 1851 } 1852 } 1853 } 1854 ], 1855 "loc": { 1856 "start": { 1857 "line": 27, 1858 "column": 41 1859 }, 1860 "end": { 1861 "line": 27, 1862 "column": 48 1863 } 1864 } 1865 }, 1866 "loc": { 1867 "start": { 1868 "line": 27, 1869 "column": 29 1870 }, 1871 "end": { 1872 "line": 27, 1873 "column": 49 1874 } 1875 } 1876 }, 1877 "loc": { 1878 "start": { 1879 "line": 27, 1880 "column": 29 1881 }, 1882 "end": { 1883 "line": 27, 1884 "column": 49 1885 } 1886 } 1887 }, 1888 { 1889 "type": "ETSUndefinedType", 1890 "loc": { 1891 "start": { 1892 "line": 27, 1893 "column": 27 1894 }, 1895 "end": { 1896 "line": 27, 1897 "column": 28 1898 } 1899 } 1900 } 1901 ], 1902 "loc": { 1903 "start": { 1904 "line": 27, 1905 "column": 29 1906 }, 1907 "end": { 1908 "line": 27, 1909 "column": 49 1910 } 1911 } 1912 }, 1913 "decorators": [], 1914 "loc": { 1915 "start": { 1916 "line": 27, 1917 "column": 17 1918 }, 1919 "end": { 1920 "line": 27, 1921 "column": 49 1922 } 1923 } 1924 }, 1925 "loc": { 1926 "start": { 1927 "line": 27, 1928 "column": 17 1929 }, 1930 "end": { 1931 "line": 27, 1932 "column": 49 1933 } 1934 } 1935 }, 1936 { 1937 "type": "ETSParameterExpression", 1938 "name": { 1939 "type": "Identifier", 1940 "name": "tracker", 1941 "typeAnnotation": { 1942 "type": "ETSUnionType", 1943 "types": [ 1944 { 1945 "type": "ETSTypeReference", 1946 "part": { 1947 "type": "ETSTypeReferencePart", 1948 "name": { 1949 "type": "Identifier", 1950 "name": "ValueTracker", 1951 "decorators": [], 1952 "loc": { 1953 "start": { 1954 "line": 27, 1955 "column": 59 1956 }, 1957 "end": { 1958 "line": 27, 1959 "column": 71 1960 } 1961 } 1962 }, 1963 "typeParams": { 1964 "type": "TSTypeParameterInstantiation", 1965 "params": [ 1966 { 1967 "type": "ETSTypeReference", 1968 "part": { 1969 "type": "ETSTypeReferencePart", 1970 "name": { 1971 "type": "Identifier", 1972 "name": "Value", 1973 "decorators": [], 1974 "loc": { 1975 "start": { 1976 "line": 27, 1977 "column": 72 1978 }, 1979 "end": { 1980 "line": 27, 1981 "column": 77 1982 } 1983 } 1984 }, 1985 "loc": { 1986 "start": { 1987 "line": 27, 1988 "column": 72 1989 }, 1990 "end": { 1991 "line": 27, 1992 "column": 78 1993 } 1994 } 1995 }, 1996 "loc": { 1997 "start": { 1998 "line": 27, 1999 "column": 72 2000 }, 2001 "end": { 2002 "line": 27, 2003 "column": 78 2004 } 2005 } 2006 } 2007 ], 2008 "loc": { 2009 "start": { 2010 "line": 27, 2011 "column": 71 2012 }, 2013 "end": { 2014 "line": 27, 2015 "column": 78 2016 } 2017 } 2018 }, 2019 "loc": { 2020 "start": { 2021 "line": 27, 2022 "column": 59 2023 }, 2024 "end": { 2025 "line": 27, 2026 "column": 79 2027 } 2028 } 2029 }, 2030 "loc": { 2031 "start": { 2032 "line": 27, 2033 "column": 59 2034 }, 2035 "end": { 2036 "line": 27, 2037 "column": 79 2038 } 2039 } 2040 }, 2041 { 2042 "type": "ETSUndefinedType", 2043 "loc": { 2044 "start": { 2045 "line": 27, 2046 "column": 57 2047 }, 2048 "end": { 2049 "line": 27, 2050 "column": 58 2051 } 2052 } 2053 } 2054 ], 2055 "loc": { 2056 "start": { 2057 "line": 27, 2058 "column": 59 2059 }, 2060 "end": { 2061 "line": 27, 2062 "column": 79 2063 } 2064 } 2065 }, 2066 "decorators": [], 2067 "loc": { 2068 "start": { 2069 "line": 27, 2070 "column": 50 2071 }, 2072 "end": { 2073 "line": 27, 2074 "column": 79 2075 } 2076 } 2077 }, 2078 "loc": { 2079 "start": { 2080 "line": 27, 2081 "column": 50 2082 }, 2083 "end": { 2084 "line": 27, 2085 "column": 79 2086 } 2087 } 2088 } 2089 ], 2090 "returnType": { 2091 "type": "ETSTypeReference", 2092 "part": { 2093 "type": "ETSTypeReferencePart", 2094 "name": { 2095 "type": "Identifier", 2096 "name": "StateImpl", 2097 "decorators": [], 2098 "loc": { 2099 "start": { 2100 "line": 27, 2101 "column": 81 2102 }, 2103 "end": { 2104 "line": 27, 2105 "column": 90 2106 } 2107 } 2108 }, 2109 "typeParams": { 2110 "type": "TSTypeParameterInstantiation", 2111 "params": [ 2112 { 2113 "type": "ETSTypeReference", 2114 "part": { 2115 "type": "ETSTypeReferencePart", 2116 "name": { 2117 "type": "Identifier", 2118 "name": "Value", 2119 "decorators": [], 2120 "loc": { 2121 "start": { 2122 "line": 27, 2123 "column": 91 2124 }, 2125 "end": { 2126 "line": 27, 2127 "column": 96 2128 } 2129 } 2130 }, 2131 "loc": { 2132 "start": { 2133 "line": 27, 2134 "column": 91 2135 }, 2136 "end": { 2137 "line": 27, 2138 "column": 97 2139 } 2140 } 2141 }, 2142 "loc": { 2143 "start": { 2144 "line": 27, 2145 "column": 91 2146 }, 2147 "end": { 2148 "line": 27, 2149 "column": 97 2150 } 2151 } 2152 } 2153 ], 2154 "loc": { 2155 "start": { 2156 "line": 27, 2157 "column": 90 2158 }, 2159 "end": { 2160 "line": 27, 2161 "column": 97 2162 } 2163 } 2164 }, 2165 "loc": { 2166 "start": { 2167 "line": 27, 2168 "column": 81 2169 }, 2170 "end": { 2171 "line": 27, 2172 "column": 99 2173 } 2174 } 2175 }, 2176 "loc": { 2177 "start": { 2178 "line": 27, 2179 "column": 81 2180 }, 2181 "end": { 2182 "line": 27, 2183 "column": 99 2184 } 2185 } 2186 }, 2187 "typeParameters": { 2188 "type": "TSTypeParameterDeclaration", 2189 "params": [ 2190 { 2191 "type": "TSTypeParameter", 2192 "name": { 2193 "type": "Identifier", 2194 "name": "Value", 2195 "decorators": [], 2196 "loc": { 2197 "start": { 2198 "line": 27, 2199 "column": 9 2200 }, 2201 "end": { 2202 "line": 27, 2203 "column": 14 2204 } 2205 } 2206 }, 2207 "loc": { 2208 "start": { 2209 "line": 27, 2210 "column": 9 2211 }, 2212 "end": { 2213 "line": 27, 2214 "column": 15 2215 } 2216 } 2217 } 2218 ], 2219 "loc": { 2220 "start": { 2221 "line": 27, 2222 "column": 8 2223 }, 2224 "end": { 2225 "line": 27, 2226 "column": 15 2227 } 2228 } 2229 }, 2230 "body": { 2231 "type": "BlockStatement", 2232 "statements": [ 2233 { 2234 "type": "ReturnStatement", 2235 "argument": { 2236 "type": "ETSNewClassInstanceExpression", 2237 "typeReference": { 2238 "type": "ETSTypeReference", 2239 "part": { 2240 "type": "ETSTypeReferencePart", 2241 "name": { 2242 "type": "Identifier", 2243 "name": "StateImpl", 2244 "decorators": [], 2245 "loc": { 2246 "start": { 2247 "line": 28, 2248 "column": 20 2249 }, 2250 "end": { 2251 "line": 28, 2252 "column": 29 2253 } 2254 } 2255 }, 2256 "typeParams": { 2257 "type": "TSTypeParameterInstantiation", 2258 "params": [ 2259 { 2260 "type": "ETSTypeReference", 2261 "part": { 2262 "type": "ETSTypeReferencePart", 2263 "name": { 2264 "type": "Identifier", 2265 "name": "Value", 2266 "decorators": [], 2267 "loc": { 2268 "start": { 2269 "line": 28, 2270 "column": 30 2271 }, 2272 "end": { 2273 "line": 28, 2274 "column": 35 2275 } 2276 } 2277 }, 2278 "loc": { 2279 "start": { 2280 "line": 28, 2281 "column": 30 2282 }, 2283 "end": { 2284 "line": 28, 2285 "column": 36 2286 } 2287 } 2288 }, 2289 "loc": { 2290 "start": { 2291 "line": 28, 2292 "column": 30 2293 }, 2294 "end": { 2295 "line": 28, 2296 "column": 36 2297 } 2298 } 2299 } 2300 ], 2301 "loc": { 2302 "start": { 2303 "line": 28, 2304 "column": 29 2305 }, 2306 "end": { 2307 "line": 28, 2308 "column": 36 2309 } 2310 } 2311 }, 2312 "loc": { 2313 "start": { 2314 "line": 28, 2315 "column": 20 2316 }, 2317 "end": { 2318 "line": 28, 2319 "column": 37 2320 } 2321 } 2322 }, 2323 "loc": { 2324 "start": { 2325 "line": 28, 2326 "column": 20 2327 }, 2328 "end": { 2329 "line": 28, 2330 "column": 37 2331 } 2332 } 2333 }, 2334 "arguments": [], 2335 "loc": { 2336 "start": { 2337 "line": 28, 2338 "column": 16 2339 }, 2340 "end": { 2341 "line": 29, 2342 "column": 6 2343 } 2344 } 2345 }, 2346 "loc": { 2347 "start": { 2348 "line": 28, 2349 "column": 9 2350 }, 2351 "end": { 2352 "line": 29, 2353 "column": 6 2354 } 2355 } 2356 } 2357 ], 2358 "loc": { 2359 "start": { 2360 "line": 27, 2361 "column": 98 2362 }, 2363 "end": { 2364 "line": 29, 2365 "column": 6 2366 } 2367 } 2368 }, 2369 "loc": { 2370 "start": { 2371 "line": 27, 2372 "column": 8 2373 }, 2374 "end": { 2375 "line": 29, 2376 "column": 6 2377 } 2378 } 2379 }, 2380 "loc": { 2381 "start": { 2382 "line": 27, 2383 "column": 8 2384 }, 2385 "end": { 2386 "line": 29, 2387 "column": 6 2388 } 2389 } 2390 }, 2391 "overloads": [ 2392 { 2393 "type": "MethodDefinition", 2394 "key": { 2395 "type": "Identifier", 2396 "name": "foo", 2397 "decorators": [], 2398 "loc": { 2399 "start": { 2400 "line": 27, 2401 "column": 5 2402 }, 2403 "end": { 2404 "line": 27, 2405 "column": 8 2406 } 2407 } 2408 }, 2409 "kind": "method", 2410 "accessibility": "public", 2411 "static": false, 2412 "optional": false, 2413 "computed": false, 2414 "value": { 2415 "type": "FunctionExpression", 2416 "function": { 2417 "type": "ScriptFunction", 2418 "id": { 2419 "type": "Identifier", 2420 "name": "foo", 2421 "decorators": [], 2422 "loc": { 2423 "start": { 2424 "line": 27, 2425 "column": 5 2426 }, 2427 "end": { 2428 "line": 27, 2429 "column": 8 2430 } 2431 } 2432 }, 2433 "generator": false, 2434 "async": false, 2435 "expression": false, 2436 "params": [ 2437 { 2438 "type": "ETSParameterExpression", 2439 "name": { 2440 "type": "Identifier", 2441 "name": "equivalent", 2442 "typeAnnotation": { 2443 "type": "ETSUnionType", 2444 "types": [ 2445 { 2446 "type": "ETSTypeReference", 2447 "part": { 2448 "type": "ETSTypeReferencePart", 2449 "name": { 2450 "type": "Identifier", 2451 "name": "ValueTracker", 2452 "decorators": [], 2453 "loc": { 2454 "start": { 2455 "line": 27, 2456 "column": 29 2457 }, 2458 "end": { 2459 "line": 27, 2460 "column": 41 2461 } 2462 } 2463 }, 2464 "typeParams": { 2465 "type": "TSTypeParameterInstantiation", 2466 "params": [ 2467 { 2468 "type": "ETSTypeReference", 2469 "part": { 2470 "type": "ETSTypeReferencePart", 2471 "name": { 2472 "type": "Identifier", 2473 "name": "Value", 2474 "decorators": [], 2475 "loc": { 2476 "start": { 2477 "line": 27, 2478 "column": 42 2479 }, 2480 "end": { 2481 "line": 27, 2482 "column": 47 2483 } 2484 } 2485 }, 2486 "loc": { 2487 "start": { 2488 "line": 27, 2489 "column": 42 2490 }, 2491 "end": { 2492 "line": 27, 2493 "column": 48 2494 } 2495 } 2496 }, 2497 "loc": { 2498 "start": { 2499 "line": 27, 2500 "column": 42 2501 }, 2502 "end": { 2503 "line": 27, 2504 "column": 48 2505 } 2506 } 2507 } 2508 ], 2509 "loc": { 2510 "start": { 2511 "line": 27, 2512 "column": 41 2513 }, 2514 "end": { 2515 "line": 27, 2516 "column": 48 2517 } 2518 } 2519 }, 2520 "loc": { 2521 "start": { 2522 "line": 27, 2523 "column": 29 2524 }, 2525 "end": { 2526 "line": 27, 2527 "column": 49 2528 } 2529 } 2530 }, 2531 "loc": { 2532 "start": { 2533 "line": 27, 2534 "column": 29 2535 }, 2536 "end": { 2537 "line": 27, 2538 "column": 49 2539 } 2540 } 2541 }, 2542 { 2543 "type": "ETSUndefinedType", 2544 "loc": { 2545 "start": { 2546 "line": 1, 2547 "column": 1 2548 }, 2549 "end": { 2550 "line": 1, 2551 "column": 1 2552 } 2553 } 2554 } 2555 ], 2556 "loc": { 2557 "start": { 2558 "line": 1, 2559 "column": 1 2560 }, 2561 "end": { 2562 "line": 1, 2563 "column": 1 2564 } 2565 } 2566 }, 2567 "decorators": [], 2568 "loc": { 2569 "start": { 2570 "line": 27, 2571 "column": 17 2572 }, 2573 "end": { 2574 "line": 27, 2575 "column": 49 2576 } 2577 } 2578 }, 2579 "loc": { 2580 "start": { 2581 "line": 1, 2582 "column": 1 2583 }, 2584 "end": { 2585 "line": 1, 2586 "column": 1 2587 } 2588 } 2589 } 2590 ], 2591 "returnType": { 2592 "type": "ETSTypeReference", 2593 "part": { 2594 "type": "ETSTypeReferencePart", 2595 "name": { 2596 "type": "Identifier", 2597 "name": "StateImpl", 2598 "decorators": [], 2599 "loc": { 2600 "start": { 2601 "line": 27, 2602 "column": 81 2603 }, 2604 "end": { 2605 "line": 27, 2606 "column": 90 2607 } 2608 } 2609 }, 2610 "typeParams": { 2611 "type": "TSTypeParameterInstantiation", 2612 "params": [ 2613 { 2614 "type": "ETSTypeReference", 2615 "part": { 2616 "type": "ETSTypeReferencePart", 2617 "name": { 2618 "type": "Identifier", 2619 "name": "Value", 2620 "decorators": [], 2621 "loc": { 2622 "start": { 2623 "line": 27, 2624 "column": 91 2625 }, 2626 "end": { 2627 "line": 27, 2628 "column": 96 2629 } 2630 } 2631 }, 2632 "loc": { 2633 "start": { 2634 "line": 27, 2635 "column": 91 2636 }, 2637 "end": { 2638 "line": 27, 2639 "column": 97 2640 } 2641 } 2642 }, 2643 "loc": { 2644 "start": { 2645 "line": 27, 2646 "column": 91 2647 }, 2648 "end": { 2649 "line": 27, 2650 "column": 97 2651 } 2652 } 2653 } 2654 ], 2655 "loc": { 2656 "start": { 2657 "line": 27, 2658 "column": 90 2659 }, 2660 "end": { 2661 "line": 27, 2662 "column": 97 2663 } 2664 } 2665 }, 2666 "loc": { 2667 "start": { 2668 "line": 27, 2669 "column": 81 2670 }, 2671 "end": { 2672 "line": 27, 2673 "column": 99 2674 } 2675 } 2676 }, 2677 "loc": { 2678 "start": { 2679 "line": 27, 2680 "column": 81 2681 }, 2682 "end": { 2683 "line": 27, 2684 "column": 99 2685 } 2686 } 2687 }, 2688 "typeParameters": { 2689 "type": "TSTypeParameterDeclaration", 2690 "params": [ 2691 { 2692 "type": "TSTypeParameter", 2693 "name": { 2694 "type": "Identifier", 2695 "name": "Value", 2696 "decorators": [], 2697 "loc": { 2698 "start": { 2699 "line": 27, 2700 "column": 9 2701 }, 2702 "end": { 2703 "line": 27, 2704 "column": 14 2705 } 2706 } 2707 }, 2708 "loc": { 2709 "start": { 2710 "line": 1, 2711 "column": 1 2712 }, 2713 "end": { 2714 "line": 1, 2715 "column": 1 2716 } 2717 } 2718 } 2719 ], 2720 "loc": { 2721 "start": { 2722 "line": 1, 2723 "column": 1 2724 }, 2725 "end": { 2726 "line": 1, 2727 "column": 1 2728 } 2729 } 2730 }, 2731 "body": { 2732 "type": "BlockStatement", 2733 "statements": [ 2734 { 2735 "type": "ReturnStatement", 2736 "argument": { 2737 "type": "CallExpression", 2738 "callee": { 2739 "type": "MemberExpression", 2740 "object": { 2741 "type": "ThisExpression", 2742 "loc": { 2743 "start": { 2744 "line": 1, 2745 "column": 1 2746 }, 2747 "end": { 2748 "line": 1, 2749 "column": 1 2750 } 2751 } 2752 }, 2753 "property": { 2754 "type": "Identifier", 2755 "name": "foo", 2756 "decorators": [], 2757 "loc": { 2758 "start": { 2759 "line": 1, 2760 "column": 1 2761 }, 2762 "end": { 2763 "line": 1, 2764 "column": 1 2765 } 2766 } 2767 }, 2768 "computed": false, 2769 "optional": false, 2770 "loc": { 2771 "start": { 2772 "line": 1, 2773 "column": 1 2774 }, 2775 "end": { 2776 "line": 1, 2777 "column": 1 2778 } 2779 } 2780 }, 2781 "arguments": [ 2782 { 2783 "type": "Identifier", 2784 "name": "equivalent", 2785 "typeAnnotation": { 2786 "type": "ETSUnionType", 2787 "types": [ 2788 { 2789 "type": "ETSTypeReference", 2790 "part": { 2791 "type": "ETSTypeReferencePart", 2792 "name": { 2793 "type": "Identifier", 2794 "name": "ValueTracker", 2795 "decorators": [], 2796 "loc": { 2797 "start": { 2798 "line": 27, 2799 "column": 29 2800 }, 2801 "end": { 2802 "line": 27, 2803 "column": 41 2804 } 2805 } 2806 }, 2807 "typeParams": { 2808 "type": "TSTypeParameterInstantiation", 2809 "params": [ 2810 { 2811 "type": "ETSTypeReference", 2812 "part": { 2813 "type": "ETSTypeReferencePart", 2814 "name": { 2815 "type": "Identifier", 2816 "name": "Value", 2817 "decorators": [], 2818 "loc": { 2819 "start": { 2820 "line": 27, 2821 "column": 42 2822 }, 2823 "end": { 2824 "line": 27, 2825 "column": 47 2826 } 2827 } 2828 }, 2829 "loc": { 2830 "start": { 2831 "line": 27, 2832 "column": 42 2833 }, 2834 "end": { 2835 "line": 27, 2836 "column": 48 2837 } 2838 } 2839 }, 2840 "loc": { 2841 "start": { 2842 "line": 27, 2843 "column": 42 2844 }, 2845 "end": { 2846 "line": 27, 2847 "column": 48 2848 } 2849 } 2850 } 2851 ], 2852 "loc": { 2853 "start": { 2854 "line": 27, 2855 "column": 41 2856 }, 2857 "end": { 2858 "line": 27, 2859 "column": 48 2860 } 2861 } 2862 }, 2863 "loc": { 2864 "start": { 2865 "line": 27, 2866 "column": 29 2867 }, 2868 "end": { 2869 "line": 27, 2870 "column": 49 2871 } 2872 } 2873 }, 2874 "loc": { 2875 "start": { 2876 "line": 27, 2877 "column": 29 2878 }, 2879 "end": { 2880 "line": 27, 2881 "column": 49 2882 } 2883 } 2884 }, 2885 { 2886 "type": "ETSUndefinedType", 2887 "loc": { 2888 "start": { 2889 "line": 1, 2890 "column": 1 2891 }, 2892 "end": { 2893 "line": 1, 2894 "column": 1 2895 } 2896 } 2897 } 2898 ], 2899 "loc": { 2900 "start": { 2901 "line": 1, 2902 "column": 1 2903 }, 2904 "end": { 2905 "line": 1, 2906 "column": 1 2907 } 2908 } 2909 }, 2910 "decorators": [], 2911 "loc": { 2912 "start": { 2913 "line": 27, 2914 "column": 17 2915 }, 2916 "end": { 2917 "line": 27, 2918 "column": 49 2919 } 2920 } 2921 }, 2922 { 2923 "type": "UndefinedLiteral", 2924 "value": undefined, 2925 "loc": { 2926 "start": { 2927 "line": 1, 2928 "column": 1 2929 }, 2930 "end": { 2931 "line": 1, 2932 "column": 1 2933 } 2934 } 2935 } 2936 ], 2937 "optional": false, 2938 "typeParameters": { 2939 "type": "TSTypeParameterInstantiation", 2940 "params": [ 2941 { 2942 "type": "ETSTypeReference", 2943 "part": { 2944 "type": "ETSTypeReferencePart", 2945 "name": { 2946 "type": "Identifier", 2947 "name": "Value", 2948 "decorators": [], 2949 "loc": { 2950 "start": { 2951 "line": 1, 2952 "column": 1 2953 }, 2954 "end": { 2955 "line": 1, 2956 "column": 1 2957 } 2958 } 2959 }, 2960 "loc": { 2961 "start": { 2962 "line": 1, 2963 "column": 1 2964 }, 2965 "end": { 2966 "line": 1, 2967 "column": 1 2968 } 2969 } 2970 }, 2971 "loc": { 2972 "start": { 2973 "line": 1, 2974 "column": 1 2975 }, 2976 "end": { 2977 "line": 1, 2978 "column": 1 2979 } 2980 } 2981 } 2982 ], 2983 "loc": { 2984 "start": { 2985 "line": 1, 2986 "column": 1 2987 }, 2988 "end": { 2989 "line": 1, 2990 "column": 1 2991 } 2992 } 2993 }, 2994 "loc": { 2995 "start": { 2996 "line": 27, 2997 "column": 5 2998 }, 2999 "end": { 3000 "line": 29, 3001 "column": 6 3002 } 3003 } 3004 }, 3005 "loc": { 3006 "start": { 3007 "line": 1, 3008 "column": 1 3009 }, 3010 "end": { 3011 "line": 1, 3012 "column": 1 3013 } 3014 } 3015 } 3016 ], 3017 "loc": { 3018 "start": { 3019 "line": 1, 3020 "column": 1 3021 }, 3022 "end": { 3023 "line": 1, 3024 "column": 1 3025 } 3026 } 3027 }, 3028 "loc": { 3029 "start": { 3030 "line": 915, 3031 "column": 1 3032 }, 3033 "end": { 3034 "line": 915, 3035 "column": 1 3036 } 3037 } 3038 }, 3039 "loc": { 3040 "start": { 3041 "line": 1, 3042 "column": 1 3043 }, 3044 "end": { 3045 "line": 1, 3046 "column": 1 3047 } 3048 } 3049 }, 3050 "overloads": [], 3051 "decorators": [], 3052 "loc": { 3053 "start": { 3054 "line": 27, 3055 "column": 5 3056 }, 3057 "end": { 3058 "line": 1, 3059 "column": 1 3060 } 3061 } 3062 }, 3063 { 3064 "type": "MethodDefinition", 3065 "key": { 3066 "type": "Identifier", 3067 "name": "foo", 3068 "decorators": [], 3069 "loc": { 3070 "start": { 3071 "line": 27, 3072 "column": 5 3073 }, 3074 "end": { 3075 "line": 27, 3076 "column": 8 3077 } 3078 } 3079 }, 3080 "kind": "method", 3081 "accessibility": "public", 3082 "static": false, 3083 "optional": false, 3084 "computed": false, 3085 "value": { 3086 "type": "FunctionExpression", 3087 "function": { 3088 "type": "ScriptFunction", 3089 "id": { 3090 "type": "Identifier", 3091 "name": "foo", 3092 "decorators": [], 3093 "loc": { 3094 "start": { 3095 "line": 27, 3096 "column": 5 3097 }, 3098 "end": { 3099 "line": 27, 3100 "column": 8 3101 } 3102 } 3103 }, 3104 "generator": false, 3105 "async": false, 3106 "expression": false, 3107 "params": [], 3108 "returnType": { 3109 "type": "ETSTypeReference", 3110 "part": { 3111 "type": "ETSTypeReferencePart", 3112 "name": { 3113 "type": "Identifier", 3114 "name": "StateImpl", 3115 "decorators": [], 3116 "loc": { 3117 "start": { 3118 "line": 27, 3119 "column": 81 3120 }, 3121 "end": { 3122 "line": 27, 3123 "column": 90 3124 } 3125 } 3126 }, 3127 "typeParams": { 3128 "type": "TSTypeParameterInstantiation", 3129 "params": [ 3130 { 3131 "type": "ETSTypeReference", 3132 "part": { 3133 "type": "ETSTypeReferencePart", 3134 "name": { 3135 "type": "Identifier", 3136 "name": "Value", 3137 "decorators": [], 3138 "loc": { 3139 "start": { 3140 "line": 27, 3141 "column": 91 3142 }, 3143 "end": { 3144 "line": 27, 3145 "column": 96 3146 } 3147 } 3148 }, 3149 "loc": { 3150 "start": { 3151 "line": 27, 3152 "column": 91 3153 }, 3154 "end": { 3155 "line": 27, 3156 "column": 97 3157 } 3158 } 3159 }, 3160 "loc": { 3161 "start": { 3162 "line": 27, 3163 "column": 91 3164 }, 3165 "end": { 3166 "line": 27, 3167 "column": 97 3168 } 3169 } 3170 } 3171 ], 3172 "loc": { 3173 "start": { 3174 "line": 27, 3175 "column": 90 3176 }, 3177 "end": { 3178 "line": 27, 3179 "column": 97 3180 } 3181 } 3182 }, 3183 "loc": { 3184 "start": { 3185 "line": 27, 3186 "column": 81 3187 }, 3188 "end": { 3189 "line": 27, 3190 "column": 99 3191 } 3192 } 3193 }, 3194 "loc": { 3195 "start": { 3196 "line": 27, 3197 "column": 81 3198 }, 3199 "end": { 3200 "line": 27, 3201 "column": 99 3202 } 3203 } 3204 }, 3205 "typeParameters": { 3206 "type": "TSTypeParameterDeclaration", 3207 "params": [ 3208 { 3209 "type": "TSTypeParameter", 3210 "name": { 3211 "type": "Identifier", 3212 "name": "Value", 3213 "decorators": [], 3214 "loc": { 3215 "start": { 3216 "line": 27, 3217 "column": 9 3218 }, 3219 "end": { 3220 "line": 27, 3221 "column": 14 3222 } 3223 } 3224 }, 3225 "loc": { 3226 "start": { 3227 "line": 1, 3228 "column": 1 3229 }, 3230 "end": { 3231 "line": 1, 3232 "column": 1 3233 } 3234 } 3235 } 3236 ], 3237 "loc": { 3238 "start": { 3239 "line": 1, 3240 "column": 1 3241 }, 3242 "end": { 3243 "line": 1, 3244 "column": 1 3245 } 3246 } 3247 }, 3248 "body": { 3249 "type": "BlockStatement", 3250 "statements": [ 3251 { 3252 "type": "ReturnStatement", 3253 "argument": { 3254 "type": "CallExpression", 3255 "callee": { 3256 "type": "MemberExpression", 3257 "object": { 3258 "type": "ThisExpression", 3259 "loc": { 3260 "start": { 3261 "line": 1, 3262 "column": 1 3263 }, 3264 "end": { 3265 "line": 1, 3266 "column": 1 3267 } 3268 } 3269 }, 3270 "property": { 3271 "type": "Identifier", 3272 "name": "foo", 3273 "decorators": [], 3274 "loc": { 3275 "start": { 3276 "line": 1, 3277 "column": 1 3278 }, 3279 "end": { 3280 "line": 1, 3281 "column": 1 3282 } 3283 } 3284 }, 3285 "computed": false, 3286 "optional": false, 3287 "loc": { 3288 "start": { 3289 "line": 1, 3290 "column": 1 3291 }, 3292 "end": { 3293 "line": 1, 3294 "column": 1 3295 } 3296 } 3297 }, 3298 "arguments": [ 3299 { 3300 "type": "UndefinedLiteral", 3301 "value": undefined, 3302 "loc": { 3303 "start": { 3304 "line": 1, 3305 "column": 1 3306 }, 3307 "end": { 3308 "line": 1, 3309 "column": 1 3310 } 3311 } 3312 }, 3313 { 3314 "type": "UndefinedLiteral", 3315 "value": undefined, 3316 "loc": { 3317 "start": { 3318 "line": 1, 3319 "column": 1 3320 }, 3321 "end": { 3322 "line": 1, 3323 "column": 1 3324 } 3325 } 3326 } 3327 ], 3328 "optional": false, 3329 "typeParameters": { 3330 "type": "TSTypeParameterInstantiation", 3331 "params": [ 3332 { 3333 "type": "ETSTypeReference", 3334 "part": { 3335 "type": "ETSTypeReferencePart", 3336 "name": { 3337 "type": "Identifier", 3338 "name": "Value", 3339 "decorators": [], 3340 "loc": { 3341 "start": { 3342 "line": 1, 3343 "column": 1 3344 }, 3345 "end": { 3346 "line": 1, 3347 "column": 1 3348 } 3349 } 3350 }, 3351 "loc": { 3352 "start": { 3353 "line": 1, 3354 "column": 1 3355 }, 3356 "end": { 3357 "line": 1, 3358 "column": 1 3359 } 3360 } 3361 }, 3362 "loc": { 3363 "start": { 3364 "line": 1, 3365 "column": 1 3366 }, 3367 "end": { 3368 "line": 1, 3369 "column": 1 3370 } 3371 } 3372 } 3373 ], 3374 "loc": { 3375 "start": { 3376 "line": 1, 3377 "column": 1 3378 }, 3379 "end": { 3380 "line": 1, 3381 "column": 1 3382 } 3383 } 3384 }, 3385 "loc": { 3386 "start": { 3387 "line": 27, 3388 "column": 5 3389 }, 3390 "end": { 3391 "line": 29, 3392 "column": 6 3393 } 3394 } 3395 }, 3396 "loc": { 3397 "start": { 3398 "line": 1, 3399 "column": 1 3400 }, 3401 "end": { 3402 "line": 1, 3403 "column": 1 3404 } 3405 } 3406 } 3407 ], 3408 "loc": { 3409 "start": { 3410 "line": 1, 3411 "column": 1 3412 }, 3413 "end": { 3414 "line": 1, 3415 "column": 1 3416 } 3417 } 3418 }, 3419 "loc": { 3420 "start": { 3421 "line": 915, 3422 "column": 1 3423 }, 3424 "end": { 3425 "line": 915, 3426 "column": 1 3427 } 3428 } 3429 }, 3430 "loc": { 3431 "start": { 3432 "line": 1, 3433 "column": 1 3434 }, 3435 "end": { 3436 "line": 1, 3437 "column": 1 3438 } 3439 } 3440 }, 3441 "overloads": [], 3442 "decorators": [], 3443 "loc": { 3444 "start": { 3445 "line": 27, 3446 "column": 5 3447 }, 3448 "end": { 3449 "line": 1, 3450 "column": 1 3451 } 3452 } 3453 } 3454 ], 3455 "decorators": [], 3456 "loc": { 3457 "start": { 3458 "line": 27, 3459 "column": 5 3460 }, 3461 "end": { 3462 "line": 29, 3463 "column": 6 3464 } 3465 } 3466 }, 3467 { 3468 "type": "MethodDefinition", 3469 "key": { 3470 "type": "Identifier", 3471 "name": "constructor", 3472 "decorators": [], 3473 "loc": { 3474 "start": { 3475 "line": 1, 3476 "column": 1 3477 }, 3478 "end": { 3479 "line": 1, 3480 "column": 1 3481 } 3482 } 3483 }, 3484 "kind": "constructor", 3485 "static": false, 3486 "optional": false, 3487 "computed": false, 3488 "value": { 3489 "type": "FunctionExpression", 3490 "function": { 3491 "type": "ScriptFunction", 3492 "id": { 3493 "type": "Identifier", 3494 "name": "constructor", 3495 "decorators": [], 3496 "loc": { 3497 "start": { 3498 "line": 1, 3499 "column": 1 3500 }, 3501 "end": { 3502 "line": 1, 3503 "column": 1 3504 } 3505 } 3506 }, 3507 "generator": false, 3508 "async": false, 3509 "expression": false, 3510 "params": [], 3511 "body": { 3512 "type": "BlockStatement", 3513 "statements": [], 3514 "loc": { 3515 "start": { 3516 "line": 1, 3517 "column": 1 3518 }, 3519 "end": { 3520 "line": 1, 3521 "column": 1 3522 } 3523 } 3524 }, 3525 "loc": { 3526 "start": { 3527 "line": 1, 3528 "column": 1 3529 }, 3530 "end": { 3531 "line": 1, 3532 "column": 1 3533 } 3534 } 3535 }, 3536 "loc": { 3537 "start": { 3538 "line": 1, 3539 "column": 1 3540 }, 3541 "end": { 3542 "line": 1, 3543 "column": 1 3544 } 3545 } 3546 }, 3547 "overloads": [], 3548 "decorators": [], 3549 "loc": { 3550 "start": { 3551 "line": 30, 3552 "column": 2 3553 }, 3554 "end": { 3555 "line": 30, 3556 "column": 2 3557 } 3558 } 3559 } 3560 ], 3561 "loc": { 3562 "start": { 3563 "line": 26, 3564 "column": 48 3565 }, 3566 "end": { 3567 "line": 30, 3568 "column": 2 3569 } 3570 } 3571 }, 3572 "loc": { 3573 "start": { 3574 "line": 26, 3575 "column": 1 3576 }, 3577 "end": { 3578 "line": 30, 3579 "column": 2 3580 } 3581 } 3582 }, 3583 { 3584 "type": "ClassDeclaration", 3585 "definition": { 3586 "id": { 3587 "type": "Identifier", 3588 "name": "ETSGLOBAL", 3589 "decorators": [], 3590 "loc": { 3591 "start": { 3592 "line": 1, 3593 "column": 1 3594 }, 3595 "end": { 3596 "line": 1, 3597 "column": 1 3598 } 3599 } 3600 }, 3601 "superClass": null, 3602 "implements": [], 3603 "body": [ 3604 { 3605 "type": "MethodDefinition", 3606 "key": { 3607 "type": "Identifier", 3608 "name": "_$init$_", 3609 "decorators": [], 3610 "loc": { 3611 "start": { 3612 "line": 1, 3613 "column": 1 3614 }, 3615 "end": { 3616 "line": 1, 3617 "column": 1 3618 } 3619 } 3620 }, 3621 "kind": "method", 3622 "accessibility": "public", 3623 "static": true, 3624 "optional": false, 3625 "computed": false, 3626 "value": { 3627 "type": "FunctionExpression", 3628 "function": { 3629 "type": "ScriptFunction", 3630 "id": { 3631 "type": "Identifier", 3632 "name": "_$init$_", 3633 "decorators": [], 3634 "loc": { 3635 "start": { 3636 "line": 1, 3637 "column": 1 3638 }, 3639 "end": { 3640 "line": 1, 3641 "column": 1 3642 } 3643 } 3644 }, 3645 "generator": false, 3646 "async": false, 3647 "expression": false, 3648 "params": [], 3649 "body": { 3650 "type": "BlockStatement", 3651 "statements": [], 3652 "loc": { 3653 "start": { 3654 "line": 1, 3655 "column": 1 3656 }, 3657 "end": { 3658 "line": 1, 3659 "column": 1 3660 } 3661 } 3662 }, 3663 "loc": { 3664 "start": { 3665 "line": 1, 3666 "column": 1 3667 }, 3668 "end": { 3669 "line": 1, 3670 "column": 1 3671 } 3672 } 3673 }, 3674 "loc": { 3675 "start": { 3676 "line": 1, 3677 "column": 1 3678 }, 3679 "end": { 3680 "line": 1, 3681 "column": 1 3682 } 3683 } 3684 }, 3685 "overloads": [], 3686 "decorators": [], 3687 "loc": { 3688 "start": { 3689 "line": 1, 3690 "column": 1 3691 }, 3692 "end": { 3693 "line": 1, 3694 "column": 1 3695 } 3696 } 3697 } 3698 ], 3699 "loc": { 3700 "start": { 3701 "line": 1, 3702 "column": 1 3703 }, 3704 "end": { 3705 "line": 1, 3706 "column": 1 3707 } 3708 } 3709 }, 3710 "loc": { 3711 "start": { 3712 "line": 1, 3713 "column": 1 3714 }, 3715 "end": { 3716 "line": 1, 3717 "column": 1 3718 } 3719 } 3720 } 3721 ], 3722 "loc": { 3723 "start": { 3724 "line": 1, 3725 "column": 1 3726 }, 3727 "end": { 3728 "line": 31, 3729 "column": 1 3730 } 3731 } 3732} 3733