package com.iqser.red.service.persistence.management.v1.processor.entity.projection;

import java.time.OffsetDateTime;
import java.util.Set;

import com.iqser.red.service.persistence.management.v1.processor.utils.JSONIntegerSetConverter;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.ProcessingStatus;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.WorkflowStatus;

import jakarta.persistence.Convert;

public interface DossierStatsFileProjection {

    boolean isHasRedactions();


    boolean isHasHints();


    boolean isHasSuggestions();


    boolean isHasUpdates();


    ProcessingStatus getProcessingStatus();


    OffsetDateTime getLastUpdated();


    OffsetDateTime getFileManipulationDate();


    WorkflowStatus getWorkflowStatus();


    int getNumberOfPages();


    @Convert(converter = JSONIntegerSetConverter.class)
    Set<Integer> getExcludedPages();

}
