1use ave_core::config::{Config as AveConfig, LoggingConfig, SinkConfig};
2use serde::{Deserialize, Serialize};
3use std::path::PathBuf;
4
5use crate::{auth::AuthConfig, http::HttpConfig};
6
7#[derive(Deserialize, Serialize, Debug, Clone)]
8#[serde(default)]
9pub struct Config {
10 pub node: AveConfig,
12 pub keys_path: PathBuf,
14 pub logging: LoggingConfig,
16 pub sink: SinkConfig,
18 pub auth: AuthConfig,
20 pub http: HttpConfig,
22}
23
24impl Default for Config {
25 fn default() -> Self {
26 Self {
27 node: Default::default(),
28 keys_path: PathBuf::from("keys"),
29 logging: Default::default(),
30 sink: Default::default(),
31 auth: Default::default(),
32 http: Default::default(),
33 }
34 }
35}