/**
 * Shared MCP (Model Context Protocol) type definitions
 * These types are used by both MCP client and server implementations
 */
/**
 * JSON Schema format for tool inputs
 * This is the standard format used by MCP protocol
 * Extended to be compatible with Record<string, unknown> for flexibility
 */
export interface McpInputSchema extends Record<string, unknown> {
    type?: 'object';
    properties?: Record<string, McpPropertySchema>;
    required?: string[];
}
export interface McpPropertySchema {
    type?: string;
    description?: string;
    items?: McpPropertySchema;
    [key: string]: unknown;
}
/**
 * MCP Tool definition (standard format from MCP spec)
 */
export interface McpToolSchema {
    name: string;
    description?: string;
    inputSchema: McpInputSchema | Record<string, unknown>;
}
/**
 * MCP Resource definition (standard format from MCP spec)
 */
export interface McpResourceSchema {
    uri: string;
    name: string;
    description?: string;
    mimeType?: string;
}
/**
 * MCP tool call result (standard format from MCP spec)
 */
export interface McpToolResult {
    content: Array<{
        type: string;
        text: string;
    }>;
    isError?: boolean;
}
//# sourceMappingURL=shared-types.d.ts.map