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