import type { ProviderId, ReasoningPreference } from "../types.js"; export interface SessionModelBinding { readonly provider?: ProviderId | undefined; readonly model?: string | undefined; readonly thinking?: ReasoningPreference | undefined; } export interface ResolvedSessionModel { readonly provider: ProviderId; readonly model: string; } export declare function getSessionModelPath(sessionId: string): string; export declare function loadSessionModelBinding(sessionId: string | undefined): Promise; export declare function globalModelDefaults(): ResolvedSessionModel; export declare function lastUsedSessionModel(exclude?: string | undefined): Promise; export declare function loadModelForSession(sessionId: string | undefined): Promise; export interface SessionModelSeed { readonly provider?: ProviderId | undefined; readonly model?: string | undefined; readonly modelExplicit?: boolean | undefined; readonly inheritLastUsed?: boolean | undefined; readonly freeCatalogFallback?: boolean | undefined; } export declare function seedSessionModel(sessionId: string | undefined, fallback: SessionModelSeed): Promise<{ provider: ProviderId | undefined; model: string | undefined; }>; export declare function saveSessionModel(sessionId: string, binding: SessionModelBinding): Promise; export declare function clearSessionModel(sessionId: string): Promise; export declare function releaseSessionModel(sessionId: string): Promise; export declare function resetSessionModelCache(): void;