crabllm-core 0.0.22

Core types for the crabllm LLM API gateway
Documentation
pub use config::{
    GatewayConfig, KeyConfig, KeyRateLimit, PricingConfig, ProviderConfig, ProviderKind,
    StorageConfig,
};
pub use error::{ApiError, ApiErrorBody, Error};
pub use extension::{Extension, ExtensionError, RequestContext};
pub use model_info::ModelInfo;
pub use provider::{BoxStream, ByteStream, Provider};
pub use retrying::Retrying;
pub use storage::{BoxFuture, KvPairs, PREFIX_LEN, Prefix, Storage, storage_key};
pub use types::ir;
pub use types::{
    AnthropicContent, AnthropicContentBlock, AnthropicMessage, AnthropicMessages, AnthropicRequest,
    AnthropicResponse, AnthropicStreamEvent, AnthropicSystem, AnthropicTool, AnthropicUsage,
    AudioSpeechRequest, BlockDelta, ChatCompletionChunk, ChatCompletionRequest,
    ChatCompletionResponse, Choice, ChunkChoice, CompletionTokensDetails, ContentBlock,
    DEFAULT_MAX_TOKENS, Delta, Embedding, EmbeddingInput, EmbeddingRequest, EmbeddingResponse,
    EmbeddingUsage, FinishReason, FunctionCall, FunctionCallDelta, FunctionDef, GeminiCandidate,
    GeminiContent, GeminiFinishReason, GeminiFunctionCall, GeminiFunctionDecl,
    GeminiFunctionResponse, GeminiPart, GeminiRequest, GeminiResponse, GeminiRole, GeminiToolDef,
    GeminiUsage, GenerationConfig, ImageRequest, Message, MessageDeltaPayload, Model, ModelList,
    MultipartField, OpenAiUsage, Role, Stop, ThinkingConfig, Tool, ToolCall, ToolCallDelta,
    ToolChoice, ToolResultContent, ToolType,
};
pub use usage::Usage;

pub mod codec;
mod config;
mod error;
mod extension;
pub mod json;
mod model_info;
#[cfg(feature = "openapi")]
mod openapi;
mod provider;
mod retrying;
mod storage;
mod types;
mod usage;