namespace AIStudio.Tools.RAG;

/// <summary>
/// The type of the retrieved content.
/// </summary>
public enum RetrievalContentType
{
    NOT_SPECIFIED,
    UNKNOWN,
    
    //
    // Text Content:
    //
    TEXT_DOCUMENT,
    TEXT_ARTICLE,
    TEXT_BOOK,
    TEXT_CHAPTER,
    TEXT_PAPER,
    TEXT_THESIS,
    TEXT_BUSINESS_CONCEPT,
    TEXT_DICTIONARY,
    TEXT_ENCYCLOPEDIA,
    TEXT_GLOSSARY,
    TEXT_JOURNAL,
    TEXT_MAGAZINE,
    TEXT_NEWSPAPER,
    TEXT_REPORT,
    TEXT_REVIEW,
    TEXT_WEBSITE,
    TEXT_IDEA,
    TEXT_CONCEPT,
    TEXT_DEFINITION,
    TEXT_EXAMPLE,
    TEXT_QUOTE,
    TEXT_DRAFT,
    TEXT_SCRIPT,
    TEXT_TRANSCRIPT,
    TEXT_SUBTITLE,
    TEXT_CAPTION,
    TEXT_DIALOGUE,
    TEXT_PROJECT_PROPOSAL,
    TEXT_PROJECT_PLAN,
    TEXT_SPREADSHEET,
    TEXT_PRESENTATION,
    TEXT_MEETING_MINUTES,
    TEXT_EMAIL,
    TEXT_PROTOCOL,
    
    //
    // Image Content:
    //
    IMAGE_PHOTO,
    IMAGE_ILLUSTRATION,
    IMAGE_DIAGRAM,
    IMAGE_CHART,
    IMAGE_ART,
    IMAGE_DRAWING,
    IMAGE_PAINTING,
    IMAGE_SKETCH,
    IMAGE_MAP,
    IMAGE_CHARACTER,
    IMAGE_SCENE,
    IMAGE_LANDSCAPE,
    IMAGE_PORTRAIT,
    IMAGE_POSTER,
    IMAGE_LOGO,
    IMAGE_ICON,
    IMAGE_SATELLITE_IMAGE,
    
    //
    // Audio Content:
    //
    AUDIO_SPEECH,
    AUDIO_PODCAST,
    AUDIO_BOOK,
    AUDIO_INTERVIEW,
    AUDIO_LECTURE,
    AUDIO_TALK,
    AUDIO_SONG,
    AUDIO_MUSIC,
    AUDIO_SOUND,
    AUDIO_CALL,
    AUDIO_VOICE_ACTING,
    AUDIO_DESCRIPTION,
    AUDIO_GUIDE,
    AUDIO_DIALOGUE,
    
    //
    // Video Content:
    //
    VIDEO_MOVIE,
    VIDEO_FILM,
    VIDEO_TV_SHOW,
    VIDEO_SERIES,
    VIDEO_EPISODE,
    VIDEO_DOCUMENTARY,
    VIDEO_TUTORIAL,
    VIDEO_LECTURE,
    VIDEO_WEBINAR,
    VIDEO_GAME,
    VIDEO_ANIMATION,
    VIDEO_CUTSCENE,
    VIDEO_TRAILER,
    VIDEO_ADVERTISEMENT,
}