#![forbid(unsafe_code)]
#![warn(missing_docs)]

//! Configuration loading for provctl service management.
//!
//! This crate handles loading and parsing TOML configuration files for service definitions,
//! and provides configuration-driven behavior for all user-facing messages and defaults.
//!
//! # Configuration Files
//!
//! - `messages.toml` - All user-facing strings (No hardcoded strings in code)
//! - `defaults.toml` - Default values for timeouts, intervals, etc.
//! - `services.toml` - Service definitions (loaded by users)
//!
//! # Examples
//!
//! ```ignore
//! use provctl_config::ConfigLoader;
//!
//! let loader = ConfigLoader::new("/etc/provctl")?;
//! let messages = loader.load_messages()?;
//! let defaults = loader.load_defaults()?;
//! ```

pub mod defaults;
pub mod loader;
pub mod messages;

pub use defaults::Defaults;
pub use loader::ConfigLoader;
pub use messages::Messages;
