pub mod client;
mod models;
pub mod prelude;
pub mod batch;
pub mod cache;
pub mod common;
pub mod embedding;
pub mod files;
pub mod generation;
pub mod safety;
pub mod tools;
pub mod file_search;
#[cfg(test)]
mod tests;
pub use client::Error as ClientError;
pub use client::Gemini;
pub use client::GeminiBuilder;
pub use client::GenerationStream;
pub use client::Model;
pub use models::{Blob, Content, FileData, Message, Modality, Part, Role};
pub use generation::{
builder::ContentBuilder, model::BlockReason, model::Candidate, model::CitationMetadata,
model::CitationSource, model::CountTokensResponse, model::FinishReason,
model::GenerateContentRequest, model::GenerationConfig, model::GenerationResponse,
model::GroundingChunk, model::GroundingMetadata, model::GroundingSegment,
model::GroundingSupport, model::MapsGroundingChunk, model::MediaResolution,
model::MediaResolutionLevel, model::MultiSpeakerVoiceConfig, model::PrebuiltVoiceConfig,
model::PromptFeedback, model::PromptTokenDetails, model::SpeakerVoiceConfig,
model::SpeechConfig, model::ThinkingConfig, model::ThinkingLevel, model::UsageMetadata,
model::VoiceConfig, model::WebGroundingChunk,
};
pub use embedding::{
builder::EmbedBuilder, model::BatchContentEmbeddingResponse, model::BatchEmbedContentsRequest,
model::ContentEmbedding, model::ContentEmbeddingResponse, model::EmbedContentRequest,
model::TaskType,
};
pub use safety::model::{
HarmBlockThreshold, HarmCategory, HarmProbability, SafetyRating, SafetySetting,
};
pub use tools::model::{
CodeExecutionConfig, CodeExecutionOutcome, CodeExecutionResult, CodeLanguage, ExecutableCode,
FunctionCall, FunctionCallingConfig, FunctionCallingMode, FunctionDeclaration,
FunctionResponse, GoogleMapsConfig, LatLng, RetrievalConfig, Tool, ToolConfig,
};
pub use batch::{
builder::BatchBuilder, handle::BatchGenerationResponseItem, handle::BatchHandle,
handle::BatchHandle as Batch, handle::BatchStatus, handle::Error as BatchHandleError,
model::BatchConfig, model::BatchGenerateContentRequest, model::BatchOperation,
model::BatchStats, model::IndividualRequestError, model::RequestMetadata, Error as BatchError,
};
pub use files::{
builder::FileBuilder, handle::FileHandle, model::File, model::FileState, Error as FilesError,
};
pub use cache::{
builder::CacheBuilder, handle::CachedContentHandle, model::CacheExpirationRequest,
model::CacheExpirationResponse, model::CachedContent, model::CreateCachedContentRequest,
};
pub use file_search::{
model::ChunkingConfig, model::CustomMetadata, model::CustomMetadataValue, model::Document,
model::DocumentState, model::FileSearchStore, model::Operation, model::OperationResult,
model::Status, model::StringList, model::WhiteSpaceConfig, DocumentBuilder, DocumentHandle,
FileSearchStoreBuilder, FileSearchStoreHandle, ImportBuilder, OperationHandle, UploadBuilder,
};