import type { CodexModelInfo } from "./catalog.js"; import { type OpenAIWSModelDef } from "./defaults.js"; export type ProviderModelConfig = { id: string; providerID: string; api: { id: string; npm: string; url: string; }; name: string; capabilities: { temperature: boolean; reasoning: boolean; attachment: boolean; toolcall: boolean; input: { text: boolean; audio: boolean; image: boolean; video: boolean; pdf: boolean; }; output: { text: boolean; audio: boolean; image: boolean; video: boolean; pdf: boolean; }; interleaved: boolean; }; cost: { input: number; output: number; cache: { read: number; write: number; }; }; limit: OpenAIWSModelDef["limit"]; status: "active"; options: Record; headers: Record; variants: Record>; family?: string; release_date?: string; [key: string]: unknown; }; export type ProviderModelOverrides = Record>; export type OpenCodeConfigModel = { name: string; family?: string; release_date?: string; attachment: boolean; reasoning: boolean; temperature: boolean; tool_call: boolean; limit: OpenAIWSModelDef["limit"]; modalities: { input: Array<"text" | "image">; output: Array<"text">; }; cost: { input: number; output: number; cache_read: number; cache_write: number; }; options: Record; provider: { npm: string; api: string; }; variants: Record>; }; export declare function modelToProviderConfig(id: string, model: OpenAIWSModelDef): ProviderModelConfig; export declare function resolveModels(overrides?: ProviderModelOverrides): Record; export declare function resolveModelsForOAuth(catalog: CodexModelInfo[] | undefined, overrides?: ProviderModelOverrides): Record; export declare function resolveModelsForApiKey(allowedIds: Set | undefined, overrides?: ProviderModelOverrides): Record; export declare function modelToOpenCodeConfig(model: OpenAIWSModelDef): OpenCodeConfigModel; export declare function providerConfigModels(overrides?: Record, catalog?: CodexModelInfo[]): Record; export declare function providerConfig(overrides?: ProviderModelOverrides, catalog?: CodexModelInfo[]): { api: string; name: string; npm: string; models: Record; }; //# sourceMappingURL=resolve.d.ts.map