#![doc(html_root_url = "https://docs.rs/agent-framework")]
pub use agent_framework_core::*;
#[cfg(feature = "openai")]
pub use agent_framework_openai as openai;
#[cfg(feature = "anthropic")]
pub use agent_framework_anthropic as anthropic;
#[cfg(feature = "ollama")]
pub use agent_framework_ollama as ollama;
#[cfg(feature = "gemini")]
pub use agent_framework_gemini as gemini;
#[cfg(feature = "mistral")]
pub use agent_framework_mistral as mistral;
#[cfg(feature = "foundry-local")]
pub use agent_framework_foundry_local as foundry_local;
#[cfg(feature = "bedrock")]
pub use agent_framework_bedrock as bedrock;
#[cfg(feature = "github-copilot")]
pub use agent_framework_github_copilot as github_copilot;
#[cfg(feature = "azure")]
pub use agent_framework_azure as azure;
#[cfg(feature = "mcp")]
pub use agent_framework_mcp as mcp;
#[cfg(feature = "a2a")]
pub use agent_framework_a2a as a2a;
#[cfg(feature = "declarative")]
pub use agent_framework_declarative as declarative;
#[cfg(feature = "hosting")]
pub use agent_framework_hosting as hosting;
#[cfg(feature = "redis")]
pub use agent_framework_redis as redis;
#[cfg(feature = "mem0")]
pub use agent_framework_mem0 as mem0;
#[cfg(feature = "foundry")]
pub use agent_framework_foundry as foundry;
#[cfg(feature = "azure-ai-search")]
pub use agent_framework_azure_ai_search as azure_ai_search;
#[cfg(feature = "cosmos")]
pub use agent_framework_cosmos as cosmos;
#[cfg(feature = "copilotstudio")]
pub use agent_framework_copilotstudio as copilotstudio;
#[cfg(feature = "purview")]
pub use agent_framework_purview as purview;
pub mod prelude {
pub use agent_framework_core::prelude::*;
#[cfg(feature = "openai")]
pub use agent_framework_openai::{
OpenAIChatClient, OpenAIChatCompletionClient, OpenAIEmbeddingClient,
};
#[cfg(feature = "anthropic")]
pub use agent_framework_anthropic::{
AnthropicBedrockClient, AnthropicClient, AnthropicFoundryClient, AnthropicVertexClient,
};
#[cfg(feature = "ollama")]
pub use agent_framework_ollama::{OllamaChatClient, OllamaEmbeddingClient};
#[cfg(feature = "gemini")]
pub use agent_framework_gemini::GeminiChatClient;
#[cfg(feature = "mistral")]
pub use agent_framework_mistral::{MistralChatClient, MistralEmbeddingClient};
#[cfg(feature = "foundry-local")]
pub use agent_framework_foundry_local::FoundryLocalChatClient;
#[cfg(feature = "bedrock")]
pub use agent_framework_bedrock::BedrockChatClient;
#[cfg(feature = "github-copilot")]
pub use agent_framework_github_copilot::GitHubCopilotChatClient;
#[cfg(feature = "azure")]
pub use agent_framework_azure::{
AzureOpenAIClient, AzureOpenAIEmbeddingClient, StaticTokenCredential, TokenCredential,
};
#[cfg(feature = "mcp")]
pub use agent_framework_mcp::{McpStdioTool, McpStreamableHttpTool, McpWebsocketTool};
#[cfg(feature = "a2a")]
pub use agent_framework_a2a::{A2AAgent, A2AClient};
#[cfg(feature = "declarative")]
pub use agent_framework_declarative::DeclarativeLoader;
#[cfg(feature = "hosting")]
pub use agent_framework_hosting::AgentHost;
#[cfg(feature = "redis")]
pub use agent_framework_redis::{RedisChatMessageStore, RedisContextProvider};
#[cfg(feature = "mem0")]
pub use agent_framework_mem0::Mem0Provider;
#[cfg(feature = "foundry")]
pub use agent_framework_foundry::{FoundryAgent, FoundryChatClient};
#[cfg(feature = "azure-ai-search")]
pub use agent_framework_azure_ai_search::AzureAISearchProvider;
#[cfg(feature = "cosmos")]
pub use agent_framework_cosmos::CosmosChatMessageStore;
#[cfg(feature = "copilotstudio")]
pub use agent_framework_copilotstudio::CopilotStudioAgent;
#[cfg(feature = "purview")]
pub use agent_framework_purview::{PurviewAgentMiddleware, PurviewChatMiddleware};
}