Files
test_bellis/laravel/app/Contracts/TaskServiceInterface.php
2026-02-18 19:54:52 +07:00

32 lines
593 B
PHP

<?php
declare(strict_types=1);
namespace App\Contracts;
use App\Models\Task;
use Illuminate\Contracts\Pagination\LengthAwarePaginator;
use Throwable;
interface TaskServiceInterface
{
/**
* @throws Throwable
*/
public function list(RequestFilterInterface $filters): LengthAwarePaginator;
/**
* @throws Throwable
*/
public function create(array $data): Task;
public function show(Task $task): Task;
/**
* @throws Throwable
*/
public function update(Task $task, array $data): Task;
public function delete(Task $task): void;
}