Type 'Promise<Hero[]>' is not assignable to type 'Hero[]'.

これはHeroServiceにおいて、getHeroes関数の戻り値をHero[]からPromise<Hero[]>に変更した場合に発生しました。戻り値がPromiseになっているので、呼び出し側も相応に変更する必要があります。

変更前

  ngOnInit():void {
    this.heroes = this.heroService.getHeroes();
  }

変更後

  ngOnInit():void {
    this.heroService.getHeroes().then( promised_heroes => this.heroes = promised_heroes);
  }