<?php

namespace App\Repositories;

interface RepositoryInterface
{
    public function all();
    
    public function find($id);
    
    public function create(array $data);
    
    public function update($id, array $data);
    
    public function delete($id);
    
    public function with($relations);
    
    public function where($column, $operator = null, $value = null);
    
    public function whereIn($column, array $values);
    
    public function orderBy($column, $direction = 'asc');
    
    public function paginate($perPage = 15);
    
    public function count();
    
    public function exists($id);
}
