title: Value of type 'Express' has no properties in common with type 'ServerOptions'
body: <p>I am using typescript in my server and while I am familiar with typescript as I use it a lot I am not too used to it in the back end.
  I am creating a socket I am also trying using es6 imports for because it helps with consistency. I am trying to change this:</p>
  
  <pre><code>require('dotenv').config({path: __dirname + '/.env'});
  const app = require('express')();
  const cors = require('cors');
  const PORT = process.env.CHAT_PORT || 3000;
  const ENV = process.env.NODE_ENV || 'development';
  const server = require('http').createServer(app, {origins: 'http://192.168.x.xx/'}); 
  </code></pre>
  
  <p>to this: </p>
  
  <pre class="lang-js prettyprint-override"><code>import dotenv from 'dotenv';
  import * as express from 'express';
  import cors from 'cors';
  dotenv.config({path:'__dirname' + '/env'});
  const app = express();
  import http from 'http';
  const server = http.createServer(app, {origins: 'http://192.168.x.xx:8100/'})
  </code></pre>
  
  <p>but with the second one where i have <code>const server = http.create(...)</code>
  I get various errors like:</p>
  
  <blockquote>
    <p>Value of type 'Express' has no properties in common with type 'ServerOptions'.</p>
  </blockquote>
  
  <p>as well as using types such as <code>const app: Express = express()</code> causes an import of Express from 'net'. 
  while I love typescript it feel like a complete wrestle in the backend.</p>