package com.unicorn.hgzero.ai.infra.dto.response;

import com.unicorn.hgzero.ai.infra.dto.common.PastDiscussionDto;
import com.unicorn.hgzero.ai.infra.dto.common.ReferenceDto;
import com.unicorn.hgzero.ai.infra.dto.common.RelatedProjectDto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 전문용어 설명 응답 DTO
 * RAG 기반 맥락적 용어 설명 반환
 */
@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TermExplanationResponse {

    /**
     * 용어명
     */
    private String term;

    /**
     * 간단한 정의
     */
    private String basicDefinition;

    /**
     * 현재 회의 맥락에서의 의미
     */
    private String contextualMeaning;

    /**
     * 실제 사용 사례 목록
     */
    private List<String> useCases;

    /**
     * 관련 프로젝트 목록
     */
    private List<RelatedProjectDto> relatedProjects;

    /**
     * 과거 논의 목록
     */
    private List<PastDiscussionDto> pastDiscussions;

    /**
     * 참조 문서 목록
     */
    private List<ReferenceDto> references;
}
