title: TypeScript Compile Error - Property does not exist on type
body: <p>When I am trying to compile my typescript code the following error appears:</p>
  
  <pre><code>src/Project/ProjectCollection.ts:6:13 - error TS2339: Property 'add' does not exist on type 'BaseCollection'.
  </code></pre>
  
  <p>I have attached the code below as a demo: </p>
  
  <p><strong>ProjectCollection.ts</strong></p>
  
  <pre><code>export default class ProjectCollection extends BaseCollection {
      addProject(project: Project) {
        super.add(project)
      }
  }
  </code></pre>
  
  <p><strong>BaseCollection.ts</strong></p>
  
  <pre><code>// @ts-ignore
  import Collection from 'collectionsjs';
  
  export default abstract class BaseCollection extends Collection {
      public all() {
          return super.all();
      }
  }
  </code></pre>
  
  <p>I am using the following library on github for collections: (<a href="https://github.com/logaretm/collectionsjs" rel="nofollow noreferrer">https://github.com/logaretm/collectionsjs</a>)</p>
  
  <p>If I swap the line from:</p>
  
  <pre><code>import Collection from 'collectionsjs'
  </code></pre>
  
  <p>to:</p>
  
  <pre><code>const Collection = require('collectionsjs')
  </code></pre>
  
  <p>Then the above error no longer occurs but when running tslint (<a href="https://palantir.github.io/tslint/" rel="nofollow noreferrer">https://palantir.github.io/tslint/</a>) I get this error:</p>
  
  <pre><code>ERROR: src/BaseCollection.ts:1:20 - require statement not part of an import statement
  </code></pre>
  
  <p>Just wondering if someone could explain why the first issue with the using import is occurring and how both of these issues can be resolved simultaneously? </p>
  
  <p>Thanks</p>