title: Problem of Property does not exist on type
body: <p>I have an error while compiling showing that a class doesn't have a property when I call it from the component, even if the call works well.</p>
  
  <p>This is the class:</p>
  
  <pre><code>    export declare class MessageService {
      private messageSource;
      private clearSource;
      messageObserver: import("rxjs/internal/Observable").Observable&lt;Message | Message[]&gt;;
      clearObserver: import("rxjs/internal/Observable").Observable&lt;string&gt;;
     public  add(message: Message): void;
     public addAll(messages: Message[]): void;
      clear(key?: string): void;
  }
  </code></pre>
  
  <p>and this is where I call it from the component: </p>
  
  <pre><code>showSuccess(details) {
      this.messageService.add({ severity: 'success', life: 5000, summary: 'Success Message', detail: details });        
  }
  </code></pre>
  
  <p>Compiled with warnings.</p>
  
  <pre><code>ERROR in C:/Users/..../webapp/app/entities/asset/asset-update.component.ts(555,29):
  TS2339: Property 'add' does not exist on type 'MessageService'.
  </code></pre>
  
  <p>this is messageService.js : </p>
  
  <pre><code>"use strict";
  var __decorate = (this &amp;&amp; this.__decorate) || function (decorators, target, key, desc) {
      var c = arguments.length, r = c &lt; 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
      if (typeof Reflect === "object" &amp;&amp; typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
      else for (var i = decorators.length - 1; i &gt;= 0; i--) if (d = decorators[i]) r = (c &lt; 3 ? d(r) : c &gt; 3 ? d(target, key, r) : d(target, key)) || r;
      return c &gt; 3 &amp;&amp; r &amp;&amp; Object.defineProperty(target, key, r), r;
  };
  Object.defineProperty(exports, "__esModule", { value: true });
  var core_1 = require("@angular/core");
  var rxjs_1 = require("rxjs");
  var MessageService = /** @class */ (function () {
      function MessageService() {
          this.messageSource = new rxjs_1.Subject();
          this.clearSource = new rxjs_1.Subject();
          this.messageObserver = this.messageSource.asObservable();
          this.clearObserver = this.clearSource.asObservable();
      }
      MessageService.prototype.add = function (message) {
          if (message) {
              this.messageSource.next(message);
          }
      };
      MessageService.prototype.addAll = function (messages) {
          if (messages &amp;&amp; messages.length) {
              this.messageSource.next(messages);
          }
      };
      MessageService.prototype.clear = function (key) {
          this.clearSource.next(key || null);
      };
      MessageService = __decorate([
          core_1.Injectable()
      ], MessageService);
      return MessageService;
  }());
  exports.MessageService = MessageService;
  //# sourceMappingURL=messageservice.js.map
  </code></pre>