package org.mte.numecoeval.referentiel.infrastructure.mapper;

import org.mapstruct.Mapper;
import org.mte.numecoeval.referentiel.domain.model.TypeItem;
import org.mte.numecoeval.referentiel.infrastructure.jpa.entity.TypeItemEntity;
import org.mte.numecoeval.referentiel.infrastructure.restapi.dto.TypeItemDTO;

import java.util.Collection;
import java.util.List;

@Mapper(componentModel = "spring")
public interface TypeItemMapper {

    TypeItem toDomain(TypeItemEntity TypeItemEntity);

    List<TypeItem> toDomains(List<TypeItemEntity> TypeItemEntities);

    TypeItem toDomain(TypeItemDTO TypeItemDTO);

    TypeItemEntity toEntity(TypeItem TypeItem);

    List<TypeItemEntity> toEntities(Collection<TypeItem> TypeItems);

    TypeItemDTO toDTO(TypeItem TypeItem);


}
