'use client';
import React__default from 'react';
import { GoogleOneTap } from './components/GoogleOneTap.mjs';
import { cryptoIcons, emailIcons, oauthIcons } from './components/Icons.mjs';
import { AppScreens } from './GlobalContextProvider.mjs';
import { ConnectWallet } from './screens/Crypto/ConnectWallet.mjs';
import { Error } from './screens/Crypto/Error.mjs';
import { OtherCryptoWallets } from './screens/Crypto/OtherWallets.mjs';
import { SetupNewWallet } from './screens/Crypto/SetupNewWallet.mjs';
import { SignMessage } from './screens/Crypto/SignMessage.mjs';
import { Success } from './screens/Crypto/Success.mjs';
import { CryptoWalletButtons } from './screens/Crypto/WalletButtons.mjs';
import { LoginForm } from './screens/Main/LoginForm/index.mjs';
import { MagicLinkEmailForm } from './screens/Main/LoginForm/MagicLinkForm.mjs';
import { OTPEmailForm, PhoneForm } from './screens/Main/LoginForm/OTPForm.mjs';
import { PasskeyButton } from './screens/Main/LoginForm/PasskeyButton.mjs';
import { PasswordsEmailForm } from './screens/Main/LoginForm/PasswordForm.mjs';
import { OAuthButtons } from './screens/Main/OAuthButtons.mjs';
import { PasskeyConfirmation } from './screens/Passkey/PasskeyConfirmation.mjs';
import { PasskeyRegistrationStart } from './screens/Passkey/PasskeyRegistrationStart.mjs';
import { PasskeyRegistrationSuccess } from './screens/Passkey/PasskeyRegistrationSuccess.mjs';
import { PasswordBreached } from './screens/Password/PasswordBreached.mjs';
import { PasswordConfirmation } from './screens/Password/PasswordConfirmation.mjs';
import { PasswordDedupe } from './screens/Password/PasswordDedupe.mjs';
import { PasswordForgot } from './screens/Password/PasswordForgot.mjs';
import { PasswordSetNew } from './screens/Password/PasswordSetNew.mjs';
import { ResetPasswordScreen } from './screens/Password/ResetPasswordScreen.mjs';
import { EmailConfirmation } from './screens/Secondary/EmailConfirmation.mjs';
import { OTPAuthenticate } from './screens/Secondary/OTPAuthenticate.mjs';
import { OTPConfirmation } from './screens/Secondary/OTPConfirmation.mjs';
import { PasswordCreateAuthenticate } from './screens/Secondary/PasswordCreateAuthenticate.mjs';
import { MagicLinkMethods, PasswordMethods } from './StytchProduct.mjs';
import { OneTapPositions, OTPMethods } from '../../../../core/src/public/ui.mjs';

const PhoneFormSMS = ()=>/*#__PURE__*/ React__default.createElement(PhoneForm, {
        method: OTPMethods.SMS
    });
const PhoneFormWhatsApp = ()=>/*#__PURE__*/ React__default.createElement(PhoneForm, {
        method: OTPMethods.WhatsApp
    });
const MainWalletButtons = ()=>/*#__PURE__*/ React__default.createElement(CryptoWalletButtons, {
        type: "main"
    });
const FloatingOneTap = ()=>/*#__PURE__*/ React__default.createElement(GoogleOneTap, {
        position: OneTapPositions.floating
    });
const emailMagicLinks = {
    id: 'emailMagicLinks',
    screens: {
        [AppScreens.EmailConfirmation]: EmailConfirmation
    },
    tabs: {
        [MagicLinkMethods.Email]: MagicLinkEmailForm
    },
    mainScreen: {
        'login-form': LoginForm
    },
    icons: emailIcons
};
const oauth = {
    id: 'oauth',
    screens: {
        [AppScreens.FloatingOneTap]: FloatingOneTap
    },
    mainScreen: {
        oauth: OAuthButtons
    },
    icons: oauthIcons
};
const otp = {
    id: 'otp',
    screens: {
        [AppScreens.OTPAuthenticate]: OTPAuthenticate,
        [AppScreens.OTPConfirmation]: OTPConfirmation
    },
    tabs: {
        [OTPMethods.Email]: OTPEmailForm,
        [OTPMethods.SMS]: PhoneFormSMS,
        [OTPMethods.WhatsApp]: PhoneFormWhatsApp
    },
    mainScreen: {
        'login-form': LoginForm
    },
    icons: emailIcons
};
const passwords = {
    id: 'passwords',
    screens: {
        [AppScreens.PasswordCreateOrLogin]: PasswordCreateAuthenticate,
        [AppScreens.PasswordResetForm]: ResetPasswordScreen,
        [AppScreens.PasswordForgot]: PasswordForgot,
        [AppScreens.PasswordBreached]: PasswordBreached,
        [AppScreens.PasswordSetNew]: PasswordSetNew,
        [AppScreens.PasswordDedupe]: PasswordDedupe,
        [AppScreens.PasswordConfirmation]: PasswordConfirmation
    },
    tabs: {
        [PasswordMethods.Email]: PasswordsEmailForm
    },
    mainScreen: {
        'login-form': LoginForm
    },
    icons: emailIcons
};
const passkeys = {
    id: 'passkeys',
    screens: {
        [AppScreens.PasskeyConfirmation]: PasskeyConfirmation
    },
    mainScreen: {
        'passkey-button': PasskeyButton
    }
};
const passkeyRegistration = {
    id: 'passkeyRegistration',
    screens: {
        [AppScreens.PasskeyRegistrationStart]: PasskeyRegistrationStart,
        [AppScreens.PasskeyRegistrationSuccess]: PasskeyRegistrationSuccess
    }
};
const crypto = {
    id: 'crypto',
    screens: {
        [AppScreens.CryptoConnect]: ConnectWallet,
        [AppScreens.CryptoSignMessage]: SignMessage,
        [AppScreens.CryptoOtherScreen]: OtherCryptoWallets,
        [AppScreens.CryptoSetupWallet]: SetupNewWallet,
        [AppScreens.CryptoError]: Error,
        [AppScreens.CryptoConfirmation]: Success
    },
    mainScreen: {
        crypto: MainWalletButtons
    },
    icons: cryptoIcons
};

export { crypto, emailMagicLinks, oauth, otp, passkeyRegistration, passkeys, passwords };
//# sourceMappingURL=Products.mjs.map
