<?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); }