import type { Model, OpenAICompat } from "../types"; type ResolvedToolStrictMode = NonNullable | "mixed"; export type ResolvedOpenAICompat = Required> & { openRouterRouting?: OpenAICompat["openRouterRouting"]; vercelGatewayRouting?: OpenAICompat["vercelGatewayRouting"]; extraBody?: OpenAICompat["extraBody"]; toolStrictMode: ResolvedToolStrictMode; /** Optional explicit capability override; resolved via deriveToolChoiceSupport. */ toolChoiceSupport?: OpenAICompat["toolChoiceSupport"]; }; /** * Detect compatibility settings from provider and baseUrl for known providers. * Provider takes precedence over URL-based detection since it's explicitly configured. * @param model - The model configuration * @param resolvedBaseUrl - Optional resolved base URL (e.g., after GitHub Copilot proxy-ep resolution). * If provided, this takes precedence over model.baseUrl for URL-based checks. */ export declare function detectOpenAICompat(model: Model<"openai-completions">, resolvedBaseUrl?: string): ResolvedOpenAICompat; /** * Resolve compatibility settings by layering explicit model.compat overrides onto * the detected defaults. This is the canonical compat view for both metadata and transport. * @param model - The model configuration * @param resolvedBaseUrl - Optional resolved base URL (e.g., after GitHub Copilot proxy-ep resolution). * If provided, this takes precedence over model.baseUrl for URL-based checks. */ export declare function resolveOpenAICompat(model: Model<"openai-completions">, resolvedBaseUrl?: string): ResolvedOpenAICompat; export {};