Skip to main content

edge_completions/
lib.rs

1#![doc = include_str!("../README.md")]
2#![forbid(unsafe_code)]
3#![deny(missing_docs)]
4#![warn(clippy::missing_errors_doc, clippy::missing_panics_doc)]
5
6mod client;
7mod error;
8mod types;
9
10/// Compile-time request states, exhaustive output handling, and typed tool proofs.
11///
12/// This module contains documentation only. The guide below covers the state
13/// graph, examples, and the boundary between compile-time and runtime validation.
14#[doc = include_str!("../docs/TYPE_SYSTEM.md")]
15pub mod type_system {}
16
17/// Native async dispatch, explicit type erasure, cancellation, and deadlines.
18///
19/// This module contains documentation only.
20#[doc = include_str!("../docs/ASYNC.md")]
21pub mod async_model {}
22
23pub use client::{
24    ACCOUNT_ID_ENV, API_TOKEN_ENV, AccountId, ApiBaseUrl, ApiToken, BoxChatFuture, ChatCompletions,
25    Client, ClientBuilder, DynChatCompletions, GatewayId, RequestTimeout, ResponseSizeLimit,
26};
27pub use error::{Error, InvalidConfiguration, ProviderErrorCode, ProviderFailure, ToolError};
28pub use types::request_state;
29pub use types::{
30    AssistantMessage, AssistantOutput, ChatChoice, ChatCompletion, ChatMessage, ChatRequest,
31    ChatRequestBuilder, FinishReason, FunctionTool, MaxTokens, ModelId, Temperature, ToolCall,
32    ToolChoice, ToolDefinition, Usage, ValidatedToolCall,
33};