import { anthropicOAuthProvider } from "../../auth/oauth/anthropic.js";
import { minimaxOAuthProvider } from "../../auth/oauth/minimax.js";
import { minimaxCnOAuthProvider } from "../../auth/oauth/minimax-cn.js";
import { kimiCodingOAuthProvider } from "../../auth/oauth/kimi-coding.js";
import { githubCopilotOAuthProvider } from "../../auth/oauth/github-copilot.js";
import { geminiCliOAuthProvider } from "../../auth/oauth/vendor-pi-google/google-gemini-cli.js";
import { antigravityOAuthProvider } from "../../auth/oauth/vendor-pi-google/google-antigravity.js";
import { openaiCodexOAuthProvider } from "../../auth/oauth/openai-codex.js";
import "../../auth/oauth/index.js";
//#region src/cli/utils/oauth-providers.ts
/**
* OAuth Provider Configuration
*
* Centralized OAuth provider definitions for CLI commands.
* Used by both auth.ts and onboard.ts to avoid duplication.
*/
/**
* Map of provider IDs to their OAuth configuration.
*/
const OAUTH_PROVIDERS = {
	anthropic: {
		displayName: "Anthropic (Claude)",
		provider: anthropicOAuthProvider,
		profileId: "anthropic:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	minimax: {
		displayName: "MiniMax (幂维智能)",
		provider: minimaxOAuthProvider,
		profileId: "minimax:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	"minimax-cn": {
		displayName: "MiniMax CN",
		provider: minimaxCnOAuthProvider,
		profileId: "minimax-cn:default",
		urlPrompt: "🌐 请在浏览器中打开以下 URL:\n"
	},
	"kimi-coding": {
		displayName: "Kimi For Coding (月之暗面)",
		provider: kimiCodingOAuthProvider,
		profileId: "kimi-coding:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	"github-copilot": {
		displayName: "GitHub Copilot",
		provider: githubCopilotOAuthProvider,
		profileId: "github-copilot:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	"google-gemini-cli": {
		displayName: "Google Gemini CLI",
		provider: geminiCliOAuthProvider,
		profileId: "google-gemini-cli:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	"google-antigravity": {
		displayName: "Google Antigravity",
		provider: antigravityOAuthProvider,
		profileId: "google-antigravity:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	},
	"openai-codex": {
		displayName: "OpenAI Codex",
		provider: openaiCodexOAuthProvider,
		profileId: "openai-codex:default",
		urlPrompt: "🌐 Please open this URL in your browser:\n"
	}
};
/**
* Get supported OAuth provider IDs.
*/
function getSupportedOAuthProviders() {
	return Object.keys(OAUTH_PROVIDERS);
}
/**
* Check if a provider supports OAuth.
*/
function supportsOAuth(provider) {
	return provider in OAUTH_PROVIDERS;
}
/**
* Get OAuth provider config by ID.
*/
function getOAuthProvider(provider) {
	return OAUTH_PROVIDERS[provider];
}
//#endregion
export { OAUTH_PROVIDERS, getOAuthProvider, getSupportedOAuthProviders, supportsOAuth };

//# sourceMappingURL=oauth-providers.js.map