#[cfg(any(feature = "client", all(feature = "server", feature = "openapi")))]
pub mod input_validation;
#[cfg(any(feature = "client", all(feature = "server", feature = "openapi")))]
pub mod openapi_spec;
#[cfg(feature = "client")]
pub mod forward;
#[cfg(feature = "client")]
pub mod from_jsonschema;
#[cfg(all(feature = "client", feature = "mcp"))]
pub mod from_mcp;
#[cfg(all(feature = "client", feature = "openapi"))]
pub mod from_openapi;
#[cfg(all(feature = "client", feature = "wss"))]
pub mod from_wss;
#[cfg(all(feature = "server", feature = "mcp"))]
pub mod to_mcp;
#[cfg(all(feature = "server", feature = "openapi"))]
pub mod to_openapi;
#[cfg(feature = "client")]
pub use forward::{HttpAuthScheme, HttpServiceConfig};
#[cfg(feature = "client")]
pub use from_jsonschema::FromJsonSchema;
#[cfg(all(feature = "client", feature = "openapi"))]
pub use from_openapi::FromOpenAPI;
#[cfg(any(feature = "client", all(feature = "server", feature = "openapi")))]
pub use openapi_spec::OpenAPISpec;
#[cfg(all(feature = "server", feature = "openapi"))]
pub use to_openapi::to_openapi;
#[cfg(all(feature = "client", feature = "mcp"))]
pub use from_mcp::FromMCP;
#[cfg(all(feature = "client", feature = "wss"))]
pub use from_wss::FromWss;
#[cfg(all(feature = "server", feature = "mcp"))]
pub use to_mcp::{to_mcp_service, ToMcpGateway, ToMcpService};