import { z } from 'zod';
export declare const RoutingResponseSchema: z.ZodObject<{
    agentId: z.ZodString;
    confidence: z.ZodNumber;
    reasoning: z.ZodOptional<z.ZodString>;
}, "strict", z.ZodTypeAny, {
    agentId: string;
    confidence: number;
    reasoning?: string | undefined;
}, {
    agentId: string;
    confidence: number;
    reasoning?: string | undefined;
}>;
export type RoutingResponse = z.infer<typeof RoutingResponseSchema>;
export interface DecisionParserConfig {
    validAgentIds: string[];
    minConfidence: number;
    maxRetries: number;
    fallbackAgentId: string;
}
export type DecisionParseResult = {
    ok: true;
    decision: RoutingResponse;
    source: 'parsed';
} | {
    ok: true;
    decision: RoutingResponse;
    source: 'pattern_match';
} | {
    ok: true;
    decision: RoutingResponse;
    source: 'fallback';
    reason: string;
} | {
    ok: false;
    error: string;
    rawContent: string;
};
export type FallbackStrategy = {
    type: 'fixed';
    agentId: string;
} | {
    type: 'pattern_match';
    patterns: Map<string, string[]>;
} | {
    type: 'first_route';
};
//# sourceMappingURL=index.d.ts.map