#![allow(clippy::exhaustive_structs, reason = "Configuration structs")]
#[cfg(any(feature = "assets", feature = "tera"))]
use serde::{Deserialize, Serialize};
#[cfg(feature = "tera")]
use ::{
smart_default::SmartDefault,
std::path::PathBuf,
};
#[cfg(any(feature = "assets", feature = "tera"))]
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, PartialEq, Serialize)]
#[expect(clippy::exhaustive_enums, reason = "Exhaustive")]
pub enum LoadingBehavior {
Deny,
Supplement,
Override,
}
#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize, SmartDefault)]
#[cfg(feature = "tera")]
pub struct HtmlTemplates {
#[default(LoadingBehavior::Deny)]
pub behavior: LoadingBehavior,
#[default = "html"]
pub local_path: PathBuf,
}