Skip to content

Instantly share code, notes, and snippets.

@introqt
Created July 29, 2020 09:14
Show Gist options
  • Save introqt/d3cd8393f367c7b14035ac62271aa9ad to your computer and use it in GitHub Desktop.
Save introqt/d3cd8393f367c7b14035ac62271aa9ad to your computer and use it in GitHub Desktop.

Revisions

  1. introqt created this gist Jul 29, 2020.
    46 changes: 46 additions & 0 deletions HomePageInterface.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,46 @@
    <?php

    declare(strict_types=1);

    namespace Modules\Home\Services;

    use Illuminate\Database\Eloquent\Collection;

    use Modules\Home\Entities\ArticleOnMain;
    use Modules\Home\Entities\SeasonalOffer;
    use Modules\Home\Entities\ProductCategoryOnMain;
    use Modules\Home\Entities\Slider;

    use App\Models\Page;

    /**
    * Interface HomePageInterface
    * @package Modules\Home\Services
    */
    interface HomePageInterface
    {
    /**
    * @return Collection|SeasonalOffer[]
    */
    public function getSeasonalOffers(): Collection;

    /**
    * @return Collection|ArticleOnMain[]
    */
    public function getArticles(): Collection;

    /**
    * @return Collection|ProductCategoryOnMain
    */
    public function getProductCategories(): Collection;

    /**
    * @return Collection|Slider[]
    */
    public function getSliders(): Collection;

    /**
    * @return Page
    */
    public function getPage(): Page;
    }