package domain import ( "errors" "time" ) var ( ErrUserNotFound = errors.New("user not found") ) type User struct { ID int64 FirstName string LastName string Email string PhoneNumber string Password []byte Role Role // EmailVerified bool PhoneVerified bool // CreatedAt time.Time UpdatedAt time.Time // SuspendedAt time.Time Suspended bool // CompanyID ValidInt64 } type RegisterUserReq struct { FirstName string LastName string Email string PhoneNumber string Password string Role string Otp string ReferralCode string `json:"referral_code"` OtpMedium OtpMedium } type CreateUserReq struct { FirstName string LastName string Email string PhoneNumber string Password string Role string Suspended bool CompanyID ValidInt64 } type ResetPasswordReq struct { Email string PhoneNumber string Password string Otp string OtpMedium OtpMedium } type UpdateUserReq struct { UserId int64 FirstName ValidString LastName ValidString Suspended ValidBool } type UpdateUserReferalCode struct { UserID int64 Code string }