#![warn(missing_docs)]
#![warn(clippy::print_stdout, clippy::print_stderr)]
pub mod embedded;
mod error;
pub(crate) mod model_manager;
pub(crate) mod network;
pub mod c_api;
#[cfg(feature = "napi")]
pub mod napi;
pub use embedded::{detect, detect_batch, is_injection, score, DetectionOutput, RiskLevel};
pub use error::{Error, Result};
pub use model_manager::download_model;
#[cfg(feature = "python")]
mod python;
#[cfg(feature = "full")]
pub mod advanced_ensemble;
#[cfg(feature = "full")]
pub mod api;
#[cfg(feature = "full")]
pub mod attention_tracker;
#[cfg(feature = "full")]
pub mod detection;
#[cfg(feature = "full")]
pub mod embeddings;
#[cfg(feature = "full")]
pub mod ensemble;
#[cfg(feature = "full")]
pub mod evaluation;
#[cfg(feature = "full")]
pub mod feedback;
#[cfg(feature = "full")]
pub mod heuristics;
#[cfg(feature = "full")]
pub mod inference;
#[cfg(feature = "full")]
pub mod jailguard;
#[cfg(feature = "full")]
pub mod model;
#[cfg(feature = "full")]
pub mod monitoring;
#[cfg(feature = "full")]
pub mod output_validation;
#[cfg(feature = "full")]
pub mod performance;
#[cfg(feature = "full")]
pub mod pretrained;
#[cfg(feature = "full")]
pub mod privilege;
#[cfg(feature = "full")]
pub mod spotlighting;
#[cfg(feature = "full")]
pub mod task_tracking;
#[cfg(feature = "full")]
pub mod tokenizer;
#[cfg(feature = "full")]
pub mod validation;
#[cfg(feature = "training")]
pub mod training;
#[cfg(feature = "full")]
pub use heuristics::{HeuristicDetector, HeuristicResult, HeuristicRule, RuleCategory};
#[cfg(feature = "full")]
pub use detection::{DetectionResult, Detector, DetectorConfig, InjectionRisk};
#[cfg(feature = "full")]
pub use advanced_ensemble::{AdvancedDetectionResult, AdvancedEnsemble, LayerScores};
#[cfg(feature = "full")]
pub use attention_tracker::{AttentionTracker, AttentionTrackerConfig, AttentionTrackerResult};
#[cfg(feature = "full")]
pub use ensemble::{EnsembleDetectionResult, EnsembleDetector, ModelWeights};
#[cfg(feature = "full")]
pub use evaluation::{
AdversarialEvaluator, AttackResult, CalibrationBin, CalibrationEvaluator, CalibrationMetrics,
ConfusionMatrix, MultiClassEvaluator, PerClassMetrics,
};
#[cfg(feature = "full")]
pub use feedback::{FeedbackCollector, FeedbackType};
#[cfg(feature = "full")]
pub use spotlighting::{Spotlighting, SpotlightingConfig};
#[cfg(feature = "full")]
pub use jailguard::{
InputValidationResult, JailGuard, JailGuardConfig, OutputCheckResult, RequestContext,
SessionStats,
};
#[cfg(feature = "training")]
pub use training::{NeuralBinaryNetwork, NeuralDataLoader, TrainingMetrics};
#[cfg(feature = "full")]
pub use monitoring::{
AnomalyConfig, AnomalyDetector, AnomalyResult, DetectionEvent, SessionTracker,
};
#[cfg(feature = "full")]
pub use performance::{EnsembleProfile, EnsembleProfiler, PerformanceMetrics, ResponseCache};
#[cfg(feature = "full")]
pub use validation::{
BenchmarkDataset, ModelComparison, SOTAValidator, SecurityAssessment, ValidationMetrics,
ValidationReport,
};