krypt_core/config/mod.rs
1//! `.krypt.toml` configuration schema and parser.
2//!
3//! See the [project README](https://github.com/kryptic-sh/krypt) for the
4//! full schema reference. This module defines the in-memory Rust shape of
5//! the config (`Config` and friends) and a parser that turns a `.krypt.toml`
6//! file or string into one of these structs.
7//!
8//! What this module **does not** do (delegated to sibling modules):
9//!
10//! - `include = [...]` expansion → [`crate::include`] (issue #10)
11//! - `${VAR}` path resolution → [`crate::paths`] (issue #11)
12//!
13//! The parser here treats `${VAR}` strings as opaque text. Resolving them
14//! is a separate pass once the platform and overrides are known.
15
16mod parse;
17mod schema;
18
19pub use parse::{ConfigError, parse_file, parse_str};
20pub use schema::{
21 Command, Config, DepsGroup, Hook, Link, Meta, PromptField, PromptSection, Step, Template,
22};