import type { LanguageModelV3 } from '@ai-sdk/provider';
export type ProviderId = 'claude-cli' | 'anthropic' | 'openai-compatible' | 'stub';
/** Return the configured provider id, resolving defaults if unset. */
export declare function resolveProviderId(): ProviderId;
export interface ResolveModelOptions {
    /** Model name override; if omitted, picks a sensible provider default. */
    model?: string;
    /** Per-call timeout (claude-cli provider only). Default 300_000ms. */
    timeout?: number;
    /**
     * Externally-managed claude-cli session ID. Threading this through lets
     * multiple processes share session state (~75% input-token reduction).
     * Honored only by the `claude-cli` provider; ignored by others.
     * If omitted, picked up from SPECVERSE_AI_SESSION_ID env var.
     */
    sessionId?: string;
}
/** Resolve an AI SDK v3 LanguageModel based on environment + options. */
export declare function resolveModel(options?: ResolveModelOptions): LanguageModelV3;
/** Best-effort diagnostic description of the active provider + model. */
export declare function describeActiveProvider(): string;
//# sourceMappingURL=model-resolver.d.ts.map