1mod artifact;
4mod capability;
5mod capability_catalog;
6mod circuit;
7mod content;
8mod error;
9mod invocation;
10mod media;
11mod request;
12mod response;
13mod retry;
14mod router;
15mod runtime_profile;
16mod stream;
17mod structured;
18
19pub use capability::{
20 CapabilityAudit, CapabilityAuditEntry, FeatureSupport, ModelCapabilities, SupportLevel,
21};
22pub use capability_catalog::ModelCapabilityCatalog;
23pub use circuit::{
24 CircuitBreakerConfig, CircuitBreakerConfigError, CircuitState, ModelRouteHealth, RouterClock,
25 SystemRouterClock,
26};
27pub use content::{
28 Citation, ContentPart, MediaSource, Message, ProviderData, ReasoningPart, Role, ToolCall,
29 ToolResult,
30};
31pub use error::{ModelError, ModelErrorKind};
32pub use invocation::{Model, ModelCallContext, ModelEventStream, ModelFuture, ProviderModel};
33pub use media::{
34 GeneratedImage, ImageFormat, ImageGenerationModel, ImageGenerationRequest,
35 ImageGenerationResponse, SpeechFormat, SpeechModel, SpeechRequest, SpeechResponse,
36 TranscriptionModel, TranscriptionRequest, TranscriptionResponse,
37};
38pub use request::{
39 FeaturePolicy, GenerationOptions, ModelRef, ModelRequest, OutputFormat, ProviderToolSpec,
40 ResponseMode, ToolChoice, ToolSpec,
41};
42pub use response::{FinishReason, ModelResponse, ModelUsage, ModelWarning};
43pub use retry::{
44 ModelRetryPolicy, ModelRetryPolicyError, RetryJitter, RouterSleepFuture, RouterSleeper,
45 SystemRouterSleeper,
46};
47pub use router::{
48 ModelFallbackPolicy, ModelRoute, ModelRouter, ModelRouterBuildError, ModelRouterBuilder,
49};
50pub use runtime_profile::{
51 BatchProfile, InteractiveProfile, ProductionProfile, ProviderRuntimeProfile,
52 RuntimeProfilePreset,
53};
54pub use stream::{ContentBlockKind, ModelStreamAccumulator, ModelStreamEvent, ProviderEvent};
55pub use structured::{StructuredOutputError, StructuredOutputErrorKind};
56
57pub type ExtensionMap = std::collections::BTreeMap<String, serde_json::Value>;
59pub use artifact::{
60 Artifact, ArtifactError, ArtifactFuture, ArtifactPage, ArtifactRef, ArtifactResolvingModel,
61 ArtifactScope, ArtifactStore, ArtifactWrite, DEFAULT_MAX_ARTIFACT_BYTES, InMemoryArtifactStore,
62 MAX_ARTIFACT_IDEMPOTENCY_KEY_BYTES, MAX_ARTIFACT_NAME_BYTES, MAX_ARTIFACT_PAGE_SIZE,
63};