title: Why 'input' event has `Event` type of event instead of `InputEvent`
body: <p>Hi I am wondering why type of <strong><code>'input'</code></strong> event type is a <code>Event</code> type (I thought it should be <code>InputEvent</code>)?</p>
  <p>I came across on this problem doing this:</p>
  <pre class="lang-js prettyprint-override"><code>interface OnInputTextFieldListenerProps extends BaseTextFieldListenerProps {
      eventName: Extract&lt;keyof GlobalEventHandlersEventMap, 'input'&gt;;
      callback(e?: InputEvent): void;
  }
  
  if (isOnInputTextFieldProps(listenerProps)) {
      this.input.addEventListener&lt;'input'&gt;(listenerProps.eventName, listenerProps.callback.bind(this));
  }
  </code></pre>
  <p>And now i am getting this error:</p>
  <blockquote>
  <p>TS2345: Argument of type '(e?: InputEvent | undefined) =&gt; void' is not assignable to parameter of type '(this: HTMLInputElement, ev: Event) =&gt; any'.</p>
  </blockquote>
  <p>Which is fully correct. But why <code>GlobalEventHandlersEventMap</code> <strong><code>'input'</code></strong> is typed as <code>Event</code> instead of <code>InputEvent</code>.</p>
  <p>You can find this <code>GlobalEventHandlersEventMap</code> interface here <strong><a href="https://github.com/microsoft/TypeScript/blob/da5ff57608dd73247b898812c9fccca285969ab3/lib/lib.dom.d.ts#L5715" rel="nofollow noreferrer">lib.dom.d.ts</a></strong> at line <strong><code>5715</code></strong>.</p>
  <h3>Note</h3>
  <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/input_event" rel="nofollow noreferrer">MDN documentation</a> says that <code>GlobalEventHandlers.oninput</code> interface is <code>InputEvent</code>. <code>oninput</code> is probalby equivalent of typescript <code>input</code>. I think like that because in MDN docs every key of <code>GlobalEventHandlers</code> interface starts with <code>on</code>.</p>
  <blockquote>
  <p>I also decided to open an issue in Typescript repo which you can find here: <a href="https://github.com/microsoft/TypeScript/issues/39925" rel="nofollow noreferrer">Issue - 39925</a></p>
  </blockquote>