My work-around, to suppress the horrid red squiggily lines;-) is the following: The generated JS codes looks good and works for me. Apparently, the SyntheticEvent interface has changed at some point so, that the target property is no longer generic, but currentTarget is. Is there any syntax to refer the current type? It would be really great if we could have currentTarget be generic, so that for example HTMLInputElement.onchange can be of type (event: Event) => void so that event.currentTarget.value works without any cast or type annotations. XML: /echo/xml/. I ran into this TS2339: Property 'result' does not exist on type 'EventTarget' in JS FileReader onload, and another warning for getSummary() on the event passed to FileReader's onerror. But @saschanaz is blocking based on the performance. Note: As of v0.14, returning false from an event handler will no longer stop event propagation. This means that the SyntheticEvent object will be reused and all properties will be nullified after the event callback has been invoked. Do these performance problems apply equally to the React typings? Successfully merging a pull request may close this issue. The currentTarget event property returns the element whose event listeners triggered the event. Binding to events and intercepting data is easy enough. I am trying to pass an Event Handler to onInput and onBlur but it is complaining about my types for the function itself. privacy statement. This is blocked by performance issue caused by generics as introducing generics doubles memory usage . On 3 Aug 2014, at 13:34, SaschaNaz notifications@github.com wrote: interface Event { So i guess there's something related to how angular manage production files. Yep, this is probably the Number 1 day-long nuisance when working with DOM, JSX, etc. JSON: /echo/json/ However, the Event's currentTarget property is of type EventTarget (whereas it's should be of type Element/HTMLElement). "UPD: As mentioned by @roger-gusmao ChangeEvent more suitable for typing form events. addEventListener(type: string, listener: EventListener, useCapture? I think this is a good idea. Hopefully this is going into the right direction. I really hope somebody could fix this nearly 3 years old issue. Also this is open since 2014. HTML: /echo/html/ lib.d.ts doesn't include React typings but you can test it by adding --diagnostics to the command. In fact, it's the only daily nuisance I have - and I imagine a million people have this, all day long. Sign in Type 'EventTarget' is missing the following properties from type 'HTMLInputElement': accept, align, alt, autocomplete, and 283 more. Casting party tonite at 11 - unload your browser tabs: Such errors may be the reason why I often hear people say that TypeScript is hard to use and that really makes me sad. I don't get intellisense for tagName/classList since EventTarget is not classified as HTMLElement, but it works. I tried @saschanaz's suggestion and ran into the "duplicate identifier" issue (sorry I may be missing something, I'm pretty new to TypeScript). 3 $( ".box").on( "click", "button", function ( event ) But as I see the only reference to currentTarget is inside generated webworker.generated.d.ts files in TSJS generator. For example: Request to change currentTarget in Event interface for lib.d.ts, // receives EventListener type, // receives EventListener type, // console.log($ev.target.result); // editor and autocomplete doesn't show any error. Because of that, we're not going to make improvements in the script at this time, but hopefully in the future we can take PRs on the lib.d.ts generation script/input.