title: Using TypeScript and nodemon: SyntaxError: Cannot use import statement outside a module
body: <p>I am converting the code to use nodemon to leverage TypeScript.</p>
  
  <p>In my <code>package.json</code>:</p>
  
  <pre class="lang-js prettyprint-override"><code>  "scripts": {
      "serve-fake-api": "nodemon fake-api/server.ts --watch 'fake-api/*.*'  ",
      "serve-vue": "vue-cli-service serve",
      "serve": "concurrently -k \"npm run serve-fake-api\" \"npm run serve-vue\"",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint"
    },
  </code></pre>
  
  <p>and the <code>fake-api/server.ts</code> file:</p>
  
  <pre class="lang-js prettyprint-override"><code>import { readFileSync } from 'fs';
  import { create, defaults, bodyParser, rewriter, router as _router } from 'json-server';
  import { join } from 'path';
  
  const server = create();
  const defaultMiddleware = defaults();
  
  // It is recommended to use the bodyParser middleware before any other middleware in your application
  server.use(bodyParser);
  
  server.use(defaultMiddleware);
  
  // Define custom routes (routes.json)
  const routes = JSON.parse(readFileSync(join(__dirname, 'routes.json'), "utf8"));
  server.use(rewriter(routes));
  
  // Add custom middleware before JSON Server router
  const customMiddleware = require(join(__dirname, 'middleware.ts'));
  server.use(customMiddleware);
  
  // This is where `json-server`'s magic happens ;)
  const router = _router(join(__dirname, 'db.json'));
  
  // Start the application by listening to port 3000,
  // Although this won't print the nice starting message you see when
  // running `json-server` as CLI command, it still runs the app correctly.
  server.use(router);
  server.listen(3000, () =&gt; {
    console.log('JSON Server is running')
  });
  </code></pre>
  
  <p>but when running <code>npm run serve</code>:</p>
  
  <pre><code>[0] C:\Users\eperret\Desktop\tabulator-tests\fake-api\server.ts:1
  [0] import { readFileSync } from 'fs';
  [0] ^^^^^^
  [0]
  [0] SyntaxError: Cannot use import statement outside a module
  </code></pre>
  
  <p>I googled a bit and ended up here: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import" rel="nofollow noreferrer">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import</a></p>
  
  <p>Is there a workaround to keep using this kind of <code>import</code>?</p>