<p dir="auto">When trying to compile a react 15 project with Typescript and MaterialUI 1.0.0-beta, typescript found inconsistencies on typings defined.</p>


<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://github.com/callemall/material-ui/issues">issues</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<h2 dir="auto">Expected Behavior</h2>

<p dir="auto">Material-ui, react15 and typescript should be able to compile properly.</p>
<h2 dir="auto">Current Behavior</h2>

<p dir="auto">Typescript is not able to compile due to several typing / descriptor inconsistencies.<br>
First according to material-ui package descriptor, material-ui should be compatible with both react 15 and react 16.</p>
<p dir="auto">Some of typings for example of Table component seems to rely on react 16 definitions, and in order to be compatible with react 15 this should not occur.</p>
<p dir="auto">Example errors:</p>
<p dir="auto"><code class="notranslate">.../material-ui/Tooltip/Tooltip.d.ts (4,18): error TS2430: Interface 'TooltipProps' incorrectly extends interface 'HTMLAttributes&lt;HTMLDivElement&gt;'. Types of property 'label' are incompatible. Type 'ReactNode' is not assignable to type 'string | undefined'. Type 'null' is not assignable to type 'string | undefined'. </code></p>
<p dir="auto"><code class="notranslate">.../material-ui/Table/TableCell.d.ts (17,11): error TS2694: Namespace 'React' has no exported member 'ThHTMLAttributes'.</code></p>
<p dir="auto"><code class="notranslate">.../material-ui/Table/Table.d.ts (5,17): error TS2694: Namespace 'React' has no exported member 'TableHTMLAttributes'.</code></p>
<p dir="auto"><code class="notranslate">.../material-ui/Snackbar/SnackbarContent.d.ts (5,18): error TS2430: Interface 'SnackbarContentProps' incorrectly extends interface 'PaperProps'. Types of property 'action' are incompatible. Type 'ReactElement&lt;any&gt; | undefined' is not assignable to type 'string | undefined'. Type 'ReactElement&lt;any&gt;' is not assignable to type 'string | undefined'. Type 'ReactElement&lt;any&gt;' is not assignable to type 'string'.</code></p>
<h2 dir="auto">Steps to Reproduce (for bugs)</h2>

<ol dir="auto">
<li>create-react-app my-app --scripts-version=react-scripts-ts</li>
<li>add material-ui</li>
<li>add a component and try to compile</li>
</ol>
<h2 dir="auto">Context</h2>
    
<p dir="auto">Project do not build.</p>
<h2 dir="auto">Your Environment</h2>

<table role="table">
<thead>
<tr>
<th>Tech</th>
<th>Version</th>
</tr>
</thead>
<tbody>
<tr>
<td>Material-UI</td>
<td>1.0.0-beta10</td>
</tr>
<tr>
<td>React</td>
<td>15.3.0</td>
</tr>
<tr>
<td>typescript</td>
<td>2.3.4</td>
</tr>
</tbody>
</table>
<p dir="auto">I tried the table demo on your site and found nothing about editing.</p>
<p dir="auto">Thus I request a cell editing feature like they do it with angularjs:</p>
<p dir="auto"><a href="http://codepen.io/anon/pen/YwGJVr?editors=101" rel="nofollow">http://codepen.io/anon/pen/YwGJVr?editors=101</a></p>
<p dir="auto">You can edit the last comment column :-)</p>