1#![deny(missing_docs)]
2pub mod agent_card;
19pub mod convert;
21pub mod error;
23pub mod jsonrpc;
25pub mod params;
27pub mod proto;
29pub mod push_notification;
31pub mod streaming;
33pub mod task;
35pub mod types;
37
38#[cfg(feature = "client")]
41pub mod client;
42
43#[cfg(feature = "server")]
46pub mod server;
47
48pub use agent_card::{
50 AgentCapabilities, AgentCard, AgentCardSignature, AgentExtension, AgentInterface,
51 AgentProvider, AgentSkill, ApiKeySecurityScheme, AuthorizationCodeOAuthFlow,
52 ClientCredentialsOAuthFlow, DeviceCodeOAuthFlow, HttpAuthSecurityScheme, ImplicitOAuthFlow,
53 MutualTlsSecurityScheme, OAuth2SecurityScheme, OAuthFlows, OpenIdConnectSecurityScheme,
54 PasswordOAuthFlow, SecurityRequirement, SecurityScheme,
55};
56pub use error::A2aError;
57pub use jsonrpc::{JsonRpcRequest, JsonRpcResponse, RequestId};
58pub use params::*;
59pub use push_notification::{AuthenticationInfo, TaskPushNotificationConfig};
60pub use streaming::{
61 SendMessageResponse, StreamResponse, TaskArtifactUpdateEvent, TaskStatusUpdateEvent,
62};
63pub use task::{Task, TaskState, TaskStatus};
64pub use types::{Artifact, Message, Part, Role};
65
66#[cfg(feature = "client")]
67pub use client::{A2aClient, Transport};
68
69#[cfg(feature = "server")]
70pub use server::{A2aHandler, A2aServer};