1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3#![warn(missing_docs)]
4
5pub mod budget;
6pub mod error;
7pub mod fleet;
8pub mod model;
9pub mod observe;
10pub mod persistence;
11pub mod pricing;
12#[cfg(feature = "ratelimit")]
13#[cfg_attr(docsrs, doc(cfg(feature = "ratelimit")))]
14pub mod ratelimit;
15#[cfg(feature = "tokens")]
16#[cfg_attr(docsrs, doc(cfg(feature = "tokens")))]
17pub mod tokens;
18pub mod usage;
19
20pub use budget::{AgentBudget, BudgetEnvelope, BudgetSnapshot, ChargeReceipt, SpendRecord};
21pub use error::BudgetError;
22pub use fleet::{FleetAllocator, FleetBudget};
23pub use model::{ModelCascade, ModelTier};
24pub use persistence::BudgetStore;
25pub use pricing::{ModelPrice, PriceTable};
26pub use usage::Usage;