title: Typescript promise undefined
body: <p>I have a function <code>fetchLyrics</code> which hits a service and subscribes to it and I currently use it as an Output event from a child component.</p>
  
  <pre><code>fetchLyrics($event) {
      console.log($event);
      this.apiService.get($event.artist, $event.song)
        .subscribe(
        (res) =&gt; {
          console.log(res);
          return res['lyrics'];
        },
        (err) =&gt; {
          console.log(err);
          return err;
        }
      );
    }
  </code></pre>
  
  <p>I want to reuse the function in the same parent component in the callback for <code>getSuggestions</code> </p>
  
  <pre><code>getSuggestions(term) {
      this.apiService.suggest(term)
        .debounceTime(2000)
        .subscribe(
        (res) =&gt; {
          console.log(res);
          for (const item of res['data']) {
            const grab = this.fetchLyrics({
              artist: item.artist.name,
              song: item.title,
            });
            console.log(grab);
            item.playing = false;
          }
          this.songs = res['data'];
        },
        (err) =&gt; {
          this.songs = [];
          console.log(err);
        }
        );
  </code></pre>
  
  <p>But when I check my console log I see that <code>grab</code> returns <code>undefined</code> for every iteration of the data returned in <code>res['data']</code></p>