import type { AuthStatus } from '../../../stores/onboardingStore'; import type { ProviderModelSettingsMap } from '../../../lib/api-client/config'; type CustomProviderCompatibility = 'openai-compatible' | 'openai' | 'anthropic' | 'google' | 'openrouter' | 'ollama'; interface ProviderSetupStepProps { authStatus: AuthStatus; onAddProvider: (provider: string, apiKey: string) => Promise; onAddCustomProvider: (data: { id: string; label: string; baseURL: string; apiKey?: string; compatibility: CustomProviderCompatibility; models: ProviderModelSettingsMap; allowAnyModel: boolean; }) => Promise; onRemoveProvider: (provider: string) => Promise; onStartOAuth: (provider: string, mode?: string) => Window | null; onStartOAuthManual: (provider: string, mode?: string) => Promise<{ popup: Window | null; sessionId: string; }>; onExchangeOAuthCode: (provider: string, code: string, sessionId: string) => Promise; onStartOpenAIDeviceFlow?: () => Promise<{ sessionId: string; userCode: string; verificationUri: string; interval: number; }>; onPollOpenAIDeviceFlow?: (sessionId: string) => Promise<{ status: 'complete' | 'pending' | 'error'; error?: string; }>; onStartXaiDeviceFlow?: () => Promise<{ sessionId: string; userCode: string; verificationUri: string; interval: number; }>; onPollXaiDeviceFlow?: (sessionId: string) => Promise<{ status: 'complete' | 'pending' | 'error'; error?: string; }>; onOpenTopup: () => void; onNext: () => void; manageMode?: boolean; onClose?: () => void; hideHeader?: boolean; onStartCopilotDeviceFlow?: () => Promise<{ sessionId: string; userCode: string; verificationUri: string; interval: number; }>; onPollCopilotDeviceFlow?: (sessionId: string) => Promise<{ status: 'complete' | 'pending' | 'error'; error?: string; }>; onStartKimiDeviceFlow?: () => Promise<{ sessionId: string; userCode: string; verificationUri: string; interval: number; }>; onPollKimiDeviceFlow?: (sessionId: string) => Promise<{ status: 'complete' | 'pending' | 'error'; error?: string; }>; onStartOttoRouterDeviceFlow?: () => Promise<{ sessionId: string; userCode: string; verificationUri: string; interval: number; }>; onPollOttoRouterDeviceFlow?: (sessionId: string) => Promise<{ status: 'complete' | 'pending' | 'error'; error?: string; }>; onGetCopilotAuthMethods?: () => Promise<{ oauth: boolean; token: boolean; ghImport: { available: boolean; authenticated: boolean; reason?: string; }; }>; onSaveCopilotToken?: (token: string) => Promise<{ success: boolean; provider: string; source: 'token'; modelCount: number; hasGpt52Codex: boolean; sampleModels: string[]; }>; onImportCopilotTokenFromGh?: () => Promise<{ success: boolean; provider: string; source: 'gh'; modelCount: number; hasGpt52Codex: boolean; sampleModels: string[]; }>; onGetCopilotDiagnostics?: () => Promise<{ tokenSources: Array<{ source: 'env' | 'stored'; configured: boolean; modelCount?: number; hasGpt52Codex?: boolean; restrictedByOrgPolicy?: boolean; restrictedOrg?: string; error?: string; }>; methods: { oauth: boolean; token: boolean; ghImport: { available: boolean; authenticated: boolean; reason?: string; }; }; }>; } export declare const ProviderSetupStep: import("react").NamedExoticComponent; export {}; //# sourceMappingURL=ProviderSetupStep.d.ts.map