1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "TSInterfaceDeclaration", 6 "body": { 7 "type": "TSInterfaceBody", 8 "body": [ 9 { 10 "type": "MethodDefinition", 11 "key": { 12 "type": "Identifier", 13 "name": "self", 14 "decorators": [], 15 "loc": { 16 "start": { 17 "line": 17, 18 "column": 3 19 }, 20 "end": { 21 "line": 17, 22 "column": 7 23 } 24 } 25 }, 26 "kind": "method", 27 "accessibility": "public", 28 "static": false, 29 "optional": false, 30 "computed": false, 31 "value": { 32 "type": "FunctionExpression", 33 "function": { 34 "type": "ScriptFunction", 35 "id": { 36 "type": "Identifier", 37 "name": "self", 38 "decorators": [], 39 "loc": { 40 "start": { 41 "line": 17, 42 "column": 3 43 }, 44 "end": { 45 "line": 17, 46 "column": 7 47 } 48 } 49 }, 50 "generator": false, 51 "async": false, 52 "expression": false, 53 "params": [], 54 "returnType": { 55 "type": "ETSTypeReference", 56 "part": { 57 "type": "ETSTypeReferencePart", 58 "name": { 59 "type": "Identifier", 60 "name": "I", 61 "decorators": [], 62 "loc": { 63 "start": { 64 "line": 17, 65 "column": 11 66 }, 67 "end": { 68 "line": 17, 69 "column": 12 70 } 71 } 72 }, 73 "loc": { 74 "start": { 75 "line": 17, 76 "column": 11 77 }, 78 "end": { 79 "line": 17, 80 "column": 13 81 } 82 } 83 }, 84 "loc": { 85 "start": { 86 "line": 17, 87 "column": 11 88 }, 89 "end": { 90 "line": 17, 91 "column": 13 92 } 93 } 94 }, 95 "declare": true, 96 "loc": { 97 "start": { 98 "line": 17, 99 "column": 7 100 }, 101 "end": { 102 "line": 17, 103 "column": 13 104 } 105 } 106 }, 107 "loc": { 108 "start": { 109 "line": 17, 110 "column": 7 111 }, 112 "end": { 113 "line": 17, 114 "column": 13 115 } 116 } 117 }, 118 "overloads": [], 119 "decorators": [], 120 "loc": { 121 "start": { 122 "line": 17, 123 "column": 3 124 }, 125 "end": { 126 "line": 17, 127 "column": 13 128 } 129 } 130 } 131 ], 132 "loc": { 133 "start": { 134 "line": 16, 135 "column": 13 136 }, 137 "end": { 138 "line": 18, 139 "column": 2 140 } 141 } 142 }, 143 "id": { 144 "type": "Identifier", 145 "name": "I", 146 "decorators": [], 147 "loc": { 148 "start": { 149 "line": 16, 150 "column": 11 151 }, 152 "end": { 153 "line": 16, 154 "column": 12 155 } 156 } 157 }, 158 "extends": [], 159 "loc": { 160 "start": { 161 "line": 16, 162 "column": 1 163 }, 164 "end": { 165 "line": 20, 166 "column": 10 167 } 168 } 169 }, 170 { 171 "type": "TSInterfaceDeclaration", 172 "body": { 173 "type": "TSInterfaceBody", 174 "body": [], 175 "loc": { 176 "start": { 177 "line": 20, 178 "column": 24 179 }, 180 "end": { 181 "line": 20, 182 "column": 26 183 } 184 } 185 }, 186 "id": { 187 "type": "Identifier", 188 "name": "I2", 189 "decorators": [], 190 "loc": { 191 "start": { 192 "line": 20, 193 "column": 11 194 }, 195 "end": { 196 "line": 20, 197 "column": 13 198 } 199 } 200 }, 201 "extends": [ 202 { 203 "type": "TSInterfaceHeritage", 204 "expression": { 205 "type": "ETSTypeReference", 206 "part": { 207 "type": "ETSTypeReferencePart", 208 "name": { 209 "type": "Identifier", 210 "name": "I", 211 "decorators": [], 212 "loc": { 213 "start": { 214 "line": 20, 215 "column": 22 216 }, 217 "end": { 218 "line": 20, 219 "column": 23 220 } 221 } 222 }, 223 "loc": { 224 "start": { 225 "line": 20, 226 "column": 22 227 }, 228 "end": { 229 "line": 20, 230 "column": 25 231 } 232 } 233 }, 234 "loc": { 235 "start": { 236 "line": 20, 237 "column": 22 238 }, 239 "end": { 240 "line": 20, 241 "column": 25 242 } 243 } 244 }, 245 "loc": { 246 "start": { 247 "line": 20, 248 "column": 22 249 }, 250 "end": { 251 "line": 20, 252 "column": 25 253 } 254 } 255 } 256 ], 257 "loc": { 258 "start": { 259 "line": 20, 260 "column": 1 261 }, 262 "end": { 263 "line": 22, 264 "column": 6 265 } 266 } 267 }, 268 { 269 "type": "ClassDeclaration", 270 "definition": { 271 "id": { 272 "type": "Identifier", 273 "name": "A", 274 "decorators": [], 275 "loc": { 276 "start": { 277 "line": 22, 278 "column": 7 279 }, 280 "end": { 281 "line": 22, 282 "column": 8 283 } 284 } 285 }, 286 "superClass": null, 287 "implements": [ 288 { 289 "type": "TSClassImplements", 290 "expression": { 291 "type": "ETSTypeReference", 292 "part": { 293 "type": "ETSTypeReferencePart", 294 "name": { 295 "type": "Identifier", 296 "name": "I2", 297 "decorators": [], 298 "loc": { 299 "start": { 300 "line": 22, 301 "column": 20 302 }, 303 "end": { 304 "line": 22, 305 "column": 22 306 } 307 } 308 }, 309 "loc": { 310 "start": { 311 "line": 22, 312 "column": 20 313 }, 314 "end": { 315 "line": 22, 316 "column": 24 317 } 318 } 319 }, 320 "loc": { 321 "start": { 322 "line": 22, 323 "column": 20 324 }, 325 "end": { 326 "line": 22, 327 "column": 24 328 } 329 } 330 }, 331 "loc": { 332 "start": { 333 "line": 22, 334 "column": 20 335 }, 336 "end": { 337 "line": 22, 338 "column": 24 339 } 340 } 341 } 342 ], 343 "body": [ 344 { 345 "type": "MethodDefinition", 346 "key": { 347 "type": "Identifier", 348 "name": "self", 349 "decorators": [], 350 "loc": { 351 "start": { 352 "line": 23, 353 "column": 19 354 }, 355 "end": { 356 "line": 23, 357 "column": 23 358 } 359 } 360 }, 361 "kind": "method", 362 "accessibility": "public", 363 "static": false, 364 "optional": false, 365 "computed": false, 366 "value": { 367 "type": "FunctionExpression", 368 "function": { 369 "type": "ScriptFunction", 370 "id": { 371 "type": "Identifier", 372 "name": "self", 373 "decorators": [], 374 "loc": { 375 "start": { 376 "line": 23, 377 "column": 19 378 }, 379 "end": { 380 "line": 23, 381 "column": 23 382 } 383 } 384 }, 385 "generator": false, 386 "async": false, 387 "expression": false, 388 "params": [], 389 "returnType": { 390 "type": "ETSTypeReference", 391 "part": { 392 "type": "ETSTypeReferencePart", 393 "name": { 394 "type": "Identifier", 395 "name": "I2", 396 "decorators": [], 397 "loc": { 398 "start": { 399 "line": 23, 400 "column": 27 401 }, 402 "end": { 403 "line": 23, 404 "column": 29 405 } 406 } 407 }, 408 "loc": { 409 "start": { 410 "line": 23, 411 "column": 27 412 }, 413 "end": { 414 "line": 23, 415 "column": 31 416 } 417 } 418 }, 419 "loc": { 420 "start": { 421 "line": 23, 422 "column": 27 423 }, 424 "end": { 425 "line": 23, 426 "column": 31 427 } 428 } 429 }, 430 "body": { 431 "type": "BlockStatement", 432 "statements": [ 433 { 434 "type": "ReturnStatement", 435 "argument": { 436 "type": "ThisExpression", 437 "loc": { 438 "start": { 439 "line": 23, 440 "column": 39 441 }, 442 "end": { 443 "line": 23, 444 "column": 43 445 } 446 } 447 }, 448 "loc": { 449 "start": { 450 "line": 23, 451 "column": 32 452 }, 453 "end": { 454 "line": 23, 455 "column": 44 456 } 457 } 458 } 459 ], 460 "loc": { 461 "start": { 462 "line": 23, 463 "column": 30 464 }, 465 "end": { 466 "line": 23, 467 "column": 46 468 } 469 } 470 }, 471 "loc": { 472 "start": { 473 "line": 23, 474 "column": 23 475 }, 476 "end": { 477 "line": 23, 478 "column": 46 479 } 480 } 481 }, 482 "loc": { 483 "start": { 484 "line": 23, 485 "column": 23 486 }, 487 "end": { 488 "line": 23, 489 "column": 46 490 } 491 } 492 }, 493 "overloads": [], 494 "decorators": [], 495 "loc": { 496 "start": { 497 "line": 23, 498 "column": 3 499 }, 500 "end": { 501 "line": 23, 502 "column": 46 503 } 504 } 505 }, 506 { 507 "type": "MethodDefinition", 508 "key": { 509 "type": "Identifier", 510 "name": "constructor", 511 "decorators": [], 512 "loc": { 513 "start": { 514 "line": 1, 515 "column": 1 516 }, 517 "end": { 518 "line": 1, 519 "column": 1 520 } 521 } 522 }, 523 "kind": "constructor", 524 "static": false, 525 "optional": false, 526 "computed": false, 527 "value": { 528 "type": "FunctionExpression", 529 "function": { 530 "type": "ScriptFunction", 531 "id": { 532 "type": "Identifier", 533 "name": "constructor", 534 "decorators": [], 535 "loc": { 536 "start": { 537 "line": 1, 538 "column": 1 539 }, 540 "end": { 541 "line": 1, 542 "column": 1 543 } 544 } 545 }, 546 "generator": false, 547 "async": false, 548 "expression": false, 549 "params": [], 550 "body": { 551 "type": "BlockStatement", 552 "statements": [], 553 "loc": { 554 "start": { 555 "line": 1, 556 "column": 1 557 }, 558 "end": { 559 "line": 1, 560 "column": 1 561 } 562 } 563 }, 564 "loc": { 565 "start": { 566 "line": 1, 567 "column": 1 568 }, 569 "end": { 570 "line": 1, 571 "column": 1 572 } 573 } 574 }, 575 "loc": { 576 "start": { 577 "line": 1, 578 "column": 1 579 }, 580 "end": { 581 "line": 1, 582 "column": 1 583 } 584 } 585 }, 586 "overloads": [], 587 "decorators": [], 588 "loc": { 589 "start": { 590 "line": 24, 591 "column": 2 592 }, 593 "end": { 594 "line": 24, 595 "column": 2 596 } 597 } 598 } 599 ], 600 "loc": { 601 "start": { 602 "line": 22, 603 "column": 23 604 }, 605 "end": { 606 "line": 24, 607 "column": 2 608 } 609 } 610 }, 611 "loc": { 612 "start": { 613 "line": 22, 614 "column": 1 615 }, 616 "end": { 617 "line": 24, 618 "column": 2 619 } 620 } 621 }, 622 { 623 "type": "ClassDeclaration", 624 "definition": { 625 "id": { 626 "type": "Identifier", 627 "name": "ETSGLOBAL", 628 "decorators": [], 629 "loc": { 630 "start": { 631 "line": 1, 632 "column": 1 633 }, 634 "end": { 635 "line": 1, 636 "column": 1 637 } 638 } 639 }, 640 "superClass": null, 641 "implements": [], 642 "body": [ 643 { 644 "type": "MethodDefinition", 645 "key": { 646 "type": "Identifier", 647 "name": "_$init$_", 648 "decorators": [], 649 "loc": { 650 "start": { 651 "line": 1, 652 "column": 1 653 }, 654 "end": { 655 "line": 1, 656 "column": 1 657 } 658 } 659 }, 660 "kind": "method", 661 "accessibility": "public", 662 "static": true, 663 "optional": false, 664 "computed": false, 665 "value": { 666 "type": "FunctionExpression", 667 "function": { 668 "type": "ScriptFunction", 669 "id": { 670 "type": "Identifier", 671 "name": "_$init$_", 672 "decorators": [], 673 "loc": { 674 "start": { 675 "line": 1, 676 "column": 1 677 }, 678 "end": { 679 "line": 1, 680 "column": 1 681 } 682 } 683 }, 684 "generator": false, 685 "async": false, 686 "expression": false, 687 "params": [], 688 "body": { 689 "type": "BlockStatement", 690 "statements": [], 691 "loc": { 692 "start": { 693 "line": 1, 694 "column": 1 695 }, 696 "end": { 697 "line": 1, 698 "column": 1 699 } 700 } 701 }, 702 "loc": { 703 "start": { 704 "line": 1, 705 "column": 1 706 }, 707 "end": { 708 "line": 1, 709 "column": 1 710 } 711 } 712 }, 713 "loc": { 714 "start": { 715 "line": 1, 716 "column": 1 717 }, 718 "end": { 719 "line": 1, 720 "column": 1 721 } 722 } 723 }, 724 "overloads": [], 725 "decorators": [], 726 "loc": { 727 "start": { 728 "line": 1, 729 "column": 1 730 }, 731 "end": { 732 "line": 1, 733 "column": 1 734 } 735 } 736 } 737 ], 738 "loc": { 739 "start": { 740 "line": 1, 741 "column": 1 742 }, 743 "end": { 744 "line": 1, 745 "column": 1 746 } 747 } 748 }, 749 "loc": { 750 "start": { 751 "line": 1, 752 "column": 1 753 }, 754 "end": { 755 "line": 1, 756 "column": 1 757 } 758 } 759 } 760 ], 761 "loc": { 762 "start": { 763 "line": 1, 764 "column": 1 765 }, 766 "end": { 767 "line": 25, 768 "column": 1 769 } 770 } 771} 772