use serde::Serialize;
#[derive(Serialize, Clone)]
pub struct PersonData {
pub label: String,
pub face_ids: Vec<i64>,
pub representative_id: i64,
pub hashes: Vec<String>,
}
#[derive(Serialize, Clone)]
pub struct ClusterData {
pub cluster_id: i64,
pub face_ids: Vec<i64>,
pub hashes: Vec<String>,
}
#[derive(Serialize, Clone)]
pub struct SingletonData {
pub face_id: i64,
pub hash: String,
}
#[derive(Serialize, Clone)]
pub struct FacesData {
pub people: Vec<PersonData>,
pub clusters: Vec<ClusterData>,
pub singletons: Vec<SingletonData>,
}
#[derive(Serialize, Clone)]
pub struct ClusterFaceData {
pub face_id: i64,
pub hash: String,
pub path: String,
}
#[derive(Serialize, Clone)]
pub struct ClusterDetail {
pub cluster_id: i64,
pub faces: Vec<ClusterFaceData>,
}
#[derive(Serialize, Clone)]
pub struct PersonFaceData {
pub face_id: i64,
pub hash: String,
pub path: String,
pub is_primary: bool,
}
#[derive(Serialize, Clone)]
pub struct PersonDetail {
pub label: String,
pub faces: Vec<PersonFaceData>,
}