/** * AgentRails - Safeguard Your AI Agents * * Keep your agents grounded and on the rails with automated testing * and LLM-based validation. * * Programmatic API - import and use directly in your TypeScript/JavaScript code */ export * from "./types"; export { validateConfig } from "./config"; export { createEvaluator } from "./evaluator"; export { runAll, Reporter, parseRailFile, runRail, runRailSuite } from "./core"; import { AgentRailsConfig, RailSuite, RailCase, RailResult, RailRunResult, AgentFunction, LLMConfig } from "./types"; import { Reporter } from "./core"; /** * Main AgentRails class for programmatic usage * * Example: * ```typescript * import { AgentRails, validateConfig } from 'agentrails'; * import { myAgent } from './src/agent'; * * const config = validateConfig({ * llm: { provider: 'openai', apiKey: process.env.OPENAI_API_KEY }, * agent: myAgent, * rails: [/* your test suites *\/] * }); * * const results = await AgentRails.runAll(config); * ``` */ export declare class AgentRails { /** * Run all rails from a config */ static runAll(config: AgentRailsConfig): Promise[]>; /** * Run a single rail suite */ static runSuite(suite: RailSuite, agent: AgentFunction, llm: LLMConfig, timeout?: number): Promise>; /** * Run a single rail case */ static runRail(rail: RailCase, agent: AgentFunction, llm: LLMConfig, timeout?: number): Promise>; /** * Parse a YAML rail file */ static parseRailFile(filePath: string): RailSuite; /** * Create a reporter for displaying results */ static createReporter(verbose?: boolean): Reporter; } export { AgentRailsConfig, RailSuite, RailCase, RailResult, RailRunResult, LLMProvider, LLMConfig, AgentFunction, LLMEvaluator, ToolCall, TestSuite, TestCase, TestResult, TestRunResult, } from "./types"; //# sourceMappingURL=index.d.ts.map