#![warn(missing_docs)]
#![warn(rust_2018_idioms)]
mod error;
mod lifecycle;
mod loader;
mod manifest;
mod plugin;
mod registry;
mod runtime;
#[cfg(feature = "watch")]
mod watcher;
#[cfg(feature = "metrics-prometheus")]
mod metrics;
pub use error::{Error, Result};
pub use lifecycle::{PluginLifecycle, LifecycleState, LifecycleHooks};
pub use loader::{PluginLoader, LoaderConfig};
pub use manifest::{Manifest, ManifestBuilder, ApiVersion, Dependency};
pub use plugin::{Plugin, PluginInfo, PluginHandle};
pub use registry::{PluginRegistry, RegistryConfig};
pub use runtime::{PluginRuntime, RuntimeConfig};
#[cfg(feature = "watch")]
pub use watcher::{PluginWatcher, WatchConfig, WatchEvent};
#[cfg(feature = "metrics-prometheus")]
pub use metrics::{PluginMetrics, MetricsConfig};
pub use fusabi_host::{
Capabilities, Capability, Limits, Value, Error as HostError,
};
pub const VERSION: &str = env!("CARGO_PKG_VERSION");