use once_cell::sync::Lazy;
use std::collections::HashSet;
use std::sync::Mutex;
static OUTPUT_REGISTRY: Lazy<Mutex<HashSet<String>>> = Lazy::new(|| Mutex::new(HashSet::new()));
pub fn register_output(output_path: &str) {
let mut registry = OUTPUT_REGISTRY.lock().unwrap();
if registry.insert(output_path.to_string()) {
if let Err(e) = crate::generate_types(output_path) {
eprintln!("⚠️ Failed to generate types to {}: {}", output_path, e);
}
}
}