use crate::hooks::types::{HookType, ScriptLanguage};
pub struct HookTemplate {
pub name: String,
pub description: String,
pub hook_type: HookType,
pub content: String,
pub language: ScriptLanguage,
pub variables: Vec<TemplateVariable>,
}
pub struct TemplateVariable {
pub name: String,
pub description: String,
pub default_value: String,
}
pub fn get_templates() -> Vec<HookTemplate> {
todo!("Implement template retrieval")
}
pub fn get_template_by_name(name: &str) -> Option<HookTemplate> {
todo!("Implement template lookup")
}
pub fn create_from_template(
template: &HookTemplate,
variables: &[(String, String)],
) -> anyhow::Result<String> {
todo!("Implement template instantiation")
}