@hook-sdk/template 0.25.1 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -2,7 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
3
  import { ReactNode, ComponentType, Component } from 'react';
4
4
  import * as _hook_sdk_sdk from '@hook-sdk/sdk';
5
- import { HookContextValue, CheckoutMethod as CheckoutMethod$1, CheckoutCycle, CheckoutCardData, CheckoutHolderInfo, CheckoutResult, PlanState, ReminderSlot } from '@hook-sdk/sdk';
5
+ import { HookContextValue, SubscribeAnonymousResult, CheckoutMethod as CheckoutMethod$1, CheckoutCycle, CheckoutCardData, CheckoutHolderInfo, CheckoutResult, PlanState, ReminderSlot } from '@hook-sdk/sdk';
6
6
  export { PlanInfo, PlanState, useTrackOnboardingStep } from '@hook-sdk/sdk';
7
7
  import { z } from 'zod';
8
8
 
@@ -14,6 +14,16 @@ type AuthFlowConfig = {
14
14
  googleOAuth: boolean;
15
15
  postAuthLanding: string;
16
16
  preAuthRoutes: string[];
17
+ /**
18
+ * Plan-V — where in the funnel does account creation happen?
19
+ * - 'pre_signup' (default, legacy): user signs up before paywall via
20
+ * /api/auth/signup. Existing behavior — preserves backwards-compat.
21
+ * - 'pay_first': checkout creates the account in one shot via
22
+ * /api/app/:appSlug/payments/checkout/subscribe. AppRoot does NOT mount
23
+ * the /signup route; PreAuthFlow ends at /paywall/checkout.
24
+ * See docs/superpowers/specs/2026-05-13-pay-first-signup-design.md.
25
+ */
26
+ signupMode?: 'pre_signup' | 'pay_first';
17
27
  };
