use std::path::PathBuf;
pub struct VaultHealthReport {
pub note_count: usize,
pub duplicate_ids: Vec<DuplicateId>,
pub duplicate_aliases: Vec<DuplicateAlias>,
pub broken_links: Vec<BrokenLink>,
}
impl VaultHealthReport {
pub fn has_issues(&self) -> bool {
!self.duplicate_ids.is_empty() || !self.duplicate_aliases.is_empty() || !self.broken_links.is_empty()
}
}
pub struct DuplicateId {
pub id: String,
pub notes: Vec<NoteRef>,
}
pub struct DuplicateAlias {
pub alias: String,
pub notes: Vec<NoteRef>,
}
pub struct NoteRef {
pub path: PathBuf,
pub backlink_count: usize,
}
pub struct BrokenLink {
pub source_path: PathBuf,
pub line: usize,
pub text: String,
}