/**
 * Shared types for the MCP server mode handler.
 */
import type { ModeProviderEntry } from "../../../../_vendor/ailf-core/index.d.ts";
import type { PromptfooPrompt, PromptfooProvider, PromptfooTestCase } from "../../promptfoo-compiler.js";
/** Options for compiling an MCP server task */
export interface MCPCompileOptions {
    /** Grader provider for LLM-graded assertions */
    graderProvider?: string;
    /** Model providers to evaluate with (from registry, filtered by mcp-server mode) */
    models?: ModeProviderEntry[];
}
/** Result of compiling a single MCP task */
export interface MCPCompileResult {
    /** Promptfoo provider config for the MCP server */
    providers: PromptfooProvider[];
    /** Compiled test cases */
    tests: PromptfooTestCase[];
    /** Prompts for MCP evaluation */
    prompts: PromptfooPrompt[];
    /** Warnings generated during compilation */
    warnings: string[];
}
/** Validation errors for MCP task definitions */
export interface MCPValidationError {
    field: string;
    message: string;
}
/** Context for building MCP assertions */
export interface MCPAssertionContext {
    /** Task ID (for error messages) */
    taskId: string;
    /** Expected server capabilities */
    capabilities: string[];
    /** Grader provider for LLM-graded assertions */
    graderProvider?: string;
}
