52 lines
968 B
PHP
52 lines
968 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Repositories;
|
||
|
|
||
|
use App\Models\User;
|
||
|
use Illuminate\Database\Eloquent\Collection;
|
||
|
|
||
|
interface UsersRepositoryInterface
|
||
|
{
|
||
|
/**
|
||
|
* Get all Users.
|
||
|
* @return User[]|Collection
|
||
|
*/
|
||
|
public function getAll();
|
||
|
|
||
|
/**
|
||
|
* Paginate Users, chunkSize is the size of one page.
|
||
|
* @param $chunkSize
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function paginate($chunkSize);
|
||
|
|
||
|
/**
|
||
|
* Create user with given data.
|
||
|
* @param $data
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function create($data);
|
||
|
|
||
|
/**
|
||
|
* Delete user with given id.
|
||
|
* @param $id
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function delete($id);
|
||
|
|
||
|
/**
|
||
|
* Get user by id.
|
||
|
* @param $userId
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function getById($userId);
|
||
|
|
||
|
/**
|
||
|
* Get the users where $field is equal to $actual.
|
||
|
* @param $field
|
||
|
* @param $actual
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function getWhereEquals($field, $actual);
|
||
|
}
|