import { i as resolveStaticCopilotModelOverride, n as resolveCopilotModelCompat, r as resolveCopilotTransportApi } from "../../model-metadata-8A_ULe_h.js";
//#region extensions/github-copilot/models-defaults.ts
const DEFAULT_CONTEXT_WINDOW = 128e3;
const DEFAULT_MAX_TOKENS = 8192;
const DEFAULT_MODEL_IDS = [
	"claude-opus-4.6",
	"claude-opus-4.7",
	"claude-opus-4.8",
	"claude-sonnet-4.6",
	"gemini-2.5-pro",
	"gemini-3-flash",
	"gemini-3.1-pro",
	"gpt-5.3-codex",
	"gpt-5.4",
	"gpt-5.4-mini",
	"gpt-5.4-nano",
	"gpt-5.5",
	"raptor-mini",
	"goldeneye"
];
function getDefaultCopilotModelIds() {
	return [...DEFAULT_MODEL_IDS];
}
function buildCopilotModelDefinition(modelId) {
	const id = modelId.trim();
	if (!id) throw new Error("Model id required");
	const staticOverride = resolveStaticCopilotModelOverride(id);
	const compat = staticOverride?.compat ?? resolveCopilotModelCompat(id);
	return {
		id,
		name: staticOverride?.name ?? id,
		api: staticOverride?.api ?? resolveCopilotTransportApi(id),
		reasoning: staticOverride?.reasoning ?? false,
		input: staticOverride?.input ?? ["text", "image"],
		cost: staticOverride?.cost ?? {
			input: 0,
			output: 0,
			cacheRead: 0,
			cacheWrite: 0
		},
		contextWindow: staticOverride?.contextWindow ?? DEFAULT_CONTEXT_WINDOW,
		maxTokens: staticOverride?.maxTokens ?? DEFAULT_MAX_TOKENS,
		...staticOverride?.thinkingLevelMap ? { thinkingLevelMap: staticOverride.thinkingLevelMap } : {},
		...compat ? { compat } : {}
	};
}
//#endregion
export { buildCopilotModelDefinition, getDefaultCopilotModelIds };
