use crate::fs::util::{path_to_entry_key, path_to_entry_prefix};
use iroh_docs::store::FilterKind;
use iroh_docs::Author;
use iroh_docs::DocTicket;
use iroh_docs::NamespaceId;
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct ExportedUser {
pub(crate) author: Author,
pub(crate) home_replica: Option<NamespaceId>,
pub(crate) home_replica_ticket: Option<DocTicket>,
}
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub enum EmbeddingModality {
Text,
Image,
Audio,
}
pub fn home_replica_filters() -> Vec<FilterKind> {
let profile_filter = FilterKind::Exact(path_to_entry_key(&"/profile.toml".into()));
let posts_filter = FilterKind::Prefix(path_to_entry_prefix(&"/posts/".into()));
vec![profile_filter, posts_filter]
}