package io.gmss.fiscad.interfaces.decoupage;

import io.gmss.fiscad.entities.decoupage.Departement;
import io.gmss.fiscad.exceptions.BadRequestException;
import io.gmss.fiscad.exceptions.NotFoundException;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Optional;

public interface DepartementService {

    Departement createDepartement(Departement departement) throws BadRequestException;

    Departement updateDepartement(Long id, Departement departement) throws NotFoundException;

    void deleteDepartement(Long id) throws NotFoundException;

    Page<Departement> getDepartementList(Pageable pageable);

    List<Departement> getDepartementList();

    Optional<Departement> getDepartementById(Long id);
}
