title: node import url and querystring types to a TypeScript Application
body: <p>I would like to import <code>url</code> and <code>querystring</code> node modules in a TypeScript Application.</p>
  
  <pre><code>import url from 'url';
  import querystring from 'querystring';
  </code></pre>
  
  <p>But I'm getting the fallowing warning, and I'm not getting typing from it.</p>
  
  <blockquote>
    <p>[ts] Could not find a declaration file for module 'url'. '.../node_modules/url/url.js' implicitly has an 'any' type.
      Try <code>npm install @types/url</code> if it exists or add a new declaration (.d.ts) file containing <code>declare module 'url';</code> [7016]</p>
  </blockquote>
  
  <p>I know that <code>url</code> and <code>querystring</code> are node modules. I've Installed <code>"@types/node": "^10.12.9",</code> but it does not solves the typing from both neither the warning.</p>
  
  <p><strong>What Should I Do to get typing from it?</strong></p>
  
  <p>info: I'ts a frontend application using Vue CLI</p>
  
  <p>here are my <code>ts.config</code></p>
  
  <pre><code>{
    "compilerOptions": {
      "target": "es5",
      "module": "esnext",
      "strict": true,
      "strictNullChecks": false,
      "jsx": "preserve",
      "importHelpers": true,
      "moduleResolution": "node",
      "experimentalDecorators": true,
      "esModuleInterop": true,
      "allowSyntheticDefaultImports": true,
      "sourceMap": true,
      "noImplicitAny": false,
      "baseUrl": ".",
      "types": ["webpack-env", "mocha", "chai"],
      "paths": {
        "@/*": ["src/*"]
      },
      "lib": ["esnext", "dom", "dom.iterable", "scripthost"]
    },
    "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "tests/**/*.ts", "tests/**/*.tsx"],
    "exclude": ["node_modules"]
  }
  </code></pre>
  
  <p>and <code>package.json</code></p>
  
  <pre><code>{
    "name": "rating-form",
    "version": "0.1.0",
    "private": true,
    "scripts": {
      "serve": "vue-cli-service serve",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint",
      "test:unit": "vue-cli-service test:unit"
    },
    "dependencies": {
      "axios": "^0.18.0",
      "bootstrap": "^4.1.3",
      "jquery": "^3.3.1",
      "moment": "^2.22.2",
      "popper.js": "^1.14.4",
      "toastr": "^2.1.4",
      "vue": "^2.5.17",
      "vue-class-component": "^6.0.0",
      "vue-property-decorator": "^7.0.0",
      "vue-router": "^3.0.1",
      "vue-slider-component": "^2.8.0"
    },
    "devDependencies": {
      "@types/chai": "^4.1.0",
      "@types/mocha": "^5.2.4",
      "@types/node": "^10.12.9",
      "@types/qs": "^6.5.1",
      "@types/toastr": "^2.1.35",
      "@vue/cli-plugin-typescript": "^3.1.1",
      "@vue/cli-plugin-unit-mocha": "^3.1.1",
      "@vue/cli-service": "^3.1.1",
      "@vue/test-utils": "^1.0.0-beta.20",
      "chai": "^4.1.2",
      "ts-node": "^7.0.1",
      "typescript": "^3.1.6",
      "vue-template-compiler": "^2.5.17"
    }
  }
  </code></pre>