gemini_rust/
lib.rs

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