pub trait ElementDetectorImpl: Send + Sync {
// Required methods
fn detect_patterns(&self, ctx: &DetectionContext<'_>) -> Vec<PatternMatch>;
fn framework_name(&self) -> &'static str;
// Provided methods
fn priority(&self) -> i32 { ... }
fn can_detect(&self, _ctx: &DetectionContext<'_>) -> bool { ... }
}