import { type CatalogMatchConfidence } from "./resolveBundledCatalogModel.js"; import type { AIProvider, PreferOpenRouterInput, ProfileCatalogLane } from "./types.js"; export interface EnsureConcreteModelResult { provider: AIProvider; modelId: string; routing: "openrouter" | "direct"; /** Present when input was `profile/choice`. */ profileChoice?: { profile: string; choice: string; }; /** Set when input was a concrete model (catalog best-effort). */ matchConfidence?: CatalogMatchConfidence; } export interface EnsureConcreteModelOptions { /** Catalog lane for `profile/choice` inputs. Defaults to `"text"`. */ catalogLane?: ProfileCatalogLane; preferOpenRouter?: PreferOpenRouterInput; } /** * Normalize a string to invoke-time `{ provider, modelId }`. * * - Known `profile/choice` → registry resolution (strict) * - vendor slug / gateway wire → catalog best-effort */ export declare function ensureConcreteModel(input: string, options?: EnsureConcreteModelOptions): EnsureConcreteModelResult; //# sourceMappingURL=ensureConcreteModel.d.ts.map