title: Type 'Headers' has no properties in common with type 'RequestOptionsArgs'?
body: <p>I just made two important upgrades to our Angular 4 application and build tools:</p>
  
  <ol>
  <li><em>@angular/core</em> <code>^4.1.3</code> => <code>^4.2.4</code> (and /http, /forms, etc)</li>
  <li><em>tslint</em> <code>^5.3.2</code> => <code>^5.4.3</code></li>
  </ol>
  
  <p>I have a Service which declares options like so:</p>
  
  <pre><code>@Injectable()
  export class WorkOrderService {
  
      private headers: Headers = new Headers({ 'Content-Type': 'application/json' });
      private options: RequestOptions = new RequestOptions(this.headers);
  
      constructor(private http: Http) {}
  
      /* Methods ... */
  }
  </code></pre>
  
  <p>The above now no longer validates tslint, throwing the following error:</p>
  
  <blockquote>
    <p>error TS2559: Type 'Headers' has no properties in common with type 'RequestOptionsArgs'.</p>
  </blockquote>
  
  <p>The source (@angular/http <code>interface.d.ts:43</code>) clearly allows for <code>Headers</code> as a <code>RequestOptionsArgs</code>:</p>
  
  <pre><code>/**
   * Interface for options to construct a RequestOptions, based on
   * [RequestInit](https://fetch.spec.whatwg.org/#requestinit) from the Fetch spec.
   *
   * @experimental
   */
  export interface RequestOptionsArgs {
      url?: string | null;
      method?: string | RequestMethod | null;
      /** @deprecated from 4.0.0. Use params instead. */
      search?: string | URLSearchParams | {
          [key: string]: any | any[];
      } | null;
      params?: string | URLSearchParams | {
          [key: string]: any | any[];
      } | null;
      headers?: Headers | null;
      body?: any;
      withCredentials?: boolean | null;
      responseType?: ResponseContentType | null;
  }
  </code></pre>