package com.placeholder.sherpai2.data.local.entity

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

/**
 * PersonEntity - Represents a person in your app
 *
 * This is a SIMPLE person entity for your existing database.
 * Face embeddings are stored separately in FaceModelEntity.
 *
 * ARCHITECTURE:
 * - PersonEntity = Human data (name, birthday, etc.)
 * - FaceModelEntity = AI data (face embeddings) - links to this via personId
 *
 * You can add more fields as needed:
 * - birthday: Long?
 * - phoneNumber: String?
 * - email: String?
 * - notes: String?
 * - etc.
 */
@Entity(tableName = "persons")
data class PersonEntity(
    @PrimaryKey(autoGenerate = true)
    val id: Long = 0,

    /**
     * Person's name
     */
    val name: String,

    /**
     * When this person was added
     */
    val createdAt: Long = System.currentTimeMillis(),

    /**
     * Last time this person's data was updated
     */
    val updatedAt: Long = System.currentTimeMillis()

    // ADD MORE FIELDS AS NEEDED:
    // val birthday: Long? = null,
    // val phoneNumber: String? = null,
    // val email: String? = null,
    // val profilePhotoUri: String? = null,
    // val notes: String? = null
)