title: Property 'value' does not exist on type EventTarget (ts2339)
body: <p>I am getting squigglies:</p>
  <p><a href="https://i.stack.imgur.com/HFJBu.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/HFJBu.png" alt="enter image description here" /></a></p>
  <p>You can see I'm typing it right (I think).</p>
  <pre class="lang-js prettyprint-override"><code>  const hClick = (e:React.MouseEvent&lt;HTMLButtonElement&gt;)=&gt;{
      console.log(e.target.value)
    }
  </code></pre>
  <p>Here's the element in question.</p>
  <pre><code>      {props.question.responses.map((r: string, i: number) =&gt; {
          return &lt;button key={i} value={r} className={`${CSS.columnBtn} ${CSS.gray}`} onClick={(e) =&gt; hClick(e)}&gt;{r}&lt;/button&gt;;
        })}
  </code></pre>
  <p>You can see it clearly has a value. I also did my research. Not only do buttons have values natively but MS <a href="https://microsoft.github.io/PowerBI-JavaScript/interfaces/_node_modules_typedoc_node_modules_typescript_lib_lib_dom_d_.htmlbuttonelement.html#value" rel="nofollow noreferrer">said in their docs</a> they have a value prop as does the <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-value" rel="nofollow noreferrer">general button element</a> per Mozilla and when I ctrl + clicked into the d.ts file for HTMLButtonElement, it shows a value prop that's a string:</p>
  <pre class="lang-js prettyprint-override"><code>    /**
       * Sets or retrieves the default or selected value of the control.
       */
      value: string;
  
  </code></pre>
  <p>Morever the code works and it logs the value. I'm pretty new to TypeScript so there's probably something I don't know, and that's what I want to learn.</p>
  <p>BTW if a property doesn't exist in a given element but you give it a custom one, it obviously won't be in the d.ts so how would you tell the compiler that your html attribute foo[=&quot;bar&quot;] exists on the event?</p>