//! Convenient re-exports for common llmrust usage.
//!
//! ```rust
//! use llmrust::prelude::*;
//! ```
//!
//! This brings the most frequently used types into scope without
//! needing individual `use` statements.

pub use crate::providers::retry::RetryProvider;
#[cfg(feature = "proxy")]
pub use crate::proxy;
pub use crate::router::{Router, RoutingStrategy};
pub use crate::types::{
    ChatRequest, ChatResponse, Content, ContentPart, Embedding, EmbeddingRequest,
    EmbeddingResponse, EmbeddingUsage, FunctionCall, FunctionDef, ImageUrl, LogProbs, Message,
    ResponseFormat, Role, StreamChunk, TokenLogProb, Tool, ToolCall, ToolChoice, TopLogProb, Usage,
};
pub use crate::{LlmError, LmrsClient, Provider, ProviderConfig, Result};
