package tech.easyflow.ai.service;

import tech.easyflow.ai.vo.OfflineImpactBindingVo;

import java.math.BigInteger;
import java.util.List;

/**
 * Skill 对平台 Tool 资源引用的模块扩展点。
 */
public interface SkillToolReferenceProvider {

    /** @param workflowId 工作流 ID @return 引用该工作流的 Skill 摘要 */
    List<OfflineImpactBindingVo> listSkillsByWorkflowId(BigInteger workflowId);

    /** @param pluginItemId 插件工具 ID @return 引用该插件工具的 Skill 摘要 */
    List<OfflineImpactBindingVo> listSkillsByPluginItemId(BigInteger pluginItemId);

    /** @param mcpId MCP ID @return 引用该 MCP 的 Skill 摘要 */
    List<OfflineImpactBindingVo> listSkillsByMcpId(BigInteger mcpId);
}
