66 lines
1.9 KiB
TypeScript
Raw Normal View History

/**
* Get Started Domain
*
* Unified "Get Started" flow for:
* - Email verification (OTP)
* - Account status detection
* - Guest eligibility check (no OTP required)
* - Account completion (SF-only full account)
* - Signup with eligibility (full 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,
2026-01-15 12:38:16 +09:00
type BilingualEligibilityAddress,
type GuestEligibilityRequest,
type GuestEligibilityResponse,
type GuestHandoffToken,
type CompleteAccountRequest,
type SignupWithEligibilityRequest,
type SignupWithEligibilityResponse,
type MigrateWhmcsAccountRequest,
type GetStartedSession,
type GetStartedError,
} from "./contract.js";
// ============================================================================
// Schemas (for validation)
// ============================================================================
export {
// OTP schemas
sendVerificationCodeRequestSchema,
sendVerificationCodeResponseSchema,
otpCodeSchema,
verifyCodeRequestSchema,
verifyCodeResponseSchema,
accountStatusSchema,
// 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,
// WHMCS migration schema (passwordless migration)
migrateWhmcsAccountRequestSchema,
// Session schema
getStartedSessionSchema,
} from "./schema.js";