use serde::{Deserialize, Serialize};
use strum::{Display, EnumIter, EnumString, IntoStaticStr, VariantNames};
#[derive(
Debug,
Clone,
Copy,
PartialEq,
Eq,
Hash,
Serialize,
Deserialize,
Display,
EnumString,
EnumIter,
IntoStaticStr,
VariantNames,
)]
#[strum(serialize_all = "lowercase")]
#[serde(rename_all = "lowercase")]
#[cfg_attr(feature = "cli", derive(clap::ValueEnum))]
#[cfg_attr(feature = "cli", clap(rename_all = "lowercase"))]
pub enum Tool {
Content,
Screenshot,
Pdf,
Snapshot,
Markdown,
Scrape,
Json,
Links,
Crawl,
}
impl Tool {
pub fn as_path(self) -> &'static str {
self.into()
}
}