package com.infoclinika.pdx.projection;

import com.infoclinika.pdx.domain.sample.SampleType;
import org.springframework.beans.factory.annotation.Value;

/**
 * Projection of Sample.
 */
@SuppressWarnings("InterfaceNeverImplemented")
public interface SampleSummaryWithCounts {
    Long getId();

    String getName();

    SampleType getType();

    IdAndName getProject();

    IdAndName getDiseaseType();

    IdAndName getPrimarySite();

    String getSubType();

    @Value("#{target.getRnaSeqTypesSize()}")
    Long getRnaSeq();

    @Value("#{target.exomeSeqResults.size()}")
    Integer getExomeSeq();

    @Value("#{target.getPassageNumber()}")
    String getPassageNumber();
}
