package com.unicorn.hgzero.ai.biz.gateway;

import java.util.List;

/**
 * RAG 검색 Gateway 인터페이스
 * Azure AI Search 연동을 추상화
 */
public interface SearchGateway {

    /**
     * 관련 회의록 검색 (벡터 유사도 기반)
     *
     * @param meetingId 회의 ID
     * @param transcriptId 회의록 ID
     * @param limit 최대 개수
     * @return 관련 회의록 JSON
     */
    String searchRelatedTranscripts(String meetingId, String transcriptId, int limit);

    /**
     * 용어 설명을 위한 문서 검색
     *
     * @param term 용어명
     * @param meetingId 회의 ID
     * @param context 맥락
     * @return 관련 문서 JSON
     */
    String searchTermExplanation(String term, String meetingId, String context);

    /**
     * 회의록 인덱싱 (벡터 임베딩 저장)
     *
     * @param transcriptId 회의록 ID
     * @param content 회의록 내용
     * @param metadata 메타데이터
     */
    void indexTranscript(String transcriptId, String content, String metadata);
}
