//! Configuration for persistent visual index.

use std::path::PathBuf;

/// Configuration for persistent visual index.
#[derive(Debug, Clone)]
pub struct PersistentVisualIndexConfig {
    /// Path to the checkpoint file.
    pub checkpoint_path: PathBuf,
    /// Checkpoint interval in seconds (default: 5 minutes).
    pub checkpoint_interval_secs: u64,
    /// Minimum number of changes before triggering a checkpoint.
    pub min_changes_for_checkpoint: usize,
}

impl Default for PersistentVisualIndexConfig {
    fn default() -> Self {
        Self {
            checkpoint_path: PathBuf::from("visual_index.checkpoint"),
            checkpoint_interval_secs: 300, // 5 minutes
            min_changes_for_checkpoint: 100,
        }
    }
}
