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