openapi_nexus_config/
config.rs

1//! Configuration structures for OpenAPI Nexus
2
3use serde::Deserialize;
4
5use crate::global_config::GlobalConfig;
6use crate::typescript_config::TypeScriptConfig;
7
8/// Configuration file structure
9#[derive(Debug, Clone, Deserialize, Default)]
10pub struct ConfigFile {
11    /// Global settings
12    #[serde(default)]
13    pub global: GlobalConfig,
14    /// TypeScript-specific settings
15    #[serde(default)]
16    pub typescript: TypeScriptConfig,
17}
18
19/// Fully resolved configuration with all defaults applied
20#[derive(Debug, Clone)]
21pub struct ResolvedConfig {
22    /// Global settings
23    pub global: GlobalConfig,
24    /// TypeScript settings (if language is TypeScript)
25    pub typescript: TypeScriptConfig,
26}