<?php
/**
 * Created by PhpStorm.
 * User: radko
 * Date: 15.11.18
 * Time: 11:23
 */

namespace Seka\Vzdelavanie\Services;

use Illuminate\Support\Collection;
use Seka\Vzdelavanie\Models\Kniznica\Kategoria;

/**
 * Interface KategoriaServiceInterface
 * @package Seka\Vzdelavanie\Services
 */
interface KategoriaServiceInterface extends ServiceInterface
{
    /**
     * @return \Illuminate\Support\Collection
     */
    public function vratVsetky(): Collection;

    /**
     * @param int      $id
     * @param int|null $pocet
     *
     * @return \Seka\Vzdelavanie\Models\Kniznica\Kategoria
     * @throws \Seka\Vzdelavanie\Repositories\Exceptions\ModelNotFoundException
     */
    public function vratKategoriuSUcebnymiMaterialmi(int $id, int $pocet = null): Kategoria;

    /**
     * @param int $pocetUcebnychMaterialov
     *
     * @return \Illuminate\Support\Collection
     * @throws \Seka\Vzdelavanie\Repositories\Exceptions\ModelNotFoundException
     */
    public function vratVsetkySUcebnymiMaterialmi(int $pocetUcebnychMaterialov = 5): Collection;
}
