import { s as normalizeOptionalLowercaseString } from "./string-coerce-mnp54Vah.js";
import "./string-coerce-runtime-CEGJWkQ_.js";
//#region extensions/github-copilot/model-metadata.ts
const COPILOT_CHAT_COMPLETIONS_COMPAT = {
	supportsStore: false,
	supportsDeveloperRole: false,
	supportsUsageInStreaming: false,
	maxTokensField: "max_tokens"
};
const STATIC_MODEL_OVERRIDES = new Map([
	["claude-opus-4.6-1m", {
		name: "Claude Opus 4.6 (1M context)",
		api: "anthropic-messages",
		reasoning: true,
		contextWindow: 1e6,
		maxTokens: 64e3,
		compat: { supportedReasoningEfforts: [
			"low",
			"medium",
			"high"
		] }
	}],
	["claude-opus-4.7-1m-internal", {
		name: "Claude Opus 4.7 (1M context)",
		api: "anthropic-messages",
		reasoning: true,
		contextWindow: 1e6,
		maxTokens: 64e3,
		thinkingLevelMap: { xhigh: "xhigh" },
		compat: { supportedReasoningEfforts: [
			"low",
			"medium",
			"high",
			"xhigh"
		] }
	}],
	["gpt-5.5", {
		name: "GPT-5.5",
		reasoning: true,
		contextWindow: 4e5,
		maxTokens: 128e3
	}]
]);
function isCopilotGeminiModelId(modelId) {
	return /(?:^|[-_.])gemini(?:$|[-_.])/.test(modelId);
}
function resolveCopilotTransportApi(modelId) {
	const normalized = normalizeOptionalLowercaseString(modelId) ?? "";
	if (normalized.includes("claude")) return "anthropic-messages";
	if (isCopilotGeminiModelId(normalized)) return "openai-completions";
	return "openai-responses";
}
function resolveCopilotModelCompat(modelId) {
	return isCopilotGeminiModelId(normalizeOptionalLowercaseString(modelId) ?? "") ? { ...COPILOT_CHAT_COMPLETIONS_COMPAT } : void 0;
}
function resolveStaticCopilotModelOverride(modelId) {
	return STATIC_MODEL_OVERRIDES.get(normalizeOptionalLowercaseString(modelId) ?? "");
}
//#endregion
export { resolveCopilotTransportApi as n, resolveStaticCopilotModelOverride as r, resolveCopilotModelCompat as t };
