import { z } from 'zod'; export declare function extractCanonicalModelName(raw: string): string; export declare const ModelFamilyEnum: z.ZodEnum<{ other: "other"; claude: "claude"; openai: "openai"; gemini: "gemini"; grok: "grok"; mistral: "mistral"; deepseek: "deepseek"; llama: "llama"; qwen: "qwen"; glm: "glm"; kimi: "kimi"; cohere: "cohere"; minimax: "minimax"; phi: "phi"; gemma: "gemma"; yi: "yi"; sonar: "sonar"; nova: "nova"; jamba: "jamba"; granite: "granite"; nemotron: "nemotron"; dbrx: "dbrx"; arctic: "arctic"; reka: "reka"; olmo: "olmo"; hermes: "hermes"; wizardlm: "wizardlm"; starcoder: "starcoder"; dolphin: "dolphin"; openchat: "openchat"; vicuna: "vicuna"; internlm: "internlm"; baichuan: "baichuan"; }>; export type ModelFamily = z.infer; export declare const modelProfileSchema: z.ZodObject<{ prefix: z.ZodString; family: z.ZodEnum<{ other: "other"; claude: "claude"; openai: "openai"; gemini: "gemini"; grok: "grok"; mistral: "mistral"; deepseek: "deepseek"; llama: "llama"; qwen: "qwen"; glm: "glm"; kimi: "kimi"; cohere: "cohere"; minimax: "minimax"; phi: "phi"; gemma: "gemma"; yi: "yi"; sonar: "sonar"; nova: "nova"; jamba: "jamba"; granite: "granite"; nemotron: "nemotron"; dbrx: "dbrx"; arctic: "arctic"; reka: "reka"; olmo: "olmo"; hermes: "hermes"; wizardlm: "wizardlm"; starcoder: "starcoder"; dolphin: "dolphin"; openchat: "openchat"; vicuna: "vicuna"; internlm: "internlm"; baichuan: "baichuan"; }>; tier: z.ZodEnum<{ standard: "standard"; reasoning: "reasoning"; trivial: "trivial"; }>; defaultCost: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; free: "free"; }>; bestFor: z.ZodString; avoidFor: z.ZodOptional; notes: z.ZodOptional; supportsEffort: z.ZodBoolean; inputCostPerMTok: z.ZodOptional; outputCostPerMTok: z.ZodOptional; cachedReadCostPerMTok: z.ZodOptional; cachedNonReadCostPerMTok: z.ZodOptional; reasoningCostPerMTok: z.ZodOptional; rateSource: z.ZodOptional; rateLookupDate: z.ZodOptional; inputTokenSoftLimit: z.ZodNumber; }, z.core.$strip>; export type ModelProfile = z.infer; /** * Used for model COST/PROFILE lookup only — NOT a telemetry allowlist. * Adding/removing entries here does NOT affect what telemetry accepts. * Telemetry uses BoundedIdentifier (telemetry/types.ts) and accepts any * reasonable string identifier; see PRIVACY.md for the wire-shape rules. */ export declare function findModelProfile(modelId: string): ModelProfile; //# sourceMappingURL=model-profile-registry.d.ts.map