RoleRepositoryInterface.php 775 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Shop\Roles\Repositories;
  3. use Jsdecena\Baserepo\BaseRepositoryInterface;
  4. use App\Shop\Permissions\Permission;
  5. use App\Shop\Roles\Role;
  6. use Illuminate\Support\Collection;
  7. interface RoleRepositoryInterface extends BaseRepositoryInterface
  8. {
  9. public function createRole(array $data) : Role;
  10. public function listRoles(string $order = 'id', string $sort = 'desc') : Collection;
  11. public function findRoleById(int $id);
  12. public function updateRole(array $data) : bool;
  13. public function deleteRoleById() : bool;
  14. public function attachToPermission(Permission $permission);
  15. public function attachToPermissions(... $permissions);
  16. public function syncPermissions(array $ids);
  17. public function listPermissions() : Collection;
  18. }