PermissionRepositoryInterface.php 586 B

123456789101112131415161718192021222324
  1. <?php
  2. namespace App\Repositories;
  3. use App\DTO\PermissionDTO;
  4. use App\Models\Permission;
  5. use Illuminate\Database\Eloquent\Collection;
  6. interface PermissionRepositoryInterface
  7. {
  8. public function all(): ?Collection;
  9. public function allNoTree(): ?Collection;
  10. public function find(int $id): ?Permission;
  11. public function findByScope(string $scope): ?Permission;
  12. public function update(int $id, PermissionDTO $dto, array $fieldsToUpdate): ?Permission;
  13. public function store(PermissionDTO $permissionDTO): Permission;
  14. public function delete(int $id): bool;
  15. }