73 lines
2.1 KiB
TypeScript
Raw Normal View History

/**
* Get Started Domain
*
* Unified "Get Started" flow for:
* - Email verification (OTP)
* - Account status detection
* - Quick eligibility check (guest)
* - Account completion (SF-only full account)
* - "Maybe Later" flow
*/
// ============================================================================
// Constants & Contract Types
// ============================================================================
export {
ACCOUNT_STATUS,
OTP_ERROR_CODE,
GET_STARTED_ERROR_CODE,
type AccountStatus,
type OtpErrorCode,
type GetStartedErrorCode,
type SendVerificationCodeRequest,
type SendVerificationCodeResponse,
type VerifyCodeRequest,
type VerifyCodeResponse,
type QuickEligibilityRequest,
type QuickEligibilityResponse,
2026-01-15 12:38:16 +09:00
type BilingualEligibilityAddress,
type GuestEligibilityRequest,
type GuestEligibilityResponse,
type GuestHandoffToken,
type CompleteAccountRequest,
type MaybeLaterRequest,
type MaybeLaterResponse,
type SignupWithEligibilityRequest,
type SignupWithEligibilityResponse,
type GetStartedSession,
type GetStartedError,
} from "./contract.js";
// ============================================================================
// Schemas (for validation)
// ============================================================================
export {
// OTP schemas
sendVerificationCodeRequestSchema,
sendVerificationCodeResponseSchema,
otpCodeSchema,
verifyCodeRequestSchema,
verifyCodeResponseSchema,
accountStatusSchema,
// Quick eligibility schemas (OTP-verified)
quickEligibilityRequestSchema,
quickEligibilityResponseSchema,
// Guest eligibility schemas (no OTP required)
2026-01-15 12:38:16 +09:00
bilingualEligibilityAddressSchema,
guestEligibilityRequestSchema,
guestEligibilityResponseSchema,
guestHandoffTokenSchema,
// Account completion schemas
completeAccountRequestSchema,
// Signup with eligibility schemas (full inline signup)
signupWithEligibilityRequestSchema,
signupWithEligibilityResponseSchema,
// Maybe later schemas
maybeLaterRequestSchema,
maybeLaterResponseSchema,
// Session schema
getStartedSessionSchema,
} from "./schema.js";