pub mod analyzer;
pub mod compliance;
pub mod core;
pub mod datasheets;
pub mod parser;
pub mod ucs;
pub mod ai;
pub use core::{
DesignGuardError, DesignGuardCore, ValidationOptions, ValidationResult, ValidationStats,
discover_kicad_files,
};
pub use analyzer::rules::{Issue, Severity, RulesEngine};
pub use parser::schema::Schematic;
pub use parser::pcb_schema::PcbDesign;
pub use parser::kicad::KicadParser;
pub use parser::pcb::PcbParser;
pub fn parse_schematic(path: &std::path::Path) -> Result<Schematic, DesignGuardError> {
KicadParser::parse_schematic(path).map_err(|e| DesignGuardError::Parse(e.to_string()))
}
pub fn parse_pcb(
path: &std::path::Path,
) -> Result<PcbDesign, DesignGuardError> {
PcbParser::parse_pcb(path).map_err(|e| DesignGuardError::Parse(e.to_string()))
}
pub mod prelude {
pub use crate::{
DesignGuardCore, DesignGuardError, Issue, Severity, ValidationOptions, ValidationResult,
ValidationStats,
};
}