import { type AdapterCapabilityManifest } from "@onebots/core"; import type { LoadedPluginInfo } from "./plugin-loader.js"; export type CapabilityCategory = "actions" | "events" | "segments" | "transports"; export type CapabilityEvidenceStatus = "verified" | "unknown" | "unavailable"; export interface CapabilityCategorySummary { total: number; supported: number; native: number; emulated: number; unsupported: number; } export interface AdapterCapabilityReportItem { source: "catalog" | "runtime"; status: CapabilityEvidenceStatus; name: string; displayName: string; description: string; packageName: string; packageVersion: string | null; entryPath: string | null; declared: boolean; summary: Record | null; capabilities: AdapterCapabilityManifest | null; } export interface AdapterCapabilityReport { complete: boolean; errors: string[]; adapters: AdapterCapabilityReportItem[]; } export type AdapterCapabilitySelectionSource = "cli" | "config" | "catalog"; /** 可归档的 CLI 能力证据,保留生成器身份与实际选择范围。 */ export interface AdapterCapabilityEvidenceReport extends AdapterCapabilityReport { schemaVersion: 1; generatedAt: string; evidenceDigest: string; application: { name: string; version: string; }; target: { configPath: string; adapterSelection: { source: AdapterCapabilitySelectionSource; names: string[]; }; }; } type AdapterCapabilityEvidenceDigestSource = Pick; /** * 计算能力证据的稳定内容摘要。 * * 生成时间、配置绝对路径和摘要字段本身不参与计算;选择名称、错误与适配器条目按 * 语义身份排序,因此相同能力证据不会因调用目录、生成时刻或集合顺序变化而漂移。 */ export declare function createAdapterCapabilityEvidenceDigest(evidence: AdapterCapabilityEvidenceDigestSource): string; /** 从已完成加载契约校验的插件生成无连接能力报告。 */ export declare function buildAdapterCapabilityReport(loadedPlugins: readonly LoadedPluginInfo[], errors?: readonly string[], catalogPlatforms?: readonly string[], catalogAvailable?: boolean): AdapterCapabilityReport; /** JSON 用于 CI;文本输出保留支持级别和默认/账号边界。 */ export declare function formatAdapterCapabilityReport(report: AdapterCapabilityReport, json?: boolean): string; export declare function summarizeManifest(manifest: AdapterCapabilityManifest): Record; export {}; //# sourceMappingURL=capability-report.d.ts.map