package com.arms.api.evaluation.service;

import com.arms.api.evaluation.model.dto.EvaluationRequestDTO;
import com.arms.api.evaluation.model.vo.EvaluationResultVO;
import com.arms.api.evaluation.model.vo.FullEvaluationResultVO;
import reactor.core.publisher.Mono;

public interface EvaluationService {

    Mono<EvaluationResultVO> evaluateRelevancy(EvaluationRequestDTO request);

    Mono<EvaluationResultVO> evaluateFactChecking(EvaluationRequestDTO request);

    Mono<FullEvaluationResultVO> evaluateAll(EvaluationRequestDTO request);

    Mono<FullEvaluationResultVO> evaluateAllWithContext(EvaluationRequestDTO request);
}
