<?php

namespace App\Repositories;

use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\ModelNotFoundException;

interface RepositoryInterface
{
	/**
	 * Fetches all entities from the storage.
	 * 
	 * @param array $columns
	 * 
	 * @return Collection
	 */
	public function getAll(array $columns = ['*']);
	
	/**
	 * Fetches the specified entity from the storage.
	 * 
	 * @param int   $id
	 * @param array $columns
	 * 
	 * @return Model
	 * @throws ModelNotFoundException
	 */
	public function getById($id, array $columns = ['*']);
	
	/**
	 * Deletes the specified entity from the storage.
	 * 
	 * @param int $id
	 * 
	 * @return Model
	 * @throws ModelNotFoundException
	 */
	public function deleteById($id);
}
<?php

namespace App\Repositories;

use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;

interface RepositoryInterface
{
	/**
	 * Fetches all entities from the storage.
	 * 
	 * @param array $columns
	 * 
	 * @return Collection
	 */
	public function getAll(array $columns = ['*']);
	
	/**
	 * Fetches the specified entity from the storage.
	 * 
	 * @param int   $id
	 * @param array $columns
	 * 
	 * @return Model
	 */
	public function getById($id, array $columns = ['*']);
	
	/**
	 * Deletes the specified entity from the storage.
	 * 
	 * @param int $id
	 * 
	 * @return Model
	 */
	public function deleteById($id);
}
--- 
+++ 
@@ -4,6 +4,7 @@
 
 use Illuminate\Database\Eloquent\Collection;
 use Illuminate\Database\Eloquent\Model;
+use Illuminate\Database\Eloquent\ModelNotFoundException;
 
 interface RepositoryInterface
 {
@@ -23,6 +24,7 @@
 	 * @param array $columns
 	 * 
 	 * @return Model
+	 * @throws ModelNotFoundException
 	 */
 	public function getById($id, array $columns = ['*']);
 	
@@ -32,6 +34,7 @@
 	 * @param int $id
 	 * 
 	 * @return Model
+	 * @throws ModelNotFoundException
 	 */
 	public function deleteById($id);
 }
Add @throws declarations to method comments.
