//// [overloadWithCallbacksWithDifferingOptionalityOnArgs.ts] function x2(callback: (x?: number) => number); function x2(callback: (x: string) => number); function x2(callback: (x: any) => number) { } x2(() => 1); x2((x) => 1 ); //// [overloadWithCallbacksWithDifferingOptionalityOnArgs.js] function x2(callback) { } x2(function () { return 1; }); x2(function (x) { return 1; });