export type SchemaMode = 'strict' | 'compatible' | 'ignore';
export interface ToolSchema {
    name: string;
    description?: string;
    inputSchema?: {
        type?: string;
        properties?: Record<string, unknown>;
        required?: string[];
        [key: string]: unknown;
    };
    outputSchema?: {
        type?: string;
        properties?: Record<string, unknown>;
        required?: string[];
        [key: string]: unknown;
    };
}
export interface PromptSchema {
    name: string;
    description?: string;
    arguments?: Array<{
        name: string;
        description?: string;
        required?: boolean;
    }>;
}
export interface ValidationResult {
    valid: boolean;
    errors: string[];
    warnings: string[];
}
export declare function loadSchemaFromFile(schemaPath: string): Promise<unknown>;
export declare function validateToolSchema(actual: ToolSchema, expected: ToolSchema, mode: SchemaMode, passedArgs?: Record<string, unknown>): ValidationResult;
export declare function validatePromptSchema(actual: PromptSchema, expected: PromptSchema, mode: SchemaMode, passedArgs?: Record<string, string>): ValidationResult;
export declare function formatValidationError(result: ValidationResult, itemType: string): string;
//# sourceMappingURL=schema-validator.d.ts.map