=== tests/cases/compiler/typeParameterFixingWithConstraints.ts === interface IBar { >IBar : IBar [barId: string]: any; >barId : string } interface IFoo { >IFoo : IFoo foo(bar: TBar, bar1: (bar: TBar) => TBar, bar2: (bar: TBar) => TBar): TBar; >foo : (bar: TBar, bar1: (bar: TBar) => TBar, bar2: (bar: TBar) => TBar) => TBar >TBar : TBar >IBar : IBar >bar : TBar >TBar : TBar >bar1 : (bar: TBar) => TBar >bar : TBar >TBar : TBar >TBar : TBar >bar2 : (bar: TBar) => TBar >bar : TBar >TBar : TBar >TBar : TBar >TBar : TBar } var foo: IFoo; >foo : IFoo >IFoo : IFoo foo.foo({ bar: null }, bar => null, bar => null); >foo.foo({ bar: null }, bar => null, bar => null) : { [x: string]: any; bar: any; } >foo.foo : (bar: TBar, bar1: (bar: TBar) => TBar, bar2: (bar: TBar) => TBar) => TBar >foo : IFoo >foo : (bar: TBar, bar1: (bar: TBar) => TBar, bar2: (bar: TBar) => TBar) => TBar >{ bar: null } : { [x: string]: null; bar: null; } >bar : null >null : null >bar => null : (bar: { [x: string]: any; bar: any; }) => any >bar : { [x: string]: any; bar: any; } >null : null >bar => null : (bar: { [x: string]: any; bar: any; }) => any >bar : { [x: string]: any; bar: any; } >null : null