title: Web Application
body: <p>I met this problem on my web project. What needs to be improved?</p>
  <pre><code>import { Injectable } from '@angular/core';
  import { HttpClient } from '@angular/common/http';
  import {map} from 'rxjs/operators';
  import { IMineral } from '../Mineral/IMineral.interface';
  import { Observable } from 'rxjs';
  
  @Injectable({
    providedIn: 'root'
  })
  export class MineralWorldService {
  
  
  
  
    constructor(private http:HttpClient) {
     }
      getAllMinerals(): Observable&lt;IMineral[]&gt;
      {
       return this.http.get('data/minerals.json').pipe( map(data=&gt;
        {
             const mineralsArray: Array&lt;IMineral&gt; =[];
             for( const id in data )
             {
               if(data.hasOwnProperty(id))
               {
                 mineralsArray.push(data[id]);
               }
  
             }
             return mineralsArray;
        }
            )
      );
      }
  }
  </code></pre>
  <p>Element implicitly has an <code>any</code> type because expression of type <code>string</code> can't be used to index type <code>Object</code>.
  No index signature with a parameter of type <code>string</code> was found on type <code>Object</code>.</p>