import type { ProviderModel } from "./types"; import type { ThinkingTier } from "./transform/types"; export type ModelThinkingLevel = "minimal" | "low" | "medium" | "high"; export interface ModelThinkingConfig { thinkingBudget: number; } export interface ModelVariant { thinkingLevel?: ModelThinkingLevel; thinkingConfig?: ModelThinkingConfig; } export interface ModelLimit { context: number; output: number; } export type ModelModality = "text" | "image" | "pdf"; export type ModelQuotaGroup = "claude" | "gemini-pro" | "gemini-flash" | "gpt-oss"; export interface ModelModalities { input: ModelModality[]; output: ModelModality[]; } export interface OpencodeModelDefinition extends ProviderModel { id: string; name: string; release_date: string; attachment: boolean; reasoning: boolean; temperature: boolean; tool_call: boolean; limit: ModelLimit; modalities: ModelModalities; cost: { input: number; output: number; }; options: Record; variants?: Record; } export type OpencodeModelDefinitions = Record; export declare const OPENCODE_MODEL_DEFINITIONS: OpencodeModelDefinitions; export declare const MODEL_ALIASES: Record; export declare function getPublicModelDefinitions(): OpencodeModelDefinitions; export declare function getResolverAliasMap(): Record; export declare function getGemini35FlashAntigravityModel(tier?: ThinkingTier): string; export declare function getGemini35FlashGeminiCliFallbackModel(): string; export declare function getGemini31ProAntigravityModel(tier?: ThinkingTier): string; export declare function getQuotaGroupForModel(modelId: string): ModelQuotaGroup | undefined; //# sourceMappingURL=model-registry.d.ts.map