use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, Default)]
#[non_exhaustive]
pub enum GrepOutputMode {
#[default]
Content,
FilesWithMatches,
Count,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[allow(clippy::struct_excessive_bools)]
pub struct GrepOptions {
pub path: Option<String>,
pub after_context: u32,
pub before_context: u32,
pub context: Option<u32>,
pub case_insensitive: bool,
pub glob: Option<String>,
pub file_type: Option<String>,
pub max_matches: Option<usize>,
pub output_mode: GrepOutputMode,
pub multiline: bool,
pub line_numbers: bool,
pub invert: bool,
pub fixed_string: bool,
}