gemini_rust/
lib.rs

1//! # gemini-rust
2//!
3//! A Rust client library for Google's Gemini 2.0 API.
4
5mod batch_builder;
6mod client;
7mod content_builder;
8mod embed_builder;
9mod error;
10mod models;
11mod tools;
12
13pub use batch_builder::BatchBuilder;
14pub use client::Gemini;
15pub use content_builder::ContentBuilder;
16pub use error::Error;
17pub use models::{
18    BatchConfig, BatchMetadata, BatchRequestItem, BatchStats, Blob, Candidate, CitationMetadata,
19    Content, FunctionCallingMode, GenerateContentRequest, GenerationConfig, GenerationResponse,
20    InputConfig, Message, Part, PromptTokenDetails, RequestMetadata, RequestsContainer, Role,
21    SafetyRating, TaskType, ThinkingConfig, UsageMetadata,
22};
23
24pub use tools::{FunctionCall, FunctionDeclaration, FunctionParameters, PropertyDetails, Tool};
25
26/// Result type for this crate
27pub type Result<T> = std::result::Result<T, Error>;