package com.agent.management.service;

/**
 * 翻译服务接口
 */
public interface TranslationService {

    /**
     * 将英文文本翻译为中文（同步，带缓存，可能触发 LLM 调用）
     */
    String translateToChinese(String text);

    /**
     * 只读缓存：已翻译的立即返回，中文原文直接返回，未翻译的返回 null（不触发 LLM）
     */
    String getCachedTranslation(String text);

    /**
     * 异步翻译并通过 SSE 推送结果
     *
     * @param folderName   Skill 文件夹名称，用于前端匹配
     * @param displayName  Skill 展示名称原文（name 为 kebab-case 标识符，不在此翻译）
     * @param description  Skill 描述原文
     */
    void asyncTranslateAndPush(String folderName, String displayName, String description);
}
