#![warn(missing_docs)]
#![warn(rustdoc::missing_crate_level_docs)]
#![deny(unsafe_code)]
#![cfg_attr(docsrs, feature(doc_cfg))]
pub mod errors;
pub mod format;
pub mod identifier;
pub mod messages;
pub mod settings;
pub mod usage;
pub use errors::{Result, SerdesAiError};
pub use format::{format_as_xml, format_as_xml_with_options, XmlFormatError, XmlFormatOptions};
pub use identifier::{now_utc, ConversationId, RunId, ToolCallId};
pub use messages::{
BinaryContent,
BuiltinToolCallPart,
BuiltinToolReturnContent,
BuiltinToolReturnPart,
CodeExecutionResult,
FilePart,
FileSearchResult,
FileSearchResults,
FinishReason,
ModelRequest,
ModelRequestPart,
ModelResponse,
ModelResponsePart,
ModelResponsePartDelta,
ModelResponseStreamEvent,
PartDeltaEvent,
PartEndEvent,
PartStartEvent,
SystemPromptPart,
TextPart,
ThinkingPart,
ToolCallPart,
ToolReturnPart,
UserContent,
UserContentPart,
UserPromptPart,
WebSearchResult,
WebSearchResults,
};
pub use settings::ModelSettings;
pub use usage::{RequestUsage, RunUsage, UsageLimits};
pub mod prelude {
pub use crate::errors::{Result, SerdesAiError};
pub use crate::format::{format_as_xml, format_as_xml_with_options, XmlFormatOptions};
pub use crate::identifier::{
generate_run_id, generate_tool_call_id, now_utc, ConversationId, RunId, ToolCallId,
};
pub use crate::messages::{
BinaryContent,
BuiltinToolCallPart,
BuiltinToolReturnContent,
BuiltinToolReturnPart,
CodeExecutionResult,
FilePart,
FileSearchResult,
FileSearchResults,
FinishReason,
ModelRequest,
ModelRequestPart,
ModelResponse,
ModelResponsePart,
ModelResponsePartDelta,
ModelResponseStreamEvent,
SystemPromptPart,
TextPart,
ThinkingPart,
ToolCallArgs,
ToolCallPart,
ToolReturnPart,
UserContent,
UserContentPart,
UserPromptPart,
WebSearchResult,
WebSearchResults,
};
pub use crate::settings::ModelSettings;
pub use crate::usage::{RequestUsage, RunUsage, UsageLimits};
}