import { type Capability, type CapabilityConfig } from "./security/capabilities.js"; export type ToolBackend = "local" | "cep" | "extendscript" | "qe" | "orchestrator"; export type ToolSupportStatus = "supported" | "limited" | "experimental" | "unsupported"; export type VerificationBoundary = "static_metadata_only" | "local_filesystem" | "local_and_host_response" | "host_response" | "bridge_response" | "structured_uxp_readback" | "output_and_host_response" | "plan_revalidation"; export interface CatalogToolDefinition { description: string; operationalCapability?: ToolOperationalOverride; } export type ToolBackendLabel = "local" | "CEP/ExtendScript" | "CEP/ExtendScript + QE" | "local + CEP/ExtendScript" | "orchestrator"; export interface ToolOperationalOverride { backend?: ToolBackendLabel; backends?: ToolBackend[]; status?: ToolSupportStatus; minimumPremiereVersion?: string | null; authority?: Capability; verificationBoundary?: VerificationBoundary; hostVerificationRequired?: boolean; notes?: string[]; } export interface ToolOperationalCapability { name: string; backend: ToolBackendLabel; backends: ToolBackend[]; status: ToolSupportStatus; minimumPremiereVersion: string | null; authority: { required: Capability; enabled: boolean; }; verificationBoundary: VerificationBoundary; hostVerificationRequired: boolean; notes: string[]; } /** * Forward-compatible exceptions for tools whose implementation crosses a * boundary that cannot be inferred from its name or description. Tool * definitions may carry the same `operationalCapability` metadata directly; * registration metadata wins over these catalog defaults. */ export declare const TOOL_OPERATIONAL_OVERRIDES: Readonly>; /** * Derive operational metadata from the same registered catalog and authority * classifier used by the MCP server. A tool can add an explicit Premiere * version to its description; otherwise the documented backend baseline is * used. */ export declare function deriveToolOperationalCapability(name: string, definition: CatalogToolDefinition, capabilities: CapabilityConfig): ToolOperationalCapability; export declare function buildToolCapabilityReport(catalog: Record, capabilities: CapabilityConfig): { schemaVersion: number; generatedFrom: string; total: number; byStatus: Record; tools: ToolOperationalCapability[]; }; //# sourceMappingURL=tool-capability-report.d.ts.map