#![cfg_attr(feature = "validate", doc = "```no_run")]
#![cfg_attr(not(feature = "validate"), doc = "```ignore")]
#![warn(missing_docs)]
#[cfg(feature = "validate")]
mod app;
#[cfg(feature = "validate")]
mod service;
mod sink;
mod source;
mod strict;
mod typed;
#[cfg(feature = "watch")]
mod watch;
#[cfg(feature = "validate")]
pub use app::AppConfig;
pub use rskit_util::SecretString;
#[cfg(feature = "validate")]
pub use service::{Environment, LogFormat, LogOutput, LoggingConfig, ServiceConfig};
pub use sink::{ConfigSink, ConfigTable, FileConfigSink, InMemoryConfigSink};
#[cfg(feature = "validate")]
pub use source::load_config;
pub use source::{
ConfigLoader, ConfigMapSource, ConfigSource, DotenvFileSource, EnvironmentSource, Profile,
TomlFileSource,
};
pub use strict::{
CompositeKey, IdentityKey, IncludeMerge, MergeIdentity, RawTable, RawValue, StrictLoader,
deserialize_subtree, load_strict,
};
#[cfg(feature = "watch")]
pub use watch::{ConfigChange, ConfigChangeStream, ConfigWatch};