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