package io.gmss.fiscad.interfaces.rfu.parametre;

import io.gmss.fiscad.entities.rfu.parametre.Caracteristique;
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 CaracteristiqueService {

    Caracteristique createCaracteristique(Caracteristique caracteristique) throws BadRequestException;

    Caracteristique updateCaracteristique(Long id, Caracteristique caracteristique) throws NotFoundException;

    void deleteCaracteristique(Long id) throws NotFoundException;

    Page<Caracteristique> getCaracteristiqueList(Pageable pageable);

    List<Caracteristique> getCaracteristiqueList();

    Optional<Caracteristique> getCaracteristiqueById(Long id);
}
