I don't quite understand why below code is typed as `any`(I'm using nightly with `--noImplicitThis`)? ``` ts interface A { a: string; } declare function test(callback: (this: A) => void): void; test(function() { this.a;// typed as any? }); ```