• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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": "bar",
14              "decorators": [],
15              "loc": {
16                "start": {
17                  "line": 17,
18                  "column": 5,
19                  "program": "methodOverrideDifferentSignature.ets"
20                },
21                "end": {
22                  "line": 17,
23                  "column": 8,
24                  "program": "methodOverrideDifferentSignature.ets"
25                }
26              }
27            },
28            "kind": "method",
29            "accessibility": "public",
30            "static": false,
31            "optional": false,
32            "computed": false,
33            "value": {
34              "type": "FunctionExpression",
35              "function": {
36                "type": "ScriptFunction",
37                "id": {
38                  "type": "Identifier",
39                  "name": "bar",
40                  "decorators": [],
41                  "loc": {
42                    "start": {
43                      "line": 17,
44                      "column": 5,
45                      "program": "methodOverrideDifferentSignature.ets"
46                    },
47                    "end": {
48                      "line": 17,
49                      "column": 8,
50                      "program": "methodOverrideDifferentSignature.ets"
51                    }
52                  }
53                },
54                "generator": false,
55                "async": false,
56                "expression": false,
57                "params": [],
58                "returnType": {
59                  "type": "ETSPrimitiveType",
60                  "loc": {
61                    "start": {
62                      "line": 17,
63                      "column": 12,
64                      "program": "methodOverrideDifferentSignature.ets"
65                    },
66                    "end": {
67                      "line": 17,
68                      "column": 16,
69                      "program": "methodOverrideDifferentSignature.ets"
70                    }
71                  }
72                },
73                "loc": {
74                  "start": {
75                    "line": 17,
76                    "column": 8,
77                    "program": "methodOverrideDifferentSignature.ets"
78                  },
79                  "end": {
80                    "line": 17,
81                    "column": 16,
82                    "program": "methodOverrideDifferentSignature.ets"
83                  }
84                }
85              },
86              "loc": {
87                "start": {
88                  "line": 17,
89                  "column": 8,
90                  "program": "methodOverrideDifferentSignature.ets"
91                },
92                "end": {
93                  "line": 17,
94                  "column": 16,
95                  "program": "methodOverrideDifferentSignature.ets"
96                }
97              }
98            },
99            "overloads": [],
100            "decorators": [],
101            "loc": {
102              "start": {
103                "line": 17,
104                "column": 5,
105                "program": "methodOverrideDifferentSignature.ets"
106              },
107              "end": {
108                "line": 17,
109                "column": 17,
110                "program": "methodOverrideDifferentSignature.ets"
111              }
112            }
113          }
114        ],
115        "loc": {
116          "start": {
117            "line": 16,
118            "column": 13,
119            "program": "methodOverrideDifferentSignature.ets"
120          },
121          "end": {
122            "line": 18,
123            "column": 2,
124            "program": "methodOverrideDifferentSignature.ets"
125          }
126        }
127      },
128      "id": {
129        "type": "Identifier",
130        "name": "A",
131        "decorators": [],
132        "loc": {
133          "start": {
134            "line": 16,
135            "column": 11,
136            "program": "methodOverrideDifferentSignature.ets"
137          },
138          "end": {
139            "line": 16,
140            "column": 12,
141            "program": "methodOverrideDifferentSignature.ets"
142          }
143        }
144      },
145      "extends": [],
146      "loc": {
147        "start": {
148          "line": 16,
149          "column": 1,
150          "program": "methodOverrideDifferentSignature.ets"
151        },
152        "end": {
153          "line": 20,
154          "column": 9,
155          "program": "methodOverrideDifferentSignature.ets"
156        }
157      }
158    },
159    {
160      "type": "ClassDeclaration",
161      "definition": {
162        "id": {
163          "type": "Identifier",
164          "name": "B",
165          "decorators": [],
166          "loc": {
167            "start": {
168              "line": 20,
169              "column": 16,
170              "program": "methodOverrideDifferentSignature.ets"
171            },
172            "end": {
173              "line": 20,
174              "column": 17,
175              "program": "methodOverrideDifferentSignature.ets"
176            }
177          }
178        },
179        "superClass": null,
180        "implements": [
181          {
182            "type": "TSClassImplements",
183            "expression": {
184              "type": "ETSTypeReference",
185              "part": {
186                "type": "ETSTypeReferencePart",
187                "name": {
188                  "type": "Identifier",
189                  "name": "A",
190                  "decorators": [],
191                  "loc": {
192                    "start": {
193                      "line": 20,
194                      "column": 29,
195                      "program": "methodOverrideDifferentSignature.ets"
196                    },
197                    "end": {
198                      "line": 20,
199                      "column": 30,
200                      "program": "methodOverrideDifferentSignature.ets"
201                    }
202                  }
203                },
204                "loc": {
205                  "start": {
206                    "line": 20,
207                    "column": 29,
208                    "program": "methodOverrideDifferentSignature.ets"
209                  },
210                  "end": {
211                    "line": 20,
212                    "column": 32,
213                    "program": "methodOverrideDifferentSignature.ets"
214                  }
215                }
216              },
217              "loc": {
218                "start": {
219                  "line": 20,
220                  "column": 29,
221                  "program": "methodOverrideDifferentSignature.ets"
222                },
223                "end": {
224                  "line": 20,
225                  "column": 32,
226                  "program": "methodOverrideDifferentSignature.ets"
227                }
228              }
229            },
230            "loc": {
231              "start": {
232                "line": 20,
233                "column": 29,
234                "program": "methodOverrideDifferentSignature.ets"
235              },
236              "end": {
237                "line": 20,
238                "column": 32,
239                "program": "methodOverrideDifferentSignature.ets"
240              }
241            }
242          }
243        ],
244        "body": [
245          {
246            "type": "MethodDefinition",
247            "key": {
248              "type": "Identifier",
249              "name": "bar",
250              "decorators": [],
251              "loc": {
252                "start": {
253                  "line": 21,
254                  "column": 14,
255                  "program": "methodOverrideDifferentSignature.ets"
256                },
257                "end": {
258                  "line": 21,
259                  "column": 17,
260                  "program": "methodOverrideDifferentSignature.ets"
261                }
262              }
263            },
264            "kind": "method",
265            "accessibility": "public",
266            "static": false,
267            "optional": false,
268            "computed": false,
269            "value": {
270              "type": "FunctionExpression",
271              "function": {
272                "type": "ScriptFunction",
273                "id": {
274                  "type": "Identifier",
275                  "name": "bar",
276                  "decorators": [],
277                  "loc": {
278                    "start": {
279                      "line": 21,
280                      "column": 14,
281                      "program": "methodOverrideDifferentSignature.ets"
282                    },
283                    "end": {
284                      "line": 21,
285                      "column": 17,
286                      "program": "methodOverrideDifferentSignature.ets"
287                    }
288                  }
289                },
290                "generator": false,
291                "async": false,
292                "expression": false,
293                "params": [],
294                "returnType": {
295                  "type": "ETSPrimitiveType",
296                  "loc": {
297                    "start": {
298                      "line": 21,
299                      "column": 21,
300                      "program": "methodOverrideDifferentSignature.ets"
301                    },
302                    "end": {
303                      "line": 21,
304                      "column": 25,
305                      "program": "methodOverrideDifferentSignature.ets"
306                    }
307                  }
308                },
309                "body": {
310                  "type": "BlockStatement",
311                  "statements": [],
312                  "loc": {
313                    "start": {
314                      "line": 21,
315                      "column": 25,
316                      "program": "methodOverrideDifferentSignature.ets"
317                    },
318                    "end": {
319                      "line": 23,
320                      "column": 6,
321                      "program": "methodOverrideDifferentSignature.ets"
322                    }
323                  }
324                },
325                "loc": {
326                  "start": {
327                    "line": 21,
328                    "column": 17,
329                    "program": "methodOverrideDifferentSignature.ets"
330                  },
331                  "end": {
332                    "line": 23,
333                    "column": 6,
334                    "program": "methodOverrideDifferentSignature.ets"
335                  }
336                }
337              },
338              "loc": {
339                "start": {
340                  "line": 21,
341                  "column": 17,
342                  "program": "methodOverrideDifferentSignature.ets"
343                },
344                "end": {
345                  "line": 23,
346                  "column": 6,
347                  "program": "methodOverrideDifferentSignature.ets"
348                }
349              }
350            },
351            "overloads": [],
352            "decorators": [],
353            "loc": {
354              "start": {
355                "line": 21,
356                "column": 5,
357                "program": "methodOverrideDifferentSignature.ets"
358              },
359              "end": {
360                "line": 23,
361                "column": 6,
362                "program": "methodOverrideDifferentSignature.ets"
363              }
364            }
365          },
366          {
367            "type": "MethodDefinition",
368            "key": {
369              "type": "Identifier",
370              "name": "foo",
371              "decorators": [],
372              "loc": {
373                "start": {
374                  "line": 24,
375                  "column": 14,
376                  "program": "methodOverrideDifferentSignature.ets"
377                },
378                "end": {
379                  "line": 24,
380                  "column": 17,
381                  "program": "methodOverrideDifferentSignature.ets"
382                }
383              }
384            },
385            "kind": "method",
386            "accessibility": "public",
387            "static": false,
388            "optional": false,
389            "computed": false,
390            "value": {
391              "type": "FunctionExpression",
392              "function": {
393                "type": "ScriptFunction",
394                "id": {
395                  "type": "Identifier",
396                  "name": "foo",
397                  "decorators": [],
398                  "loc": {
399                    "start": {
400                      "line": 24,
401                      "column": 14,
402                      "program": "methodOverrideDifferentSignature.ets"
403                    },
404                    "end": {
405                      "line": 24,
406                      "column": 17,
407                      "program": "methodOverrideDifferentSignature.ets"
408                    }
409                  }
410                },
411                "generator": false,
412                "async": false,
413                "expression": false,
414                "params": [],
415                "returnType": {
416                  "type": "ETSPrimitiveType",
417                  "loc": {
418                    "start": {
419                      "line": 24,
420                      "column": 21,
421                      "program": "methodOverrideDifferentSignature.ets"
422                    },
423                    "end": {
424                      "line": 24,
425                      "column": 25,
426                      "program": "methodOverrideDifferentSignature.ets"
427                    }
428                  }
429                },
430                "loc": {
431                  "start": {
432                    "line": 24,
433                    "column": 17,
434                    "program": "methodOverrideDifferentSignature.ets"
435                  },
436                  "end": {
437                    "line": 24,
438                    "column": 17,
439                    "program": "methodOverrideDifferentSignature.ets"
440                  }
441                }
442              },
443              "loc": {
444                "start": {
445                  "line": 24,
446                  "column": 17,
447                  "program": "methodOverrideDifferentSignature.ets"
448                },
449                "end": {
450                  "line": 24,
451                  "column": 17,
452                  "program": "methodOverrideDifferentSignature.ets"
453                }
454              }
455            },
456            "overloads": [
457              {
458                "type": "MethodDefinition",
459                "key": {
460                  "type": "Identifier",
461                  "name": "foo",
462                  "decorators": [],
463                  "loc": {
464                    "start": {
465                      "line": 25,
466                      "column": 14,
467                      "program": "methodOverrideDifferentSignature.ets"
468                    },
469                    "end": {
470                      "line": 25,
471                      "column": 17,
472                      "program": "methodOverrideDifferentSignature.ets"
473                    }
474                  }
475                },
476                "kind": "method",
477                "accessibility": "public",
478                "static": false,
479                "optional": false,
480                "computed": false,
481                "value": {
482                  "type": "FunctionExpression",
483                  "function": {
484                    "type": "ScriptFunction",
485                    "id": {
486                      "type": "Identifier",
487                      "name": "foo",
488                      "decorators": [],
489                      "loc": {
490                        "start": {
491                          "line": 25,
492                          "column": 14,
493                          "program": "methodOverrideDifferentSignature.ets"
494                        },
495                        "end": {
496                          "line": 25,
497                          "column": 17,
498                          "program": "methodOverrideDifferentSignature.ets"
499                        }
500                      }
501                    },
502                    "generator": false,
503                    "async": false,
504                    "expression": false,
505                    "params": [
506                      {
507                        "type": "ETSParameterExpression",
508                        "name": {
509                          "type": "Identifier",
510                          "name": "a",
511                          "typeAnnotation": {
512                            "type": "ETSPrimitiveType",
513                            "loc": {
514                              "start": {
515                                "line": 25,
516                                "column": 21,
517                                "program": "methodOverrideDifferentSignature.ets"
518                              },
519                              "end": {
520                                "line": 25,
521                                "column": 24,
522                                "program": "methodOverrideDifferentSignature.ets"
523                              }
524                            }
525                          },
526                          "decorators": [],
527                          "loc": {
528                            "start": {
529                              "line": 25,
530                              "column": 18,
531                              "program": "methodOverrideDifferentSignature.ets"
532                            },
533                            "end": {
534                              "line": 25,
535                              "column": 24,
536                              "program": "methodOverrideDifferentSignature.ets"
537                            }
538                          }
539                        },
540                        "loc": {
541                          "start": {
542                            "line": 25,
543                            "column": 18,
544                            "program": "methodOverrideDifferentSignature.ets"
545                          },
546                          "end": {
547                            "line": 25,
548                            "column": 24,
549                            "program": "methodOverrideDifferentSignature.ets"
550                          }
551                        }
552                      }
553                    ],
554                    "returnType": {
555                      "type": "ETSPrimitiveType",
556                      "loc": {
557                        "start": {
558                          "line": 25,
559                          "column": 27,
560                          "program": "methodOverrideDifferentSignature.ets"
561                        },
562                        "end": {
563                          "line": 25,
564                          "column": 31,
565                          "program": "methodOverrideDifferentSignature.ets"
566                        }
567                      }
568                    },
569                    "loc": {
570                      "start": {
571                        "line": 25,
572                        "column": 17,
573                        "program": "methodOverrideDifferentSignature.ets"
574                      },
575                      "end": {
576                        "line": 25,
577                        "column": 17,
578                        "program": "methodOverrideDifferentSignature.ets"
579                      }
580                    }
581                  },
582                  "loc": {
583                    "start": {
584                      "line": 25,
585                      "column": 17,
586                      "program": "methodOverrideDifferentSignature.ets"
587                    },
588                    "end": {
589                      "line": 25,
590                      "column": 17,
591                      "program": "methodOverrideDifferentSignature.ets"
592                    }
593                  }
594                },
595                "overloads": [],
596                "decorators": [],
597                "loc": {
598                  "start": {
599                    "line": 25,
600                    "column": 5,
601                    "program": "methodOverrideDifferentSignature.ets"
602                  },
603                  "end": {
604                    "line": 25,
605                    "column": 17,
606                    "program": "methodOverrideDifferentSignature.ets"
607                  }
608                }
609              },
610              {
611                "type": "MethodDefinition",
612                "key": {
613                  "type": "Identifier",
614                  "name": "foo",
615                  "decorators": [],
616                  "loc": {
617                    "start": {
618                      "line": 26,
619                      "column": 5,
620                      "program": "methodOverrideDifferentSignature.ets"
621                    },
622                    "end": {
623                      "line": 26,
624                      "column": 8,
625                      "program": "methodOverrideDifferentSignature.ets"
626                    }
627                  }
628                },
629                "kind": "method",
630                "accessibility": "public",
631                "static": false,
632                "optional": false,
633                "computed": false,
634                "value": {
635                  "type": "FunctionExpression",
636                  "function": {
637                    "type": "ScriptFunction",
638                    "id": {
639                      "type": "Identifier",
640                      "name": "foo",
641                      "decorators": [],
642                      "loc": {
643                        "start": {
644                          "line": 26,
645                          "column": 5,
646                          "program": "methodOverrideDifferentSignature.ets"
647                        },
648                        "end": {
649                          "line": 26,
650                          "column": 8,
651                          "program": "methodOverrideDifferentSignature.ets"
652                        }
653                      }
654                    },
655                    "generator": false,
656                    "async": false,
657                    "expression": false,
658                    "params": [
659                      {
660                        "type": "ETSParameterExpression",
661                        "name": {
662                          "type": "Identifier",
663                          "name": "b",
664                          "typeAnnotation": {
665                            "type": "ETSPrimitiveType",
666                            "loc": {
667                              "start": {
668                                "line": 26,
669                                "column": 12,
670                                "program": "methodOverrideDifferentSignature.ets"
671                              },
672                              "end": {
673                                "line": 26,
674                                "column": 18,
675                                "program": "methodOverrideDifferentSignature.ets"
676                              }
677                            }
678                          },
679                          "decorators": [],
680                          "loc": {
681                            "start": {
682                              "line": 26,
683                              "column": 9,
684                              "program": "methodOverrideDifferentSignature.ets"
685                            },
686                            "end": {
687                              "line": 26,
688                              "column": 18,
689                              "program": "methodOverrideDifferentSignature.ets"
690                            }
691                          }
692                        },
693                        "loc": {
694                          "start": {
695                            "line": 26,
696                            "column": 9,
697                            "program": "methodOverrideDifferentSignature.ets"
698                          },
699                          "end": {
700                            "line": 26,
701                            "column": 18,
702                            "program": "methodOverrideDifferentSignature.ets"
703                          }
704                        }
705                      }
706                    ],
707                    "returnType": {
708                      "type": "ETSPrimitiveType",
709                      "loc": {
710                        "start": {
711                          "line": 26,
712                          "column": 21,
713                          "program": "methodOverrideDifferentSignature.ets"
714                        },
715                        "end": {
716                          "line": 26,
717                          "column": 25,
718                          "program": "methodOverrideDifferentSignature.ets"
719                        }
720                      }
721                    },
722                    "body": {
723                      "type": "BlockStatement",
724                      "statements": [],
725                      "loc": {
726                        "start": {
727                          "line": 26,
728                          "column": 25,
729                          "program": "methodOverrideDifferentSignature.ets"
730                        },
731                        "end": {
732                          "line": 28,
733                          "column": 6,
734                          "program": "methodOverrideDifferentSignature.ets"
735                        }
736                      }
737                    },
738                    "loc": {
739                      "start": {
740                        "line": 26,
741                        "column": 8,
742                        "program": "methodOverrideDifferentSignature.ets"
743                      },
744                      "end": {
745                        "line": 28,
746                        "column": 6,
747                        "program": "methodOverrideDifferentSignature.ets"
748                      }
749                    }
750                  },
751                  "loc": {
752                    "start": {
753                      "line": 26,
754                      "column": 8,
755                      "program": "methodOverrideDifferentSignature.ets"
756                    },
757                    "end": {
758                      "line": 28,
759                      "column": 6,
760                      "program": "methodOverrideDifferentSignature.ets"
761                    }
762                  }
763                },
764                "overloads": [],
765                "decorators": [],
766                "loc": {
767                  "start": {
768                    "line": 26,
769                    "column": 5,
770                    "program": "methodOverrideDifferentSignature.ets"
771                  },
772                  "end": {
773                    "line": 28,
774                    "column": 6,
775                    "program": "methodOverrideDifferentSignature.ets"
776                  }
777                }
778              }
779            ],
780            "decorators": [],
781            "loc": {
782              "start": {
783                "line": 24,
784                "column": 5,
785                "program": "methodOverrideDifferentSignature.ets"
786              },
787              "end": {
788                "line": 24,
789                "column": 17,
790                "program": "methodOverrideDifferentSignature.ets"
791              }
792            }
793          },
794          {
795            "type": "MethodDefinition",
796            "key": {
797              "type": "Identifier",
798              "name": "constructor",
799              "decorators": [],
800              "loc": {
801                "start": {
802                  "line": 20,
803                  "column": 32,
804                  "program": "methodOverrideDifferentSignature.ets"
805                },
806                "end": {
807                  "line": 20,
808                  "column": 32,
809                  "program": "methodOverrideDifferentSignature.ets"
810                }
811              }
812            },
813            "kind": "constructor",
814            "static": false,
815            "optional": false,
816            "computed": false,
817            "value": {
818              "type": "FunctionExpression",
819              "function": {
820                "type": "ScriptFunction",
821                "id": {
822                  "type": "Identifier",
823                  "name": "constructor",
824                  "decorators": [],
825                  "loc": {
826                    "start": {
827                      "line": 20,
828                      "column": 32,
829                      "program": "methodOverrideDifferentSignature.ets"
830                    },
831                    "end": {
832                      "line": 20,
833                      "column": 32,
834                      "program": "methodOverrideDifferentSignature.ets"
835                    }
836                  }
837                },
838                "generator": false,
839                "async": false,
840                "expression": false,
841                "params": [],
842                "body": {
843                  "type": "BlockStatement",
844                  "statements": [],
845                  "loc": {
846                    "start": {
847                      "line": 20,
848                      "column": 32,
849                      "program": "methodOverrideDifferentSignature.ets"
850                    },
851                    "end": {
852                      "line": 20,
853                      "column": 32,
854                      "program": "methodOverrideDifferentSignature.ets"
855                    }
856                  }
857                },
858                "loc": {
859                  "start": {
860                    "line": 20,
861                    "column": 32,
862                    "program": "methodOverrideDifferentSignature.ets"
863                  },
864                  "end": {
865                    "line": 20,
866                    "column": 32,
867                    "program": "methodOverrideDifferentSignature.ets"
868                  }
869                }
870              },
871              "loc": {
872                "start": {
873                  "line": 20,
874                  "column": 32,
875                  "program": "methodOverrideDifferentSignature.ets"
876                },
877                "end": {
878                  "line": 20,
879                  "column": 32,
880                  "program": "methodOverrideDifferentSignature.ets"
881                }
882              }
883            },
884            "overloads": [],
885            "decorators": [],
886            "loc": {
887              "start": {
888                "line": 1,
889                "column": 1,
890                "program": null
891              },
892              "end": {
893                "line": 1,
894                "column": 1,
895                "program": null
896              }
897            }
898          }
899        ],
900        "loc": {
901          "start": {
902            "line": 20,
903            "column": 31,
904            "program": "methodOverrideDifferentSignature.ets"
905          },
906          "end": {
907            "line": 31,
908            "column": 6,
909            "program": "methodOverrideDifferentSignature.ets"
910          }
911        }
912      },
913      "loc": {
914        "start": {
915          "line": 20,
916          "column": 10,
917          "program": "methodOverrideDifferentSignature.ets"
918        },
919        "end": {
920          "line": 31,
921          "column": 6,
922          "program": "methodOverrideDifferentSignature.ets"
923        }
924      }
925    },
926    {
927      "type": "ClassDeclaration",
928      "definition": {
929        "id": {
930          "type": "Identifier",
931          "name": "C",
932          "decorators": [],
933          "loc": {
934            "start": {
935              "line": 31,
936              "column": 7,
937              "program": "methodOverrideDifferentSignature.ets"
938            },
939            "end": {
940              "line": 31,
941              "column": 8,
942              "program": "methodOverrideDifferentSignature.ets"
943            }
944          }
945        },
946        "superClass": {
947          "type": "ETSTypeReference",
948          "part": {
949            "type": "ETSTypeReferencePart",
950            "name": {
951              "type": "Identifier",
952              "name": "B",
953              "decorators": [],
954              "loc": {
955                "start": {
956                  "line": 31,
957                  "column": 17,
958                  "program": "methodOverrideDifferentSignature.ets"
959                },
960                "end": {
961                  "line": 31,
962                  "column": 18,
963                  "program": "methodOverrideDifferentSignature.ets"
964                }
965              }
966            },
967            "loc": {
968              "start": {
969                "line": 31,
970                "column": 17,
971                "program": "methodOverrideDifferentSignature.ets"
972              },
973              "end": {
974                "line": 31,
975                "column": 20,
976                "program": "methodOverrideDifferentSignature.ets"
977              }
978            }
979          },
980          "loc": {
981            "start": {
982              "line": 31,
983              "column": 17,
984              "program": "methodOverrideDifferentSignature.ets"
985            },
986            "end": {
987              "line": 31,
988              "column": 20,
989              "program": "methodOverrideDifferentSignature.ets"
990            }
991          }
992        },
993        "implements": [],
994        "body": [
995          {
996            "type": "MethodDefinition",
997            "key": {
998              "type": "Identifier",
999              "name": "foo",
1000              "decorators": [],
1001              "loc": {
1002                "start": {
1003                  "line": 32,
1004                  "column": 14,
1005                  "program": "methodOverrideDifferentSignature.ets"
1006                },
1007                "end": {
1008                  "line": 32,
1009                  "column": 17,
1010                  "program": "methodOverrideDifferentSignature.ets"
1011                }
1012              }
1013            },
1014            "kind": "method",
1015            "accessibility": "public",
1016            "static": false,
1017            "optional": false,
1018            "computed": false,
1019            "value": {
1020              "type": "FunctionExpression",
1021              "function": {
1022                "type": "ScriptFunction",
1023                "id": {
1024                  "type": "Identifier",
1025                  "name": "foo",
1026                  "decorators": [],
1027                  "loc": {
1028                    "start": {
1029                      "line": 32,
1030                      "column": 14,
1031                      "program": "methodOverrideDifferentSignature.ets"
1032                    },
1033                    "end": {
1034                      "line": 32,
1035                      "column": 17,
1036                      "program": "methodOverrideDifferentSignature.ets"
1037                    }
1038                  }
1039                },
1040                "generator": false,
1041                "async": false,
1042                "expression": false,
1043                "params": [],
1044                "returnType": {
1045                  "type": "ETSPrimitiveType",
1046                  "loc": {
1047                    "start": {
1048                      "line": 32,
1049                      "column": 21,
1050                      "program": "methodOverrideDifferentSignature.ets"
1051                    },
1052                    "end": {
1053                      "line": 32,
1054                      "column": 25,
1055                      "program": "methodOverrideDifferentSignature.ets"
1056                    }
1057                  }
1058                },
1059                "body": {
1060                  "type": "BlockStatement",
1061                  "statements": [],
1062                  "loc": {
1063                    "start": {
1064                      "line": 32,
1065                      "column": 26,
1066                      "program": "methodOverrideDifferentSignature.ets"
1067                    },
1068                    "end": {
1069                      "line": 34,
1070                      "column": 6,
1071                      "program": "methodOverrideDifferentSignature.ets"
1072                    }
1073                  }
1074                },
1075                "loc": {
1076                  "start": {
1077                    "line": 32,
1078                    "column": 17,
1079                    "program": "methodOverrideDifferentSignature.ets"
1080                  },
1081                  "end": {
1082                    "line": 34,
1083                    "column": 6,
1084                    "program": "methodOverrideDifferentSignature.ets"
1085                  }
1086                }
1087              },
1088              "loc": {
1089                "start": {
1090                  "line": 32,
1091                  "column": 17,
1092                  "program": "methodOverrideDifferentSignature.ets"
1093                },
1094                "end": {
1095                  "line": 34,
1096                  "column": 6,
1097                  "program": "methodOverrideDifferentSignature.ets"
1098                }
1099              }
1100            },
1101            "overloads": [
1102              {
1103                "type": "MethodDefinition",
1104                "key": {
1105                  "type": "Identifier",
1106                  "name": "foo",
1107                  "decorators": [],
1108                  "loc": {
1109                    "start": {
1110                      "line": 35,
1111                      "column": 14,
1112                      "program": "methodOverrideDifferentSignature.ets"
1113                    },
1114                    "end": {
1115                      "line": 35,
1116                      "column": 17,
1117                      "program": "methodOverrideDifferentSignature.ets"
1118                    }
1119                  }
1120                },
1121                "kind": "method",
1122                "accessibility": "public",
1123                "static": false,
1124                "optional": false,
1125                "computed": false,
1126                "value": {
1127                  "type": "FunctionExpression",
1128                  "function": {
1129                    "type": "ScriptFunction",
1130                    "id": {
1131                      "type": "Identifier",
1132                      "name": "foo",
1133                      "decorators": [],
1134                      "loc": {
1135                        "start": {
1136                          "line": 35,
1137                          "column": 14,
1138                          "program": "methodOverrideDifferentSignature.ets"
1139                        },
1140                        "end": {
1141                          "line": 35,
1142                          "column": 17,
1143                          "program": "methodOverrideDifferentSignature.ets"
1144                        }
1145                      }
1146                    },
1147                    "generator": false,
1148                    "async": false,
1149                    "expression": false,
1150                    "params": [
1151                      {
1152                        "type": "ETSParameterExpression",
1153                        "name": {
1154                          "type": "Identifier",
1155                          "name": "a",
1156                          "typeAnnotation": {
1157                            "type": "ETSPrimitiveType",
1158                            "loc": {
1159                              "start": {
1160                                "line": 35,
1161                                "column": 21,
1162                                "program": "methodOverrideDifferentSignature.ets"
1163                              },
1164                              "end": {
1165                                "line": 35,
1166                                "column": 24,
1167                                "program": "methodOverrideDifferentSignature.ets"
1168                              }
1169                            }
1170                          },
1171                          "decorators": [],
1172                          "loc": {
1173                            "start": {
1174                              "line": 35,
1175                              "column": 18,
1176                              "program": "methodOverrideDifferentSignature.ets"
1177                            },
1178                            "end": {
1179                              "line": 35,
1180                              "column": 24,
1181                              "program": "methodOverrideDifferentSignature.ets"
1182                            }
1183                          }
1184                        },
1185                        "loc": {
1186                          "start": {
1187                            "line": 35,
1188                            "column": 18,
1189                            "program": "methodOverrideDifferentSignature.ets"
1190                          },
1191                          "end": {
1192                            "line": 35,
1193                            "column": 24,
1194                            "program": "methodOverrideDifferentSignature.ets"
1195                          }
1196                        }
1197                      }
1198                    ],
1199                    "returnType": {
1200                      "type": "ETSPrimitiveType",
1201                      "loc": {
1202                        "start": {
1203                          "line": 35,
1204                          "column": 27,
1205                          "program": "methodOverrideDifferentSignature.ets"
1206                        },
1207                        "end": {
1208                          "line": 35,
1209                          "column": 31,
1210                          "program": "methodOverrideDifferentSignature.ets"
1211                        }
1212                      }
1213                    },
1214                    "body": {
1215                      "type": "BlockStatement",
1216                      "statements": [],
1217                      "loc": {
1218                        "start": {
1219                          "line": 35,
1220                          "column": 32,
1221                          "program": "methodOverrideDifferentSignature.ets"
1222                        },
1223                        "end": {
1224                          "line": 37,
1225                          "column": 6,
1226                          "program": "methodOverrideDifferentSignature.ets"
1227                        }
1228                      }
1229                    },
1230                    "loc": {
1231                      "start": {
1232                        "line": 35,
1233                        "column": 17,
1234                        "program": "methodOverrideDifferentSignature.ets"
1235                      },
1236                      "end": {
1237                        "line": 37,
1238                        "column": 6,
1239                        "program": "methodOverrideDifferentSignature.ets"
1240                      }
1241                    }
1242                  },
1243                  "loc": {
1244                    "start": {
1245                      "line": 35,
1246                      "column": 17,
1247                      "program": "methodOverrideDifferentSignature.ets"
1248                    },
1249                    "end": {
1250                      "line": 37,
1251                      "column": 6,
1252                      "program": "methodOverrideDifferentSignature.ets"
1253                    }
1254                  }
1255                },
1256                "overloads": [],
1257                "decorators": [],
1258                "loc": {
1259                  "start": {
1260                    "line": 35,
1261                    "column": 5,
1262                    "program": "methodOverrideDifferentSignature.ets"
1263                  },
1264                  "end": {
1265                    "line": 37,
1266                    "column": 6,
1267                    "program": "methodOverrideDifferentSignature.ets"
1268                  }
1269                }
1270              }
1271            ],
1272            "decorators": [],
1273            "loc": {
1274              "start": {
1275                "line": 32,
1276                "column": 5,
1277                "program": "methodOverrideDifferentSignature.ets"
1278              },
1279              "end": {
1280                "line": 34,
1281                "column": 6,
1282                "program": "methodOverrideDifferentSignature.ets"
1283              }
1284            }
1285          },
1286          {
1287            "type": "MethodDefinition",
1288            "key": {
1289              "type": "Identifier",
1290              "name": "constructor",
1291              "decorators": [],
1292              "loc": {
1293                "start": {
1294                  "line": 31,
1295                  "column": 20,
1296                  "program": "methodOverrideDifferentSignature.ets"
1297                },
1298                "end": {
1299                  "line": 31,
1300                  "column": 20,
1301                  "program": "methodOverrideDifferentSignature.ets"
1302                }
1303              }
1304            },
1305            "kind": "constructor",
1306            "static": false,
1307            "optional": false,
1308            "computed": false,
1309            "value": {
1310              "type": "FunctionExpression",
1311              "function": {
1312                "type": "ScriptFunction",
1313                "id": {
1314                  "type": "Identifier",
1315                  "name": "constructor",
1316                  "decorators": [],
1317                  "loc": {
1318                    "start": {
1319                      "line": 31,
1320                      "column": 20,
1321                      "program": "methodOverrideDifferentSignature.ets"
1322                    },
1323                    "end": {
1324                      "line": 31,
1325                      "column": 20,
1326                      "program": "methodOverrideDifferentSignature.ets"
1327                    }
1328                  }
1329                },
1330                "generator": false,
1331                "async": false,
1332                "expression": false,
1333                "params": [],
1334                "body": {
1335                  "type": "BlockStatement",
1336                  "statements": [],
1337                  "loc": {
1338                    "start": {
1339                      "line": 31,
1340                      "column": 20,
1341                      "program": "methodOverrideDifferentSignature.ets"
1342                    },
1343                    "end": {
1344                      "line": 31,
1345                      "column": 20,
1346                      "program": "methodOverrideDifferentSignature.ets"
1347                    }
1348                  }
1349                },
1350                "loc": {
1351                  "start": {
1352                    "line": 31,
1353                    "column": 20,
1354                    "program": "methodOverrideDifferentSignature.ets"
1355                  },
1356                  "end": {
1357                    "line": 31,
1358                    "column": 20,
1359                    "program": "methodOverrideDifferentSignature.ets"
1360                  }
1361                }
1362              },
1363              "loc": {
1364                "start": {
1365                  "line": 31,
1366                  "column": 20,
1367                  "program": "methodOverrideDifferentSignature.ets"
1368                },
1369                "end": {
1370                  "line": 31,
1371                  "column": 20,
1372                  "program": "methodOverrideDifferentSignature.ets"
1373                }
1374              }
1375            },
1376            "overloads": [],
1377            "decorators": [],
1378            "loc": {
1379              "start": {
1380                "line": 1,
1381                "column": 1,
1382                "program": null
1383              },
1384              "end": {
1385                "line": 1,
1386                "column": 1,
1387                "program": null
1388              }
1389            }
1390          }
1391        ],
1392        "loc": {
1393          "start": {
1394            "line": 31,
1395            "column": 19,
1396            "program": "methodOverrideDifferentSignature.ets"
1397          },
1398          "end": {
1399            "line": 39,
1400            "column": 1,
1401            "program": "methodOverrideDifferentSignature.ets"
1402          }
1403        }
1404      },
1405      "loc": {
1406        "start": {
1407          "line": 31,
1408          "column": 1,
1409          "program": "methodOverrideDifferentSignature.ets"
1410        },
1411        "end": {
1412          "line": 39,
1413          "column": 1,
1414          "program": "methodOverrideDifferentSignature.ets"
1415        }
1416      }
1417    },
1418    {
1419      "type": "ClassDeclaration",
1420      "definition": {
1421        "id": {
1422          "type": "Identifier",
1423          "name": "ETSGLOBAL",
1424          "decorators": [],
1425          "loc": {
1426            "start": {
1427              "line": 1,
1428              "column": 1,
1429              "program": "methodOverrideDifferentSignature.ets"
1430            },
1431            "end": {
1432              "line": 1,
1433              "column": 1,
1434              "program": "methodOverrideDifferentSignature.ets"
1435            }
1436          }
1437        },
1438        "superClass": null,
1439        "implements": [],
1440        "body": [
1441          {
1442            "type": "MethodDefinition",
1443            "key": {
1444              "type": "Identifier",
1445              "name": "main",
1446              "decorators": [],
1447              "loc": {
1448                "start": {
1449                  "line": 1,
1450                  "column": 1,
1451                  "program": null
1452                },
1453                "end": {
1454                  "line": 1,
1455                  "column": 1,
1456                  "program": null
1457                }
1458              }
1459            },
1460            "kind": "method",
1461            "accessibility": "public",
1462            "static": true,
1463            "optional": false,
1464            "computed": false,
1465            "value": {
1466              "type": "FunctionExpression",
1467              "function": {
1468                "type": "ScriptFunction",
1469                "id": {
1470                  "type": "Identifier",
1471                  "name": "main",
1472                  "decorators": [],
1473                  "loc": {
1474                    "start": {
1475                      "line": 1,
1476                      "column": 1,
1477                      "program": null
1478                    },
1479                    "end": {
1480                      "line": 1,
1481                      "column": 1,
1482                      "program": null
1483                    }
1484                  }
1485                },
1486                "generator": false,
1487                "async": false,
1488                "expression": false,
1489                "params": [],
1490                "body": {
1491                  "type": "BlockStatement",
1492                  "statements": [],
1493                  "loc": {
1494                    "start": {
1495                      "line": 1,
1496                      "column": 1,
1497                      "program": null
1498                    },
1499                    "end": {
1500                      "line": 1,
1501                      "column": 1,
1502                      "program": null
1503                    }
1504                  }
1505                },
1506                "loc": {
1507                  "start": {
1508                    "line": 1,
1509                    "column": 1,
1510                    "program": null
1511                  },
1512                  "end": {
1513                    "line": 1,
1514                    "column": 1,
1515                    "program": null
1516                  }
1517                }
1518              },
1519              "loc": {
1520                "start": {
1521                  "line": 1,
1522                  "column": 1,
1523                  "program": null
1524                },
1525                "end": {
1526                  "line": 1,
1527                  "column": 1,
1528                  "program": null
1529                }
1530              }
1531            },
1532            "overloads": [],
1533            "decorators": [],
1534            "loc": {
1535              "start": {
1536                "line": 1,
1537                "column": 1,
1538                "program": "methodOverrideDifferentSignature.ets"
1539              },
1540              "end": {
1541                "line": 1,
1542                "column": 1,
1543                "program": "methodOverrideDifferentSignature.ets"
1544              }
1545            }
1546          },
1547          {
1548            "type": "MethodDefinition",
1549            "key": {
1550              "type": "Identifier",
1551              "name": "_$init$_",
1552              "decorators": [],
1553              "loc": {
1554                "start": {
1555                  "line": 1,
1556                  "column": 1,
1557                  "program": null
1558                },
1559                "end": {
1560                  "line": 1,
1561                  "column": 1,
1562                  "program": null
1563                }
1564              }
1565            },
1566            "kind": "method",
1567            "accessibility": "public",
1568            "static": true,
1569            "optional": false,
1570            "computed": false,
1571            "value": {
1572              "type": "FunctionExpression",
1573              "function": {
1574                "type": "ScriptFunction",
1575                "id": {
1576                  "type": "Identifier",
1577                  "name": "_$init$_",
1578                  "decorators": [],
1579                  "loc": {
1580                    "start": {
1581                      "line": 1,
1582                      "column": 1,
1583                      "program": null
1584                    },
1585                    "end": {
1586                      "line": 1,
1587                      "column": 1,
1588                      "program": null
1589                    }
1590                  }
1591                },
1592                "generator": false,
1593                "async": false,
1594                "expression": false,
1595                "params": [],
1596                "body": {
1597                  "type": "BlockStatement",
1598                  "statements": [],
1599                  "loc": {
1600                    "start": {
1601                      "line": 1,
1602                      "column": 1,
1603                      "program": null
1604                    },
1605                    "end": {
1606                      "line": 1,
1607                      "column": 1,
1608                      "program": null
1609                    }
1610                  }
1611                },
1612                "loc": {
1613                  "start": {
1614                    "line": 1,
1615                    "column": 1,
1616                    "program": null
1617                  },
1618                  "end": {
1619                    "line": 1,
1620                    "column": 1,
1621                    "program": null
1622                  }
1623                }
1624              },
1625              "loc": {
1626                "start": {
1627                  "line": 1,
1628                  "column": 1,
1629                  "program": null
1630                },
1631                "end": {
1632                  "line": 1,
1633                  "column": 1,
1634                  "program": null
1635                }
1636              }
1637            },
1638            "overloads": [],
1639            "decorators": [],
1640            "loc": {
1641              "start": {
1642                "line": 1,
1643                "column": 1,
1644                "program": "methodOverrideDifferentSignature.ets"
1645              },
1646              "end": {
1647                "line": 1,
1648                "column": 1,
1649                "program": "methodOverrideDifferentSignature.ets"
1650              }
1651            }
1652          }
1653        ],
1654        "loc": {
1655          "start": {
1656            "line": 1,
1657            "column": 1,
1658            "program": "methodOverrideDifferentSignature.ets"
1659          },
1660          "end": {
1661            "line": 1,
1662            "column": 1,
1663            "program": "methodOverrideDifferentSignature.ets"
1664          }
1665        }
1666      },
1667      "loc": {
1668        "start": {
1669          "line": 1,
1670          "column": 1,
1671          "program": "methodOverrideDifferentSignature.ets"
1672        },
1673        "end": {
1674          "line": 1,
1675          "column": 1,
1676          "program": "methodOverrideDifferentSignature.ets"
1677        }
1678      }
1679    }
1680  ],
1681  "loc": {
1682    "start": {
1683      "line": 1,
1684      "column": 1,
1685      "program": "methodOverrideDifferentSignature.ets"
1686    },
1687    "end": {
1688      "line": 39,
1689      "column": 1,
1690      "program": "methodOverrideDifferentSignature.ets"
1691    }
1692  }
1693}
1694