claude_agent/types/
mod.rs

1//! Core types for the Claude Agent SDK.
2
3pub mod citations;
4pub mod content;
5pub mod document;
6mod message;
7mod response;
8pub mod search;
9mod tool;
10
11pub use crate::models::{DEFAULT_COMPACT_THRESHOLD, context_window};
12pub use citations::{
13    CharLocationCitation, Citation, CitationsConfig, ContentBlockLocationCitation,
14    PageLocationCitation, SearchResultLocationCitation,
15};
16pub use content::{
17    ContentBlock, ImageSource, ServerToolError, ServerToolUseBlock, TextBlock, ThinkingBlock,
18    ToolResultBlock, ToolResultContent, ToolResultContentBlock, ToolUseBlock, WebFetchResultItem,
19    WebFetchToolResultBlock, WebFetchToolResultContent, WebSearchResultItem,
20    WebSearchToolResultBlock, WebSearchToolResultContent,
21};
22pub use document::{DocumentBlock, DocumentContentBlock, DocumentSource};
23pub use message::{CacheControl, CacheTtl, CacheType, Message, Role, SystemBlock, SystemPrompt};
24pub use response::{
25    ApiResponse, CompactResult, ContentDelta, MessageDeltaData, MessageStartData, ModelUsage,
26    PermissionDenial, ServerToolUse, ServerToolUseUsage, StopReason, StreamError, StreamEvent,
27    TokenUsage, Usage,
28};
29pub use search::{SearchResultBlock, SearchResultContentBlock};
30pub use tool::{
31    ServerTool, ToolDefinition, ToolError, ToolInput, ToolOutput, ToolOutputBlock, ToolReference,
32    ToolResult, ToolSearchErrorCode, ToolSearchResult, ToolSearchResultContent, ToolSearchTool,
33    ToolSearchToolResult, UserLocation, WebFetchTool, WebSearchTool,
34};