pub mod exporter;
pub mod loader;
pub mod ref_resolver;
pub mod strict;
pub mod validator;
pub use exporter::{ExportOptions, ExportProfile, SchemaExporter};
pub use loader::{SchemaLoader, SchemaStrategy};
pub use ref_resolver::RefResolver;
pub use strict::to_strict_schema;
pub use validator::SchemaValidator;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SchemaDefinition {
pub module_id: String,
pub description: String,
pub input_schema: serde_json::Value,
pub output_schema: serde_json::Value,
#[serde(skip_serializing_if = "Option::is_none")]
pub error_schema: Option<serde_json::Value>,
#[serde(skip_serializing_if = "Option::is_none")]
pub definitions: Option<serde_json::Value>,
#[serde(skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}