Skip to main content

tokn_endpoint_messages/
lib.rs

1//! Typed wire schemas for the Anthropic Messages API.
2
3pub mod content;
4pub mod event;
5pub mod message;
6pub mod parameters;
7pub mod request;
8pub mod response;
9pub mod usage;
10
11#[cfg(debug_assertions)]
12mod extra_keys_impls;
13
14pub use content::{ContentBlock, ContentBlockDelta};
15pub use event::MessagesEvent;
16pub use message::Message;
17pub use parameters::{MessagesExtraParameters, MessagesRequestParameters};
18pub use request::{MessagesRequest, MessagesToolChoice, MessagesToolDef, SystemPrompt};
19pub use response::MessagesResponse;
20pub use usage::MessagesUsage;
21
22use tokn_endpoint_core::{Endpoint, EndpointEvent, EndpointItem, EndpointRequest, EndpointResponse};
23
24impl EndpointRequest for MessagesRequest {
25  const ENDPOINT: Endpoint = Endpoint::Messages;
26}
27
28impl EndpointResponse for MessagesResponse {
29  const ENDPOINT: Endpoint = Endpoint::Messages;
30}
31
32impl EndpointItem for Message {
33  const ENDPOINT: Endpoint = Endpoint::Messages;
34}
35
36impl EndpointEvent for MessagesEvent {
37  const ENDPOINT: Endpoint = Endpoint::Messages;
38
39  fn event_name(&self) -> &str {
40    self.kind()
41  }
42}