2026-01-15 12:38:16 +09:00

73 lines
2.1 KiB
TypeScript

/**
* 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,
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)
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";