export type InitialOnboardingNavigation = | "login" | "application" | "onboarding" | "provision_onboarding" | "onboarding_inconsistent"; export type InitialOnboardingNavigationInput = { isAuthenticated: boolean; availableCompaniesCount: number; onboardingStatus: "not_provisioned" | "pending" | "completed"; }; /** Decide la navegación sin leer ni modificar persistencia. */ export function resolveInitialOnboardingNavigation( input: InitialOnboardingNavigationInput ): InitialOnboardingNavigation { if (!input.isAuthenticated) { return "login"; } if (input.availableCompaniesCount > 0) { return "application"; } if (input.onboardingStatus === "pending") { return "onboarding"; } if (input.onboardingStatus === "completed") { return "onboarding_inconsistent"; } return "provision_onboarding"; }