package tech.easyflow.skill.vo;

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

/**
 * Skill Studio Tool 候选分页。
 *
 * @param records 候选项
 * @param total 总数
 * @param pageNum 页码
 * @param pageSize 每页数量
 */
public record SkillToolOptionPage(List<Item> records, long total, long pageNum, long pageSize) {

    /**
     * 最小 Tool 候选。
     *
     * @param toolType 类型
     * @param targetId 目标 ID
     * @param title 名称
     * @param description 描述
     * @param available 是否可用
     * @param approvalRequired MCP 是否强制确认
     * @param knownToolCount 已知 Tool 数，可为空
     */
    public record Item(String toolType, BigInteger targetId, String title, String description,
                       boolean available, boolean approvalRequired, Integer knownToolCount) { }
}
