1use super::wire::present_nullable;
6use crate::Rest;
7use serde::{Deserialize, Serialize};
8
9#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
11#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
12#[derive(gproxy_protocol_macros::DeclaredFields)]
13pub struct McpListToolsInProgress {
14 pub event_id: String,
15 pub item_id: String,
16 #[serde(rename = "type")]
17 pub type_: McpListToolsInProgressType,
18 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
19 pub rest: Rest,
20}
21
22#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
24#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
25#[derive(gproxy_protocol_macros::DeclaredFields)]
26pub struct McpListToolsCompleted {
27 pub event_id: String,
28 pub item_id: String,
29 #[serde(rename = "type")]
30 pub type_: McpListToolsCompletedType,
31 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
32 pub rest: Rest,
33}
34
35#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
37#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
38#[derive(gproxy_protocol_macros::DeclaredFields)]
39pub struct McpListToolsFailed {
40 pub event_id: String,
41 pub item_id: String,
42 #[serde(rename = "type")]
43 pub type_: McpListToolsFailedType,
44 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
45 pub rest: Rest,
46}
47
48#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
50#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
51#[derive(gproxy_protocol_macros::DeclaredFields)]
52pub struct ResponseMcpCallArgumentsDelta {
53 pub delta: String,
54 pub event_id: String,
55 pub item_id: String,
56 pub output_index: i64,
57 pub response_id: String,
58 #[serde(rename = "type")]
59 pub type_: ResponseMcpCallArgumentsDeltaType,
60 #[serde(
61 default,
62 deserialize_with = "present_nullable",
63 skip_serializing_if = "Option::is_none"
64 )]
65 pub obfuscation: Option<Option<String>>,
66 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
67 pub rest: Rest,
68}
69
70#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
72#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
73#[derive(gproxy_protocol_macros::DeclaredFields)]
74pub struct ResponseMcpCallArgumentsDone {
75 pub arguments: String,
76 pub event_id: String,
77 pub item_id: String,
78 pub output_index: i64,
79 pub response_id: String,
80 #[serde(rename = "type")]
81 pub type_: ResponseMcpCallArgumentsDoneType,
82 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
83 pub rest: Rest,
84}
85
86#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
88#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
89#[derive(gproxy_protocol_macros::DeclaredFields)]
90pub struct ResponseMcpCallInProgress {
91 pub event_id: String,
92 pub item_id: String,
93 pub output_index: i64,
94 #[serde(rename = "type")]
95 pub type_: ResponseMcpCallInProgressType,
96 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
97 pub rest: Rest,
98}
99
100#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
102#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
103#[derive(gproxy_protocol_macros::DeclaredFields)]
104pub struct ResponseMcpCallCompleted {
105 pub event_id: String,
106 pub item_id: String,
107 pub output_index: i64,
108 #[serde(rename = "type")]
109 pub type_: ResponseMcpCallCompletedType,
110 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
111 pub rest: Rest,
112}
113
114#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
116#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
117#[derive(gproxy_protocol_macros::DeclaredFields)]
118pub struct ResponseMcpCallFailed {
119 pub event_id: String,
120 pub item_id: String,
121 pub output_index: i64,
122 #[serde(rename = "type")]
123 pub type_: ResponseMcpCallFailedType,
124 #[serde(default, flatten, skip_serializing_if = "serde_json::Map::is_empty")]
125 pub rest: Rest,
126}
127
128#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
129#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
130#[derive(gproxy_protocol_macros::DeclaredFields)]
131pub enum McpListToolsInProgressType {
132 #[serde(rename = "mcp_list_tools.in_progress")]
133 McpListToolsInProgress,
134}
135
136#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
137#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
138#[derive(gproxy_protocol_macros::DeclaredFields)]
139pub enum McpListToolsCompletedType {
140 #[serde(rename = "mcp_list_tools.completed")]
141 McpListToolsCompleted,
142}
143
144#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
145#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
146#[derive(gproxy_protocol_macros::DeclaredFields)]
147pub enum McpListToolsFailedType {
148 #[serde(rename = "mcp_list_tools.failed")]
149 McpListToolsFailed,
150}
151
152#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
153#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
154#[derive(gproxy_protocol_macros::DeclaredFields)]
155pub enum ResponseMcpCallArgumentsDeltaType {
156 #[serde(rename = "response.mcp_call_arguments.delta")]
157 ResponseMcpCallArgumentsDelta,
158}
159
160#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
161#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
162#[derive(gproxy_protocol_macros::DeclaredFields)]
163pub enum ResponseMcpCallArgumentsDoneType {
164 #[serde(rename = "response.mcp_call_arguments.done")]
165 ResponseMcpCallArgumentsDone,
166}
167
168#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
169#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
170#[derive(gproxy_protocol_macros::DeclaredFields)]
171pub enum ResponseMcpCallInProgressType {
172 #[serde(rename = "response.mcp_call.in_progress")]
173 ResponseMcpCallInProgress,
174}
175
176#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
177#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
178#[derive(gproxy_protocol_macros::DeclaredFields)]
179pub enum ResponseMcpCallCompletedType {
180 #[serde(rename = "response.mcp_call.completed")]
181 ResponseMcpCallCompleted,
182}
183
184#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
185#[cfg_attr(not(feature = "exhaustive"), non_exhaustive)]
186#[derive(gproxy_protocol_macros::DeclaredFields)]
187pub enum ResponseMcpCallFailedType {
188 #[serde(rename = "response.mcp_call.failed")]
189 ResponseMcpCallFailed,
190}