package app.closer.data.local.entity

import androidx.room.ColumnInfo
import androidx.room.Entity
import androidx.room.PrimaryKey

/**
 * Room entity for partner date plan preferences.
 *
 * Stored locally in Room. Synced to Firestore when explicitly shared/scheduled.
 * Both partners contribute preferences; the Builder uses them to assemble a plan.
 *
 * Table: date_plan_preferences
 */
@Entity(tableName = "date_plan_preferences")
data class DatePlanPreferenceEntity(
    @PrimaryKey val id: String = "",
    @ColumnInfo(name = "couple_id") val coupleId: String = "",
    @ColumnInfo(name = "date_idea_id") val dateIdeaId: String = "",
    @ColumnInfo(name = "preferred_date") val preferredDate: Long = 0L,
    @ColumnInfo(name = "preferred_time") val preferredTime: String = "",
    @ColumnInfo val budget: Int = 0,
    val duration: String = "",
    @ColumnInfo(name = "created_at") val createdAt: Long = 0L,
    @ColumnInfo(name = "updated_at") val updatedAt: Long = 0L
)
