pub mod builder_capabilities; mod builders; use std::{path::PathBuf, sync::Arc}; use async_trait::async_trait; use crate::schema::models::Action; #[async_trait] pub trait RunnableBin { async fn run(&self) -> eyre::Result<()>; } pub type DynRunnableBin = Arc; #[async_trait] pub trait Builder { async fn build(&self, action_path: PathBuf, action: Action) -> eyre::Result; } pub type DynBuilder = Arc;