← back to Dear Bubbe Nextjs

lib/types/user.ts

26 lines

export interface UserProfile {
  id: string // Google user ID
  email: string
  name: string // From Google
  preferredName?: string // What they want Bubbe to call them
  gender?: 'male' | 'female' | 'other' | 'prefer_not_to_say'
  relationshipStatus?: 'single' | 'dating' | 'engaged' | 'married' | 'divorced' | 'widowed' | 'complicated'
  birthYear?: number
  age?: number
  religiousLevel?: 'very' | 'somewhat' | 'not_very' | 'secular' | 'atheist'
  hasKids?: boolean
  numberOfKids?: number
  kidsInfo?: Array<{
    name?: string
    age?: number
    gender?: string
  }>
  onboardingCompleted?: boolean
  createdAt?: Date
  updatedAt?: Date
  // Additional context for Bubbe
  occupation?: string
  location?: string
  lastVisit?: Date
  visitCount?: number
}