@wavequery/conductor
Version:
Modular LLM orchestration framework
18 lines (17 loc) • 668 B
TypeScript
import { z } from "zod";
import { ToolValidation, ValidationResult } from "@/types/interfaces/tool";
export interface ValidationOptions {
strict?: boolean;
stripUnknown?: boolean;
}
export declare class ToolValidator implements ToolValidation {
private inputSchema;
private outputSchema;
constructor(inputSchema: z.ZodSchema, outputSchema: z.ZodSchema);
validateInput<T = any>(input: unknown): Promise<ValidationResult<T>>;
validateOutput<T = any>(output: unknown): Promise<ValidationResult<T>>;
private formatZodErrors;
getInputSchema(): Record<string, any>;
getOutputSchema(): Record<string, any>;
private schemaToJSON;
}