use std::path::PathBuf;
use crate::folder::sync::config::FolderSyncStrategy;
#[cfg(feature = "derive")]
use crate::serde::serde_deprecated;
#[cfg(feature = "derive")]
serde_deprecated!(strategy, "strategy.sync", "folder.sync.filter");
#[derive(Clone, Debug, Default, Eq, PartialEq)]
#[cfg_attr(
feature = "derive",
derive(serde::Serialize, serde::Deserialize),
serde(rename_all = "kebab-case")
)]
pub struct SyncConfig {
pub enable: Option<bool>,
pub dir: Option<PathBuf>,
#[deprecated(since = "0.22.0", note = "use FolderConfig::sync::filter instead")]
#[cfg_attr(
feature = "derive",
serde(default, skip_serializing, deserialize_with = "strategy_deprecated")
)]
pub strategy: Option<FolderSyncStrategy>,
}