title: Property 'json' does not exist on type '{}'
body: <p>I have an abstract base class in Typescript that looks like this:</p>
  
  <pre><code>import {Http, Headers, Response} from 'angular2/http'; 
  export abstract class SomeService {
      constructor(private http:Http) {}   
  
      protected post(path:string, data:Object) {
          let stringifiedData = JSON.stringify(data);
          let headers = new Headers();
          headers.append('Content-Type', 'application/json');
          headers.append('Accept', 'application/json');
  
          this.http.post(`http://api.example.com/${path}`, stringifiedData, { headers })
              .map(res =&gt; res.json())
              .subscribe(obj =&gt; console.log(obj));
      }
  }
  </code></pre>
  
  <p>It works perfectly. However, the Typescript compiler is complaining about <code>.map(res =&gt; res.json())</code>. I keep getting this error:</p>
  
  <pre><code>ERROR in ./src/app/components/shared/something/some.abstract.service.ts
  (13,29): error TS2339: Property 'json' does not exist on type '{}'.
  </code></pre>
  
  <p>I followed the examples in <a href="https://angular.io/docs/ts/latest/api/http/Http-class.html">the angular 2 documentation</a>, and <em>it works</em>. I'm just sick of staring at this error. Am I missing something?</p>