import type { ChatStopReason } from './interface.js';
/** Maps Anthropic raw stop_reason values to the canonical ChatStopReason vocab. */
export declare const ANTHROPIC_STOP_REASON_MAP: Readonly<Record<string, ChatStopReason>>;
export declare function mapAnthropicStopReason(raw: string | null | undefined): ChatStopReason;
/** Maps OpenAI finish_reason values to the canonical ChatStopReason vocab. */
export declare const OPENAI_STOP_REASON_MAP: Readonly<Record<string, ChatStopReason>>;
export declare function mapOpenAIStopReason(raw: string | null | undefined): ChatStopReason;
/** Maps Gemini finishReason values to the canonical ChatStopReason vocab. */
export declare const GEMINI_STOP_REASON_MAP: Readonly<Record<string, ChatStopReason>>;
export declare function mapGeminiStopReason(raw: string | null | undefined): ChatStopReason;
/**
 * Maps llama.cpp finish_reason values to the canonical ChatStopReason vocab.
 * llama.cpp uses the OpenAI-compatible finish_reason field ('stop', 'length', 'tool_calls').
 */
export declare function mapLlamaCppStopReason(finishReason: string | null | undefined, hasToolCalls: boolean): ChatStopReason;
/**
 * Maps Ollama done_reason values to the canonical ChatStopReason vocab.
 * Ollama uses its own done_reason field ('stop', 'length', 'tool-calls', 'load', etc.).
 */
export declare function mapOllamaStopReason(doneReason: string, hasToolCalls: boolean): ChatStopReason;
/**
 * Maps OpenAI Codex (responses API) status values to the canonical ChatStopReason vocab.
 */
export declare function mapCodexStopReason(status: string | undefined, hasToolCalls: boolean): ChatStopReason;
/**
 * Maps LM Studio responses API status values to the canonical ChatStopReason vocab.
 * Used by both the native chat and responses paths in lm-studio.ts.
 */
export declare function mapLmStudioStopReason(status: string | undefined, hasToolCalls: boolean): ChatStopReason;
//# sourceMappingURL=stop-reason-maps.d.ts.map