18
28
  type PaywallConfig = {
19
29
  mode: 'free';
@@ -323,6 +333,10 @@ declare class ErrorBoundary extends Component<Props, State> {
323
333
  render(): string | number | boolean | Iterable<ReactNode> | react_jsx_runtime.JSX.Element;
324
334
  }
325
335
 
336
+ declare function CheckoutPageDefault(): react_jsx_runtime.JSX.Element;
337
+
338
+ declare function PixWaitingPageDefault(): react_jsx_runtime.JSX.Element | null;
339
+
326
340
  /**
327
341
  * Reads `?token=` from the URL on mount + on location change. When present and
328
342
  * the current pathname is `/`, redirects to the configured deep-link path
@@ -335,7 +349,7 @@ declare function DeepLinkHandler({ deepLinks }: {
335
349
  deepLinks?: DeepLinks;
336
350
  }): null;
337
351
 
338
- type AuthFormErrorCode = 'invalid_credentials' | 'rate_limited' | 'email_unverified' | 'email_taken' | 'account_locked' | 'network' | 'server';
352
+ type AuthFormErrorCode = 'invalid_credentials' | 'rate_limited' | 'email_unverified' | 'account_locked' | 'network' | 'server';
339
353
  interface AuthFormError {
340
354
  code: AuthFormErrorCode;
341
355
  message: string;
@@ -466,6 +480,68 @@ interface UseResetFormResult {
466
480
  */
467
481
  declare function useResetForm(): UseResetFormResult;
468
482
 
483
+ type CheckoutFormCycle = 'MONTHLY' | 'YEARLY';
484
+ type CheckoutFormMethod = 'card' | 'pix-auto';
485
+ interface CheckoutCardInput {
486
+ number: string;
487
+ expiryMonth: string;
488
+ expiryYear: string;
489
+ ccv: string;
490
+ holderName: string;
491
+ }
492
+ interface UseCheckoutFormResult {
493
+ name: string;
494
+ setName: (v: string) => void;
495
+ email: string;
496
+ setEmail: (v: string) => void;
497
+ emailConfirm: string;
498
+ setEmailConfirm: (v: string) => void;
499
+ phone: string;
500
+ setPhone: (v: string) => void;
501
+ cpf: string;
502
+ setCpf: (v: string) => void;
503
+ method: CheckoutFormMethod;
504
+ setMethod: (m: CheckoutFormMethod) => void;
505
+ cycle: CheckoutFormCycle;
506
+ setCycle: (c: CheckoutFormCycle) => void;
507
+ card: CheckoutCardInput;
508
+ setCard: (patch: Partial<CheckoutCardInput>) => void;
509
+ nameError: string | null;
510
+ emailError: string | null;
511
+ emailConfirmError: string | null;
512
+ phoneError: string | null;
513
+ cpfError: string | null;
514
+ markNameTouched: () => void;
515
+ markEmailTouched: () => void;
516
+ markEmailConfirmTouched: () => void;
517
+ markPhoneTouched: () => void;
518
+ markCpfTouched: () => void;
519
+ /**
520
+ * Result of the debounced server-side email-exists check, used to swap
521
+ * the CTA into "Email já cadastrado · Entrar" on the checkout form.
522
+ */
523
+ emailStatus: 'idle' | 'checking' | 'exists' | 'available';
524
+ /**
525
+ * Submit the form. Calls `auth.subscribeAnonymous`. Returns the result on
526
+ * success, null on validation failure, or throws on payment failure (caller
527
+ * should display a banner). EmailTakenError is caught + translated into
528
+ * `emailStatus='exists'` + `emailTaken=true` so the caller can redirect.
529
+ */
530
+ submit: () => Promise<SubscribeAnonymousResult | null>;
531
+ submitting: boolean;
532
+ canSubmit: boolean;
533
+ formSubmitAttempted: boolean;
534
+ error: AuthFormError | null;
535
+ /** True after a 409 collision; caller redirects to /login?email=… */
536
+ emailTaken: boolean;
537
+ loginUrl: string | null;
538
+ }
539
+ interface UseCheckoutFormArgs {
540
+ defaultMethod: CheckoutFormMethod;
541
+ defaultCycle: CheckoutFormCycle;
542
+ }
543
+ declare function useCheckoutForm(args: UseCheckoutFormArgs): UseCheckoutFormResult;
544
+
469
545
  type SubscriptionStatus = 'active' | 'trialing' | 'expired' | 'canceled' | 'past_due' | 'pending' | 'none';
470
546
  type PaymentMethod = CheckoutMethod$1;
471
547
  interface PaywallError {
@@ -970,11 +1046,15 @@ declare const AppConfigSchema: z.ZodObject<{
970
1046
  googleOAuth: z.ZodBoolean;
971
1047
  postAuthLanding: z.ZodString;
972
1048
  preAuthRoutes: z.ZodArray<z.ZodString>;
1049
+ signupMode: z.ZodOptional<z.ZodEnum<{
1050
+ pre_signup: "pre_signup";
1051
+ pay_first: "pay_first";
1052
+ }>>;
973
1053
  }, z.core.$strip>;
974
1054
  paywall: z.ZodDiscriminatedUnion<[z.ZodObject<{
975
1055
  mode: z.ZodEnum<{
976
- trial: "trial";
977
1056
  pay_first: "pay_first";
1057
+ trial: "trial";
978
1058
  }>;
979
1059
  trialDays: z.ZodOptional<z.ZodNumber>;
980
1060
  trialDaysCard: z.ZodOptional<z.ZodNumber>;
@@ -1505,4 +1585,4 @@ type PaywallStickyFooterProps = {
1505
1585
  };
1506
1586
  declare function PaywallStickyFooter({ children, className, safeAreaInsets, }: PaywallStickyFooterProps): react_jsx_runtime.JSX.Element;
1507
1587
 
1508
- export { type AndroidBrowser, type AppConfig, AppConfigProvider, AppConfigSchema, AppRoot, type AppRootProps, type AppRootSlots, type AuthFlowConfig, type AuthFormError, type AuthFormErrorCode, type AuthScreenProps, type CheckoutMethod, type Cycle, type CycleLabels, DeepLinkHandler, type DeepLinks, DevSkipOnboardingFab, EmptyState, ErrorBoundary, type I18nConfig, I18nProvider, type I18nProviderProps, type IOSBrowser, type InAppApp, type InstallActions, InstallGate, InstallSplash, type InstallState, type InstallVariant, LanguageSwitcher, type LanguageSwitcherProps, LoadingState, type OnboardingConfig, OnboardingFlow, type OnboardingFlowProps, type OnboardingStep, type OnboardingStepCtx, type OnboardingStepDef, type PaymentMethod, PaymentReturnHandler, Paywall, PaywallAnchorPrice, type PaywallAnchorPriceProps, type PaywallConfig, PaywallContext, type PaywallContextValue, type PaywallCopy, PaywallCountdown, type PaywallCountdownProps, PaywallCta, type PaywallCtaProps, PaywallCyclePicker, type PaywallCyclePickerProps, PaywallEyebrow, type PaywallEyebrowProps, PaywallFeatures, PaywallFeaturesCard, type PaywallFeaturesCardProps, type PaywallFeaturesProps, PaywallFinePrint, type PaywallFinePrintProps, PaywallHeadline, type PaywallHeadlineProps, PaywallHero, type PaywallHeroProps, PaywallMethodContent, type PaywallMethodContentProps, type PaywallMethodCopy, PaywallMethodTabs, type PaywallMethodTabsProps, PaywallPriceHeadline, type PaywallPriceHeadlineProps, type PaywallProps, PaywallProvider, type PaywallProviderProps, type PaywallSlots, type PaywallStat, PaywallStatsRow, type PaywallStatsRowProps, PaywallStickyFooter, type PaywallStickyFooterProps, type PaywallTestimonial, PaywallTestimonials, type PaywallTestimonialsProps, type PaywallThemeClasses, PaywallTrophyBadge, type PaywallTrophyBadgeProps, PaywallTrustLine, type PaywallTrustLineProps, type PersistedKey, PersistenceRegistry, type PersistenceRegistryProps, type PixPending, type Platform, PreAuthShell, type PreAuthShellProps, PushPrompt, type PushPromptProps, type PushPromptTexts, type PushUiState, RouteBoundary, type RouteBoundaryProps, type SkipDefaults, type SubscriptionStatus, type ToastItem, type UseLoginFormResult, type UseResetFormResult, asaasErrorMessage, computeAnchorCents, dailyFromYearly, detectAndroidBrowser, detectIOSBrowser, detectInAppApp, detectPlatform, detectStandalone, discountPercent, formatBRL, isDevToolsEnabled, monthlyFromYearly, parseAppConfig, shouldBlockInstall, shouldShowPermanentOption, skipOnboarding, useAppConfig, useAuth, useAuthPrimitives, useFeature, useForgotForm, useInstallPrompt, useLoginForm, useOnboardingStep, usePaywallContext, usePaywallState, usePlan, usePush, useReminders, useResetForm, useSignupForm, useSubscription, useToast };
1588
+ export { type AndroidBrowser, type AppConfig, AppConfigProvider, AppConfigSchema, AppRoot, type AppRootProps, type AppRootSlots, type AuthFlowConfig, type AuthFormError, type AuthFormErrorCode, type AuthScreenProps, type CheckoutCardInput, type CheckoutFormCycle, type CheckoutFormMethod, type CheckoutMethod, CheckoutPageDefault, type Cycle, type CycleLabels, DeepLinkHandler, type DeepLinks, DevSkipOnboardingFab, EmptyState, ErrorBoundary, type I18nConfig, I18nProvider, type I18nProviderProps, type IOSBrowser, type InAppApp, type InstallActions, InstallGate, InstallSplash, type InstallState, type InstallVariant, LanguageSwitcher, type LanguageSwitcherProps, LoadingState, type OnboardingConfig, OnboardingFlow, type OnboardingFlowProps, type OnboardingStep, type OnboardingStepCtx, type OnboardingStepDef, type PaymentMethod, PaymentReturnHandler, Paywall, PaywallAnchorPrice, type PaywallAnchorPriceProps, type PaywallConfig, PaywallContext, type PaywallContextValue, type PaywallCopy, PaywallCountdown, type PaywallCountdownProps, PaywallCta, type PaywallCtaProps, PaywallCyclePicker, type PaywallCyclePickerProps, PaywallEyebrow, type PaywallEyebrowProps, PaywallFeatures, PaywallFeaturesCard, type PaywallFeaturesCardProps, type PaywallFeaturesProps, PaywallFinePrint, type PaywallFinePrintProps, PaywallHeadline, type PaywallHeadlineProps, PaywallHero, type PaywallHeroProps, PaywallMethodContent, type PaywallMethodContentProps, type PaywallMethodCopy, PaywallMethodTabs, type PaywallMethodTabsProps, PaywallPriceHeadline, type PaywallPriceHeadlineProps, type PaywallProps, PaywallProvider, type PaywallProviderProps, type PaywallSlots, type PaywallStat, PaywallStatsRow, type PaywallStatsRowProps, PaywallStickyFooter, type PaywallStickyFooterProps, type PaywallTestimonial, PaywallTestimonials, type PaywallTestimonialsProps, type PaywallThemeClasses, PaywallTrophyBadge, type PaywallTrophyBadgeProps, PaywallTrustLine, type PaywallTrustLineProps, type PersistedKey, PersistenceRegistry, type PersistenceRegistryProps, type PixPending, PixWaitingPageDefault, type Platform, PreAuthShell, type PreAuthShellProps, PushPrompt, type PushPromptProps, type PushPromptTexts, type PushUiState, RouteBoundary, type RouteBoundaryProps, type SkipDefaults, type SubscriptionStatus, type ToastItem, type UseCheckoutFormArgs, type UseCheckoutFormResult, type UseLoginFormResult, type UseResetFormResult, asaasErrorMessage, computeAnchorCents, dailyFromYearly, detectAndroidBrowser, detectIOSBrowser, detectInAppApp, detectPlatform, detectStandalone, discountPercent, formatBRL, isDevToolsEnabled, monthlyFromYearly, parseAppConfig, shouldBlockInstall, shouldShowPermanentOption, skipOnboarding, useAppConfig, useAuth, useAuthPrimitives, useCheckoutForm, useFeature, useForgotForm, useInstallPrompt, useLoginForm, useOnboardingStep, usePaywallContext, usePaywallState, usePlan, usePush, useReminders, useResetForm, useSignupForm, useSubscription, useToast };
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
3
  import { ReactNode, ComponentType, Component } from 'react';
4
4
  import * as _hook_sdk_sdk from '@hook-sdk/sdk';
5
- import { HookContextValue, CheckoutMethod as CheckoutMethod$1, CheckoutCycle, CheckoutCardData, CheckoutHolderInfo, CheckoutResult, PlanState, ReminderSlot } from '@hook-sdk/sdk';
5
+ import { HookContextValue, SubscribeAnonymousResult, CheckoutMethod as CheckoutMethod$1, CheckoutCycle, CheckoutCardData, CheckoutHolderInfo, CheckoutResult, PlanState, ReminderSlot } from '@hook-sdk/sdk';
6
6
  export { PlanInfo, PlanState, useTrackOnboardingStep } from '@hook-sdk/sdk';
7
7
  import { z } from 'zod';
8
8
 
@@ -14,6 +14,16 @@ type AuthFlowConfig = {
14
14
  googleOAuth: boolean;
15
15
  postAuthLanding: string;
16
16
  preAuthRoutes: string[];
17
+ /**
18
+ * Plan-V — where in the funnel does account creation happen?
19
+ * - 'pre_signup' (default, legacy): user signs up before paywall via
20
+ * /api/auth/signup. Existing behavior — preserves backwards-compat.
21
+ * - 'pay_first': checkout creates the account in one shot via
22
+ * /api/app/:appSlug/payments/checkout/subscribe. AppRoot does NOT mount
23
+ * the /signup route; PreAuthFlow ends at /paywall/checkout.
24
+ * See docs/superpowers/specs/2026-05-13-pay-first-signup-design.md.
25
+ */
26
+ signupMode?: 'pre_signup' | 'pay_first';
17
27
  };
18
28
  type PaywallConfig = {
19
29
  mode: 'free';
@@ -323,6 +333,10 @@ declare class ErrorBoundary extends Component<Props, State> {
323
333
  render(): string | number | boolean | Iterable<ReactNode> | react_jsx_runtime.JSX.Element;
324
334
  }
325
335
 
336
+ declare function CheckoutPageDefault(): react_jsx_runtime.JSX.Element;
337
+
338
+ declare function PixWaitingPageDefault(): react_jsx_runtime.JSX.Element | null;
339
+
326
340
  /**
327
341
  * Reads `?token=` from the URL on mount + on location change. When present and
328
342
  * the current pathname is `/`, redirects to the configured deep-link path
@@ -335,7 +349,7 @@ declare function DeepLinkHandler({ deepLinks }: {
335
349
  deepLinks?: DeepLinks;
336
350
  }): null;
337
351
 
338
- type AuthFormErrorCode = 'invalid_credentials' | 'rate_limited' | 'email_unverified' | 'email_taken' | 'account_locked' | 'network' | 'server';
352
+ type AuthFormErrorCode = 'invalid_credentials' | 'rate_limited' | 'email_unverified' | 'account_locked' | 'network' | 'server';
339
353
  interface AuthFormError {
340
354
  code: AuthFormErrorCode;
341
355
  message: string;
@@ -466,6 +480,68 @@ interface UseResetFormResult {
466
480
  */
467
481
  declare function useResetForm(): UseResetFormResult;
468
482
 
483
+ type CheckoutFormCycle = 'MONTHLY' | 'YEARLY';
484
+ type CheckoutFormMethod = 'card' | 'pix-auto';
485
+ interface CheckoutCardInput {
486
+ number: string;
487
+ expiryMonth: string;
488
+ expiryYear: string;
489
+ ccv: string;
490
+ holderName: string;
491
+ }
492
+ interface UseCheckoutFormResult {
493
+ name: string;
494
+ setName: (v: string) => void;
495
+ email: string;
496
+ setEmail: (v: string) => void;
497
+ emailConfirm: string;
498
+ setEmailConfirm: (v: string) => void;
499
+ phone: string;
500
+ setPhone: (v: string) => void;
501
+ cpf: string;
502
+ setCpf: (v: string) => void;
503
+ method: CheckoutFormMethod;
504
+ setMethod: (m: CheckoutFormMethod) => void;
505
+ cycle: CheckoutFormCycle;
506
+ setCycle: (c: CheckoutFormCycle) => void;
507
+ card: CheckoutCardInput;
508
+ setCard: (patch: Partial<CheckoutCardInput>) => void;
509
+ nameError: string | null;
510
+ emailError: string | null;
511
+ emailConfirmError: string | null;
512
+ phoneError: string | null;
513
+ cpfError: string | null;
514
+ markNameTouched: () => void;
515
+ markEmailTouched: () => void;
516
+ markEmailConfirmTouched: () => void;
517
+ markPhoneTouched: () => void;
518
+ markCpfTouched: () => void;
519
+ /**
520
+ * Result of the debounced server-side email-exists check, used to swap
521
+ * the CTA into "Email já cadastrado · Entrar" on the checkout form.
522
+ */
523
+ emailStatus: 'idle' | 'checking' | 'exists' | 'available';
524
+ /**
525
+ * Submit the form. Calls `auth.subscribeAnonymous`. Returns the result on
526
+ * success, null on validation failure, or throws on payment failure (caller
527
+ * should display a banner). EmailTakenError is caught + translated into
528
+ * `emailStatus='exists'` + `emailTaken=true` so the caller can redirect.
529
+ */
530
+ submit: () => Promise<SubscribeAnonymousResult | null>;
531
+ submitting: boolean;
532
+ canSubmit: boolean;
533
+ formSubmitAttempted: boolean;
534
+ error: AuthFormError | null;
535
+ /** True after a 409 collision; caller redirects to /login?email=… */
536
+ emailTaken: boolean;
537
+ loginUrl: string | null;
538
+ }
539
+ interface UseCheckoutFormArgs {
540
+ defaultMethod: CheckoutFormMethod;
541
+ defaultCycle: CheckoutFormCycle;
542
+ }
543
+ declare function useCheckoutForm(args: UseCheckoutFormArgs): UseCheckoutFormResult;
544
+
469
545
  type SubscriptionStatus = 'active' | 'trialing' | 'expired' | 'canceled' | 'past_due' | 'pending' | 'none';
470
546
  type PaymentMethod = CheckoutMethod$1;
471
547
  interface PaywallError {
@@ -970,11 +1046,15 @@ declare const AppConfigSchema: z.ZodObject<{
970
1046
  googleOAuth: z.ZodBoolean;
971
1047
  postAuthLanding: z.ZodString;
972
1048
  preAuthRoutes: z.ZodArray<z.ZodString>;
1049
+ signupMode: z.ZodOptional<z.ZodEnum<{
1050
+ pre_signup: "pre_signup";
1051
+ pay_first: "pay_first";
1052
+ }>>;
973
1053
  }, z.core.$strip>;
974
1054
  paywall: z.ZodDiscriminatedUnion<[z.ZodObject<{
975
1055
  mode: z.ZodEnum<{
976
- trial: "trial";
977
1056
  pay_first: "pay_first";
1057
+ trial: "trial";
978
1058
  }>;
979
1059
  trialDays: z.ZodOptional<z.ZodNumber>;
980
1060
  trialDaysCard: z.ZodOptional<z.ZodNumber>;
@@ -1505,4 +1585,4 @@ type PaywallStickyFooterProps = {
1505
1585
  };
1506
1586
  declare function PaywallStickyFooter({ children, className, safeAreaInsets, }: PaywallStickyFooterProps): react_jsx_runtime.JSX.Element;
1507
1587
 
1508
- export { type AndroidBrowser, type AppConfig, AppConfigProvider, AppConfigSchema, AppRoot, type AppRootProps, type AppRootSlots, type AuthFlowConfig, type AuthFormError, type AuthFormErrorCode, type AuthScreenProps, type CheckoutMethod, type Cycle, type CycleLabels, DeepLinkHandler, type DeepLinks, DevSkipOnboardingFab, EmptyState, ErrorBoundary, type I18nConfig, I18nProvider, type I18nProviderProps, type IOSBrowser, type InAppApp, type InstallActions, InstallGate, InstallSplash, type InstallState, type InstallVariant, LanguageSwitcher, type LanguageSwitcherProps, LoadingState, type OnboardingConfig, OnboardingFlow, type OnboardingFlowProps, type OnboardingStep, type OnboardingStepCtx, type OnboardingStepDef, type PaymentMethod, PaymentReturnHandler, Paywall, PaywallAnchorPrice, type PaywallAnchorPriceProps, type PaywallConfig, PaywallContext, type PaywallContextValue, type PaywallCopy, PaywallCountdown, type PaywallCountdownProps, PaywallCta, type PaywallCtaProps, PaywallCyclePicker, type PaywallCyclePickerProps, PaywallEyebrow, type PaywallEyebrowProps, PaywallFeatures, PaywallFeaturesCard, type PaywallFeaturesCardProps, type PaywallFeaturesProps, PaywallFinePrint, type PaywallFinePrintProps, PaywallHeadline, type PaywallHeadlineProps, PaywallHero, type PaywallHeroProps, PaywallMethodContent, type PaywallMethodContentProps, type PaywallMethodCopy, PaywallMethodTabs, type PaywallMethodTabsProps, PaywallPriceHeadline, type PaywallPriceHeadlineProps, type PaywallProps, PaywallProvider, type PaywallProviderProps, type PaywallSlots, type PaywallStat, PaywallStatsRow, type PaywallStatsRowProps, PaywallStickyFooter, type PaywallStickyFooterProps, type PaywallTestimonial, PaywallTestimonials, type PaywallTestimonialsProps, type PaywallThemeClasses, PaywallTrophyBadge, type PaywallTrophyBadgeProps, PaywallTrustLine, type PaywallTrustLineProps, type PersistedKey, PersistenceRegistry, type PersistenceRegistryProps, type PixPending, type Platform, PreAuthShell, type PreAuthShellProps, PushPrompt, type PushPromptProps, type PushPromptTexts, type PushUiState, RouteBoundary, type RouteBoundaryProps, type SkipDefaults, type SubscriptionStatus, type ToastItem, type UseLoginFormResult, type UseResetFormResult, asaasErrorMessage, computeAnchorCents, dailyFromYearly, detectAndroidBrowser, detectIOSBrowser, detectInAppApp, detectPlatform, detectStandalone, discountPercent, formatBRL, isDevToolsEnabled, monthlyFromYearly, parseAppConfig, shouldBlockInstall, shouldShowPermanentOption, skipOnboarding, useAppConfig, useAuth, useAuthPrimitives, useFeature, useForgotForm, useInstallPrompt, useLoginForm, useOnboardingStep, usePaywallContext, usePaywallState, usePlan, usePush, useReminders, useResetForm, useSignupForm, useSubscription, useToast };
1588
+ export { type AndroidBrowser, type AppConfig, AppConfigProvider, AppConfigSchema, AppRoot, type AppRootProps, type AppRootSlots, type AuthFlowConfig, type AuthFormError, type AuthFormErrorCode, type AuthScreenProps, type CheckoutCardInput, type CheckoutFormCycle, type CheckoutFormMethod, type CheckoutMethod, CheckoutPageDefault, type Cycle, type CycleLabels, DeepLinkHandler, type DeepLinks, DevSkipOnboardingFab, EmptyState, ErrorBoundary, type I18nConfig, I18nProvider, type I18nProviderProps, type IOSBrowser, type InAppApp, type InstallActions, InstallGate, InstallSplash, type InstallState, type InstallVariant, LanguageSwitcher, type LanguageSwitcherProps, LoadingState, type OnboardingConfig, OnboardingFlow, type OnboardingFlowProps, type OnboardingStep, type OnboardingStepCtx, type OnboardingStepDef, type PaymentMethod, PaymentReturnHandler, Paywall, PaywallAnchorPrice, type PaywallAnchorPriceProps, type PaywallConfig, PaywallContext, type PaywallContextValue, type PaywallCopy, PaywallCountdown, type PaywallCountdownProps, PaywallCta, type PaywallCtaProps, PaywallCyclePicker, type PaywallCyclePickerProps, PaywallEyebrow, type PaywallEyebrowProps, PaywallFeatures, PaywallFeaturesCard, type PaywallFeaturesCardProps, type PaywallFeaturesProps, PaywallFinePrint, type PaywallFinePrintProps, PaywallHeadline, type PaywallHeadlineProps, PaywallHero, type PaywallHeroProps, PaywallMethodContent, type PaywallMethodContentProps, type PaywallMethodCopy, PaywallMethodTabs, type PaywallMethodTabsProps, PaywallPriceHeadline, type PaywallPriceHeadlineProps, type PaywallProps, PaywallProvider, type PaywallProviderProps, type PaywallSlots, type PaywallStat, PaywallStatsRow, type PaywallStatsRowProps, PaywallStickyFooter, type PaywallStickyFooterProps, type PaywallTestimonial, PaywallTestimonials, type PaywallTestimonialsProps, type PaywallThemeClasses, PaywallTrophyBadge, type PaywallTrophyBadgeProps, PaywallTrustLine, type PaywallTrustLineProps, type PersistedKey, PersistenceRegistry, type PersistenceRegistryProps, type PixPending, PixWaitingPageDefault, type Platform, PreAuthShell, type PreAuthShellProps, PushPrompt, type PushPromptProps, type PushPromptTexts, type PushUiState, RouteBoundary, type RouteBoundaryProps, type SkipDefaults, type SubscriptionStatus, type ToastItem, type UseCheckoutFormArgs, type UseCheckoutFormResult, type UseLoginFormResult, type UseResetFormResult, asaasErrorMessage, computeAnchorCents, dailyFromYearly, detectAndroidBrowser, detectIOSBrowser, detectInAppApp, detectPlatform, detectStandalone, discountPercent, formatBRL, isDevToolsEnabled, monthlyFromYearly, parseAppConfig, shouldBlockInstall, shouldShowPermanentOption, skipOnboarding, useAppConfig, useAuth, useAuthPrimitives, useCheckoutForm, useFeature, useForgotForm, useInstallPrompt, useLoginForm, useOnboardingStep, usePaywallContext, usePaywallState, usePlan, usePush, useReminders, useResetForm, useSignupForm, useSubscription, useToast };