package io.gmss.fiscad.interfaces.decoupage;

import io.gmss.fiscad.entities.decoupage.Secteur;
import io.gmss.fiscad.exceptions.BadRequestException;
import io.gmss.fiscad.exceptions.NotFoundException;
import io.gmss.fiscad.paylaods.request.SecteurPayload;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

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

public interface SecteurService {

    Secteur createSecteur(SecteurPayload secteur) throws BadRequestException;

    Secteur updateSecteur(Long id, SecteurPayload secteur) throws NotFoundException;

    void deleteSecteur(Long id) throws NotFoundException;

    Page<Secteur> getSecteurList(Pageable pageable);

    List<Secteur> getSecteurList();

    List<Secteur> getSecteurListUneStruture(Long structureId);

    Optional<Secteur> getSecteurById(Long id);
}