import { type YagrLocalConfig } from '../config/yagr-config-service.js';
import { type YagrModelProvider } from './provider-registry.js';
export type { YagrModelProvider } from './provider-registry.js';
export interface YagrModelContextProfile {
    provider: YagrModelProvider;
    model: string;
    contextWindowTokens: number;
    reservedOutputTokens: number;
}
export interface YagrLanguageModelConfig {
    provider?: YagrModelProvider;
    model?: string;
    apiKey?: string;
    baseUrl?: string;
}
export interface ResolvedYagrLanguageModelConfig {
    provider: YagrModelProvider;
    model: string;
    apiKey?: string;
    baseUrl?: string;
}
interface YagrLanguageModelConfigStore {
    getLocalConfig(): YagrLocalConfig;
    getApiKey(provider: YagrModelProvider): string | undefined;
}
export declare function resolveModelContextProfile(config?: YagrLanguageModelConfig): YagrModelContextProfile;
export declare function resolveModelProvider(explicitProvider?: string, configStore?: YagrLanguageModelConfigStore): YagrModelProvider;
export declare function resolveModelName(provider: YagrModelProvider, explicitModel?: string, configStore?: YagrLanguageModelConfigStore): string;
export declare function resolveLanguageModelConfig(config?: YagrLanguageModelConfig, configStore?: YagrLanguageModelConfigStore): ResolvedYagrLanguageModelConfig;
export declare function createLanguageModel(config?: YagrLanguageModelConfig): import("ai").LanguageModelV1;
//# sourceMappingURL=create-language-model.d.ts.map