#[cfg(feature = "async")]
pub mod r#async;
pub mod core;
pub mod sync;
pub mod attachments;
mod builder;
#[cfg(feature = "cache")]
pub mod cache;
pub mod components;
pub mod config;
pub mod env;
mod errors;
pub mod groups;
pub mod issue_links;
pub mod issues;
pub mod mcp;
#[cfg(feature = "metrics")]
pub mod metrics;
#[cfg(feature = "oauth")]
pub mod oauth;
#[cfg(any(feature = "metrics", feature = "cache"))]
pub mod observability;
pub mod projects;
pub mod relationships;
mod rep;
mod search;
pub mod transitions;
pub mod users;
pub mod versions;
pub use crate::attachments::*;
pub use crate::builder::*;
#[cfg(feature = "cache")]
pub use crate::cache::*;
pub use crate::components::*;
pub use crate::config::*;
pub use crate::core::*; pub use crate::errors::*;
pub use crate::groups::*;
pub use crate::issue_links::*;
pub use crate::issues::*;
#[cfg(feature = "metrics")]
pub use crate::metrics::*;
#[cfg(any(feature = "metrics", feature = "cache"))]
pub use crate::observability::*;
pub use crate::projects::*;
pub use crate::relationships::*;
pub use crate::rep::*;
#[cfg(feature = "async")]
pub use crate::search::AsyncSearch;
pub use crate::search::Search;
pub use crate::transitions::*;
pub use crate::users::*;
pub mod boards;
pub mod resolution;
pub use crate::boards::*;
pub mod sprints;
pub use crate::mcp::*;
pub use crate::sprints::*;
pub use crate::versions::*;
pub use sync::Jira;
#[cfg(feature = "async")]
impl crate::sync::Jira {
pub fn into_async(&self) -> crate::r#async::Jira {
if let Ok(jira) = crate::r#async::Jira::with_core(self.core.clone()) {
jira
} else {
crate::r#async::Jira::new("http://localhost", Credentials::Anonymous).unwrap()
}
}
}