title: Could not find a declaration file for module 'vue-tabulator'
body: <p>I am trying to use the vue-tabulator Vue component: <a href="https://github.com/angeliski/vue-tabulator" rel="nofollow noreferrer">https://github.com/angeliski/vue-tabulator</a> in a simple Vue application which happens to be coded in TypeScript.</p>
  
  <p><code>main.ts</code>:</p>
  
  <pre><code>import Vue from 'vue'
  import VueTabulator from 'vue-tabulator'
  import App from './App.vue'
  
  Vue.config.productionTip = false
  
  Vue.use(VueTabulator)
  
  new Vue({
    render: h =&gt; h(App)
  }).$mount('#app')
  </code></pre>
  
  <p><code>App.ts</code>:</p>
  
  <pre><code>import { Component, Vue } from 'vue-property-decorator'
  
  @Component
  export default class App extends Vue {}
  </code></pre>
  
  <p><code>App.vue</code>:</p>
  
  <pre><code>&lt;template&gt;
    &lt;div id="app"&gt;
      &lt;h1&gt;Kewl&lt;/h1&gt;
    &lt;/div&gt;
  &lt;/template&gt;
  
  &lt;style scoped&gt;
  &lt;/style&gt;
  
  &lt;script lang="ts" src="./App.ts"&gt;
  &lt;/script&gt;
  </code></pre>
  
  <p>When running my application with <code>npm run serve</code> I have the following:</p>
  
  <pre><code> ERROR  Failed to compile with 1 errors                                                                                                                     2:23:19 PM
  This dependency was not found:
  
  * tabulator-tables in ./node_modules/vue-tabulator/dist/vue-tabulator.common.js
  
  To install it, you can run: npm install --save tabulator-tables
  Type checking in progress...
  ERROR in C:/Users/eperret/Desktop/tabulator-tests/src/main.ts(2,26):
  2:26 Could not find a declaration file for module 'vue-tabulator'. 'C:/Users/eperret/Desktop/tabulator-tests/node_modules/vue-tabulator/dist/vue-tabulator.umd.js' implicitly has an 'any' type.
    Try `npm install @types/vue-tabulator` if it exists or add a new declaration (.d.ts) file containing `declare module 'vue-tabulator';`
      1 | import Vue from 'vue'
    &gt; 2 | import VueTabulator from 'vue-tabulator'
        |                          ^
      3 | import App from './App.vue'
      4 | 
      5 | Vue.config.productionTip = false
  Version: typescript 3.5.3
  Time: 3055ms
  </code></pre>
  
  <p>and last but not least, <code>packages.json</code>:</p>
  
  <pre><code>{
    "name": "tabulator-tests",
    "version": "0.1.0",
    "private": true,
    "scripts": {
      "serve": "vue-cli-service serve",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint"
    },
    "dependencies": {
      "core-js": "^3.3.2",
      "vue": "^2.6.10",
      "vue-class-component": "^7.0.2",
      "vue-property-decorator": "^8.3.0",
      "vue-tabulator": "^1.2.2"
    },
    "devDependencies": {
      "@vue/cli-plugin-babel": "^4.0.0",
      "@vue/cli-plugin-eslint": "^4.0.0",
      "@vue/cli-plugin-typescript": "^4.0.0",
      "@vue/cli-service": "^4.0.0",
      "@vue/eslint-config-standard": "^4.0.0",
      "@vue/eslint-config-typescript": "^4.0.0",
      "eslint": "^5.16.0",
      "eslint-plugin-vue": "^5.0.0",
      "typescript": "~3.5.3",
      "vue-template-compiler": "^2.6.10"
    },
    "eslintConfig": {
      "root": true,
      "env": {
        "node": true
      },
      "extends": [
        "plugin:vue/essential",
        "@vue/standard",
        "@vue/typescript"
      ],
      "rules": {},
      "parserOptions": {
        "parser": "@typescript-eslint/parser"
      }
    },
    "postcss": {
      "plugins": {
        "autoprefixer": {}
      }
    },
    "browserslist": [
      "&gt; 1%",
      "last 2 versions"
    ]
  }
  </code></pre>
  
  <p>I check the answer given here: <a href="https://stackoverflow.com/questions/42940920/could-not-find-a-declaration-file-for-module">Could not find a declaration file for module</a></p>
  
  <p>But I don't see how the solution given in that thread can actually help me.</p>
  
  <p>How can I do?</p>
  
  <p>[EDIT 1]</p>
  
  <p>I tried to install the TypeScript types for <code>vue-tabulator</code> but it seems there isn't such a package:</p>
  
  <pre><code>npm install @types/vue-tabulator
  npm ERR! code E404
  npm ERR! 404 Not Found - GET https://registry.npmjs.org/@types%2fvue-tabulator - Not found
  npm ERR! 404
  npm ERR! 404  '@types/vue-tabulator@latest' is not in the npm registry.
  npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
  npm ERR! 404
  npm ERR! 404 Note that you can also install from a
  npm ERR! 404 tarball, folder, http url, or git url.
  </code></pre>
  
  <p>[EDIT 2]</p>
  
  <p>About the shims I have two related files in my <code>src</code> folder:</p>
  
  <p><code>shims-tsx.d.ts</code>:</p>
  
  <pre><code>import Vue, { VNode } from 'vue'
  
  declare global {
    namespace JSX {
      // tslint:disable no-empty-interface
      interface Element extends VNode {}
      // tslint:disable no-empty-interface
      interface ElementClass extends Vue {}
      interface IntrinsicElements {
        [elem: string]: any
      }
    }
  }
  </code></pre>
  
  <p><code>shims-vue.d.ts</code>:</p>
  
  <pre><code>declare module '*.vue' {
    import Vue from 'vue'
    export default Vue
  }
  </code></pre>