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

import io.gmss.fiscad.entities.infocad.parametre.SourceDroitExerce;
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 SourceDroitExerceService {

    SourceDroitExerce createSourceDroitExerce(SourceDroitExerce sourceDroitExerce) throws BadRequestException;

    SourceDroitExerce updateSourceDroitExerce(Long id, SourceDroitExerce sourceDroitExerce) throws NotFoundException;

    void deleteSourceDroitExerce(Long id) throws NotFoundException;

    Page<SourceDroitExerce> getSourceDroitExerceList(Pageable pageable);

    List<SourceDroitExerce> getSourceDroitExerceList();

    Optional<SourceDroitExerce> getSourceDroitExerceById(Long id);
}
