#![deny(missing_docs)]
#![cfg_attr(docsrs, feature(doc_cfg))]
pub mod eval;
pub mod model;
pub mod nodes;
pub mod requires;
pub mod state;
pub mod template;
pub mod validate;
pub mod walk;
#[cfg(feature = "fs")]
#[cfg_attr(docsrs, doc(cfg(feature = "fs")))]
pub mod store;
#[cfg(feature = "log")]
#[cfg_attr(docsrs, doc(cfg(feature = "log")))]
pub mod log;
pub use eval::{evaluate, Operator};
pub use model::{
CoreNodeType, FlowDefinition, FlowEdge, FlowNode, FlowNodeType, FlowScheduleSpec, FlowSummary,
SavedFlow, ScheduleTrigger, SPEC_VERSION, SUPPORTED_SPEC_VERSIONS,
};
pub use nodes::BRANCH_ERROR_HANDLE;
pub use requires::{
check_requirements, check_tools, derive_requires, AvailablePack, PackRequirement, Requires,
Unmet,
};
pub use state::Variables;
pub use template::resolve as resolve_template;
pub use validate::{validate, ValidationError};
pub use walk::{next_by_handle, walk_bfs};
#[cfg(feature = "fs")]
pub use store::{delete_flow, list_flows, load_flow, save_flow};
#[cfg(feature = "log")]
pub use log::{append_flow_log, load_flow_logs, FlowLogEntry};