#![forbid(unsafe_code)]
#[cfg(any(
feature = "anthropic",
feature = "openai",
feature = "openai-codex",
feature = "gemini",
feature = "vertex",
feature = "cloudflare",
))]
pub mod attachments;
pub mod impls;
pub mod model_capabilities;
pub mod provider;
pub mod refresh;
pub mod router;
pub mod search;
pub mod streaming;
pub mod structured;
pub use provider::{LlmProvider, StructuredOutputSupport, collect_stream};
pub use refresh::{RefreshingProvider, is_unauthorized_error};
pub use router::{ModelRouter, ModelTier, TaskComplexity};
pub use streaming::{StreamAccumulator, StreamBox, StreamDelta};
pub use structured::{StructuredConfig, StructuredOutput, StructuredOutputError, run_structured};
pub use agent_sdk_foundation::llm::*;
#[cfg(feature = "cloudflare")]
pub use impls::CloudflareAIGatewayProvider;
#[cfg(feature = "gemini")]
pub use impls::GeminiProvider;
#[cfg(feature = "openai-codex")]
pub use impls::OpenAICodexResponsesProvider;
#[cfg(feature = "vertex")]
pub use impls::VertexProvider;
#[cfg(feature = "anthropic")]
pub use impls::{AnthropicProvider, is_oauth_token};
#[cfg(feature = "openai")]
pub use impls::{OpenAIProvider, OpenAIResponsesProvider};
pub use model_capabilities::{
ModelCapabilities, PricePoint, Pricing, SourceStatus, get_model_capabilities,
supported_model_capabilities,
};
pub use search::{BraveSearchProvider, SearchProvider, SearchResponse, SearchResult};