1#![deny(missing_docs)]
8#![forbid(unsafe_code)]
9
10mod accounting;
11mod api;
12mod error;
13mod model;
14
15pub use accounting::{
16 GroupedUsage, LimitPeriod, LimitStatus, SpendingLimits, UsageBreakdown, UsageRecord,
17 UsageTotals, UsageWindow,
18};
19pub use api::Gemini;
20pub use error::{Error, Result};
21pub use model::{
22 AspectRatio, CompletionStatus, CostAccuracy, CostBreakdown, GeneratedImage, GenerationOptions,
23 GroundedSearchRequest, GroundedSearchResponse, InferenceRequest, InferenceResponse, MediaInput,
24 MediaKind, Modality, ModalityTokens, Money, MultimodalRequest, NanoBananaProRequest,
25 ServiceTier, StructuredOutput, TextModel, ThinkingLevel, TokenUsage, WebSource,
26};
27
28pub const GEMINI_31_FLASH_LITE: &str = "gemini-3.1-flash-lite";
30pub const GEMINI_31_PRO: &str = "gemini-3.1-pro-preview";
32pub const NANO_BANANA_PRO: &str = "gemini-3-pro-image";