import type { AuthStatus } from '../../../stores/onboardingStore';
type CustomProviderCompatibility = 'openai-compatible' | 'openai' | 'anthropic' | 'google' | 'openrouter' | 'ollama';
interface ProviderSetupStepProps {
    authStatus: AuthStatus;
    onSetupWallet: () => Promise<unknown>;
    onImportWallet: (privateKey: string) => Promise<unknown>;
    onAddProvider: (provider: string, apiKey: string) => Promise<unknown>;
    onAddCustomProvider: (data: {
        id: string;
        label: string;
        baseURL: string;
        apiKey?: string;
        compatibility: CustomProviderCompatibility;
        models: string[];
        allowAnyModel: boolean;
    }) => Promise<unknown>;
    onRemoveProvider: (provider: string) => Promise<unknown>;
    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<boolean>;
    onStartOpenAIDeviceFlow?: () => Promise<{
        sessionId: string;
        userCode: string;
        verificationUri: string;
        interval: number;
    }>;
    onPollOpenAIDeviceFlow?: (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;
    }>;
    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<ProviderSetupStepProps>;
export {};
//# sourceMappingURL=ProviderSetupStep.d.ts.map