@artinet/sdk 0.5.16 → 0.5.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/README.md +108 -58
  2. package/dist/browser/browser.d.ts +9 -0
  3. package/dist/browser/browser.js +10 -0
  4. package/dist/browser/client/a2a-client.d.ts +126 -0
  5. package/dist/browser/client/a2a-client.js +221 -0
  6. package/dist/browser/client/index.d.ts +1 -0
  7. package/dist/browser/client/index.js +1 -0
  8. package/dist/browser/services/a2a/helpers/message-builder.d.ts +12 -0
  9. package/dist/browser/services/a2a/helpers/message-builder.js +61 -0
  10. package/dist/browser/transport/rpc/parser.d.ts +15 -0
  11. package/dist/browser/transport/rpc/parser.js +48 -0
  12. package/dist/browser/transport/rpc/rpc-client.d.ts +80 -0
  13. package/dist/browser/transport/rpc/rpc-client.js +189 -0
  14. package/dist/browser/transport/streaming/event-stream.d.ts +25 -0
  15. package/dist/browser/transport/streaming/event-stream.js +99 -0
  16. package/dist/browser/types/ext.d.ts +13 -0
  17. package/dist/browser/types/ext.js +10 -0
  18. package/dist/browser/types/index.d.ts +4 -0
  19. package/dist/browser/types/index.js +4 -0
  20. package/dist/browser/types/interfaces/client.d.ts +135 -0
  21. package/dist/browser/types/interfaces/client.js +5 -0
  22. package/dist/browser/types/interfaces/index.d.ts +3 -0
  23. package/dist/browser/types/interfaces/index.js +3 -0
  24. package/dist/browser/types/interfaces/services/a2a/builder.d.ts +37 -0
  25. package/dist/browser/types/interfaces/services/a2a/builder.js +5 -0
  26. package/dist/browser/types/interfaces/services/a2a/context.d.ts +162 -0
  27. package/dist/browser/types/interfaces/services/a2a/context.js +5 -0
  28. package/dist/browser/types/interfaces/services/a2a/engine.d.ts +7 -0
  29. package/dist/browser/types/interfaces/services/a2a/engine.js +5 -0
  30. package/dist/browser/types/interfaces/services/a2a/index.d.ts +5 -0
  31. package/dist/browser/types/interfaces/services/a2a/index.js +5 -0
  32. package/dist/browser/types/interfaces/services/a2a/legacy.d.ts +93 -0
  33. package/dist/browser/types/interfaces/services/a2a/legacy.js +5 -0
  34. package/dist/browser/types/interfaces/services/a2a/service.d.ts +413 -0
  35. package/dist/browser/types/interfaces/services/a2a/service.js +5 -0
  36. package/dist/browser/types/interfaces/services/core/context/command.d.ts +25 -0
  37. package/dist/browser/types/interfaces/services/core/context/command.js +5 -0
  38. package/dist/browser/types/interfaces/services/core/context/context.d.ts +207 -0
  39. package/dist/browser/types/interfaces/services/core/context/context.js +5 -0
  40. package/dist/browser/types/interfaces/services/core/context/index.d.ts +3 -0
  41. package/dist/browser/types/interfaces/services/core/context/index.js +3 -0
  42. package/dist/browser/types/interfaces/services/core/context/types.d.ts +11 -0
  43. package/dist/browser/types/interfaces/services/core/context/types.js +5 -0
  44. package/dist/browser/types/interfaces/services/core/execution/engine.d.ts +106 -0
  45. package/dist/browser/types/interfaces/services/core/execution/engine.js +5 -0
  46. package/dist/browser/types/interfaces/services/core/execution/environment.d.ts +11 -0
  47. package/dist/browser/types/interfaces/services/core/execution/environment.js +5 -0
  48. package/dist/browser/types/interfaces/services/core/execution/execute.d.ts +7 -0
  49. package/dist/browser/types/interfaces/services/core/execution/execute.js +5 -0
  50. package/dist/browser/types/interfaces/services/core/execution/index.d.ts +3 -0
  51. package/dist/browser/types/interfaces/services/core/execution/index.js +3 -0
  52. package/dist/browser/types/interfaces/services/core/index.d.ts +4 -0
  53. package/dist/browser/types/interfaces/services/core/index.js +4 -0
  54. package/dist/browser/types/interfaces/services/core/managers/cancellation.d.ts +9 -0
  55. package/dist/browser/types/interfaces/services/core/managers/cancellation.js +5 -0
  56. package/dist/browser/types/interfaces/services/core/managers/connection.d.ts +9 -0
  57. package/dist/browser/types/interfaces/services/core/managers/connection.js +5 -0
  58. package/dist/browser/types/interfaces/services/core/managers/context.d.ts +17 -0
  59. package/dist/browser/types/interfaces/services/core/managers/context.js +5 -0
  60. package/dist/browser/types/interfaces/services/core/managers/event.d.ts +328 -0
  61. package/dist/browser/types/interfaces/services/core/managers/event.js +5 -0
  62. package/dist/browser/types/interfaces/services/core/managers/index.d.ts +6 -0
  63. package/dist/browser/types/interfaces/services/core/managers/index.js +6 -0
  64. package/dist/browser/types/interfaces/services/core/managers/stream.d.ts +217 -0
  65. package/dist/browser/types/interfaces/services/core/managers/stream.js +5 -0
  66. package/dist/browser/types/interfaces/services/core/managers/task.d.ts +9 -0
  67. package/dist/browser/types/interfaces/services/core/managers/task.js +1 -0
  68. package/dist/browser/types/interfaces/services/core/service.d.ts +115 -0
  69. package/dist/browser/types/interfaces/services/core/service.js +5 -0
  70. package/dist/browser/types/interfaces/services/index.d.ts +4 -0
  71. package/dist/browser/types/interfaces/services/index.js +4 -0
  72. package/dist/browser/types/interfaces/services/mcp/index.d.ts +1 -0
  73. package/dist/browser/types/interfaces/services/mcp/index.js +1 -0
  74. package/dist/browser/types/interfaces/services/mcp/service.d.ts +49 -0
  75. package/dist/browser/types/interfaces/services/mcp/service.js +5 -0
  76. package/dist/browser/types/interfaces/services/protocol.d.ts +33 -0
  77. package/dist/browser/types/interfaces/services/protocol.js +34 -0
  78. package/dist/browser/types/interfaces/storage.d.ts +8 -0
  79. package/dist/browser/types/interfaces/storage.js +5 -0
  80. package/dist/browser/types/schemas/a2a/agent.d.ts +2583 -0
  81. package/dist/browser/types/schemas/a2a/agent.js +323 -0
  82. package/dist/browser/types/schemas/a2a/auth.d.ts +908 -0
  83. package/dist/browser/types/schemas/a2a/auth.js +283 -0
  84. package/dist/browser/types/schemas/a2a/error.d.ts +396 -0
  85. package/dist/browser/types/schemas/a2a/error.js +163 -0
  86. package/dist/browser/types/schemas/a2a/index.d.ts +11 -0
  87. package/dist/browser/types/schemas/a2a/index.js +11 -0
  88. package/dist/browser/types/schemas/a2a/kind.d.ts +11 -0
  89. package/dist/browser/types/schemas/a2a/kind.js +20 -0
  90. package/dist/browser/types/schemas/a2a/message.d.ts +10343 -0
  91. package/dist/browser/types/schemas/a2a/message.js +130 -0
  92. package/dist/browser/types/schemas/a2a/notification.d.ts +1517 -0
  93. package/dist/browser/types/schemas/a2a/notification.js +203 -0
  94. package/dist/browser/types/schemas/a2a/parameters.d.ts +956 -0
  95. package/dist/browser/types/schemas/a2a/parameters.js +241 -0
  96. package/dist/browser/types/schemas/a2a/protocol.d.ts +14363 -0
  97. package/dist/browser/types/schemas/a2a/protocol.js +59 -0
  98. package/dist/browser/types/schemas/a2a/rpc.d.ts +182 -0
  99. package/dist/browser/types/schemas/a2a/rpc.js +126 -0
  100. package/dist/browser/types/schemas/a2a/task.d.ts +5886 -0
  101. package/dist/browser/types/schemas/a2a/task.js +134 -0
  102. package/dist/browser/types/schemas/a2a/transport.d.ts +31 -0
  103. package/dist/browser/types/schemas/a2a/transport.js +28 -0
  104. package/dist/browser/types/schemas/index.d.ts +1 -0
  105. package/dist/browser/types/schemas/index.js +1 -0
  106. package/dist/browser/types/utils/index.d.ts +1 -0
  107. package/dist/browser/types/utils/index.js +1 -0
  108. package/dist/browser/types/utils/transform.d.ts +64 -0
  109. package/dist/browser/types/utils/transform.js +35 -0
  110. package/dist/browser/utils/common/constants.d.ts +11 -0
  111. package/dist/browser/utils/common/constants.js +38 -0
  112. package/dist/browser/utils/common/errors.d.ts +24 -0
  113. package/dist/browser/utils/common/errors.js +42 -0
  114. package/dist/browser/utils/common/utils.d.ts +9 -0
  115. package/dist/browser/utils/common/utils.js +11 -0
  116. package/dist/browser/utils/logging/index.d.ts +2 -0
  117. package/dist/browser/utils/logging/index.js +2 -0
  118. package/dist/browser/utils/logging/log.d.ts +33 -0
  119. package/dist/browser/utils/logging/log.js +75 -0
  120. package/dist/browser/utils/logging/logger.d.ts +18 -0
  121. package/dist/browser/utils/logging/logger.js +18 -0
  122. package/dist/client/a2a-client.d.ts +2 -1
  123. package/dist/client/a2a-client.js +13 -4
  124. package/dist/server/express/errors.js +1 -1
  125. package/dist/server/express/middeware.d.ts +2 -2
  126. package/dist/server/express/middeware.js +26 -6
  127. package/dist/server/express/server.d.ts +26 -25
  128. package/dist/server/express/server.js +32 -6
  129. package/dist/services/a2a/factory/builder.d.ts +24 -24
  130. package/dist/services/a2a/factory/builder.js +6 -1
  131. package/dist/services/a2a/factory/service.js +2 -1
  132. package/dist/services/a2a/helpers/agentcard-builder.d.ts +7 -0
  133. package/dist/services/a2a/helpers/agentcard-builder.js +23 -0
  134. package/dist/services/a2a/helpers/history.d.ts +2 -0
  135. package/dist/services/a2a/helpers/history.js +3 -0
  136. package/dist/services/a2a/helpers/index.d.ts +3 -0
  137. package/dist/services/a2a/helpers/index.js +3 -0
  138. package/dist/services/a2a/methods/get-task.d.ts +46 -46
  139. package/dist/services/a2a/methods/get-task.js +2 -0
  140. package/dist/services/a2a/methods/send-message.js +18 -1
  141. package/dist/services/a2a/service.d.ts +154 -153
  142. package/dist/services/a2a/service.js +20 -6
  143. package/dist/services/mcp/service.js +0 -1
  144. package/dist/transport/rpc/parser.js +2 -2
  145. package/dist/transport/rpc/rpc-client.js +2 -2
  146. package/dist/transport/trpc/a2a/factory/router.d.ts +1084 -1084
  147. package/dist/transport/trpc/a2a/routes/info.d.ts +36 -36
  148. package/dist/transport/trpc/a2a/routes/message/route.d.ts +225 -225
  149. package/dist/transport/trpc/a2a/routes/tasks/route.d.ts +257 -257
  150. package/dist/transport/trpc/a2a/trpc.d.ts +120 -120
  151. package/dist/types/interfaces/services/a2a/service.d.ts +6 -1
  152. package/dist/types/schemas/a2a/agent.d.ts +818 -818
  153. package/dist/types/schemas/a2a/agent.js +1 -23
  154. package/dist/types/schemas/a2a/auth.d.ts +197 -197
  155. package/dist/types/schemas/a2a/auth.js +4 -19
  156. package/dist/types/schemas/a2a/error.d.ts +24 -24
  157. package/dist/types/schemas/a2a/message.d.ts +4499 -4499
  158. package/dist/types/schemas/a2a/message.js +2 -10
  159. package/dist/types/schemas/a2a/notification.d.ts +403 -403
  160. package/dist/types/schemas/a2a/notification.js +3 -7
  161. package/dist/types/schemas/a2a/parameters.d.ts +264 -264
  162. package/dist/types/schemas/a2a/parameters.js +1 -14
  163. package/dist/types/schemas/a2a/protocol.d.ts +5988 -5988
  164. package/dist/types/schemas/a2a/rpc.d.ts +20 -20
  165. package/dist/types/schemas/a2a/rpc.js +0 -5
  166. package/dist/types/schemas/a2a/task.d.ts +2513 -2513
  167. package/dist/types/schemas/a2a/task.js +10 -11
  168. package/dist/utils/common/constants.js +1 -1
  169. package/dist/utils/common/errors.d.ts +2 -1
  170. package/dist/utils/common/errors.js +2 -1
  171. package/dist/utils/common/schema-validation.d.ts +2 -0
  172. package/dist/utils/common/schema-validation.js +12 -0
  173. package/dist/utils/index.d.ts +1 -0
  174. package/dist/utils/index.js +1 -0
  175. package/package.json +20 -17
@@ -0,0 +1,956 @@
1
+ /**
2
+ * Copyright 2025 The Artinet Project
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { z } from "zod";
6
+ /**
7
+ * @description Defines base properties common to all message or artifact parts.
8
+ */
9
+ export declare const PartBaseSchema: z.ZodObject<{
10
+ /**
11
+ * @optional Optional metadata associated with this part.
12
+ */
13
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
14
+ }, "strip", z.ZodTypeAny, {
15
+ metadata?: Record<string, unknown> | undefined;
16
+ }, {
17
+ metadata?: Record<string, unknown> | undefined;
18
+ }>;
19
+ export type PartBase = z.infer<typeof PartBaseSchema>;
20
+ /**
21
+ * @description Defines base properties for a file.
22
+ */
23
+ export declare const FileBaseSchema: z.ZodObject<{
24
+ /**
25
+ * @optional An optional name for the file (e.g., "document.pdf").
26
+ */
27
+ name: z.ZodOptional<z.ZodString>;
28
+ /**
29
+ * @optional The MIME type of the file (e.g., "application/pdf").
30
+ */
31
+ mimeType: z.ZodOptional<z.ZodString>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ name?: string | undefined;
34
+ mimeType?: string | undefined;
35
+ }, {
36
+ name?: string | undefined;
37
+ mimeType?: string | undefined;
38
+ }>;
39
+ export type FileBase = z.infer<typeof FileBaseSchema>;
40
+ /**
41
+ * @description Represents a file with its content provided directly as a base64-encoded string.
42
+ */
43
+ export declare const FileWithBytesSchema: z.ZodObject<{
44
+ /**
45
+ * @optional An optional name for the file (e.g., "document.pdf").
46
+ */
47
+ name: z.ZodOptional<z.ZodString>;
48
+ /**
49
+ * @optional The MIME type of the file (e.g., "application/pdf").
50
+ */
51
+ mimeType: z.ZodOptional<z.ZodString>;
52
+ } & {
53
+ /**
54
+ * @required The base64-encoded content of the file.
55
+ */
56
+ bytes: z.ZodString;
57
+ /**
58
+ * @optional The `uri` property must be absent when `bytes` is present.
59
+ */
60
+ uri: z.ZodOptional<z.ZodNever>;
61
+ }, "strip", z.ZodTypeAny, {
62
+ bytes: string;
63
+ name?: string | undefined;
64
+ mimeType?: string | undefined;
65
+ uri?: undefined;
66
+ }, {
67
+ bytes: string;
68
+ name?: string | undefined;
69
+ mimeType?: string | undefined;
70
+ uri?: undefined;
71
+ }>;
72
+ export type FileWithBytes = z.infer<typeof FileWithBytesSchema>;
73
+ /**
74
+ * @description Represents a file with its content located at a specific URI.
75
+ */
76
+ export declare const FileWithUriSchema: z.ZodObject<{
77
+ /**
78
+ * @optional An optional name for the file (e.g., "document.pdf").
79
+ */
80
+ name: z.ZodOptional<z.ZodString>;
81
+ /**
82
+ * @optional The MIME type of the file (e.g., "application/pdf").
83
+ */
84
+ mimeType: z.ZodOptional<z.ZodString>;
85
+ } & {
86
+ /**
87
+ * @required A URL pointing to the file's content. (keeping as string for now)
88
+ */
89
+ uri: z.ZodString;
90
+ /**
91
+ * @optional The `bytes` property must be absent when `uri` is present.
92
+ */
93
+ bytes: z.ZodOptional<z.ZodNever>;
94
+ }, "strip", z.ZodTypeAny, {
95
+ uri: string;
96
+ name?: string | undefined;
97
+ mimeType?: string | undefined;
98
+ bytes?: undefined;
99
+ }, {
100
+ uri: string;
101
+ name?: string | undefined;
102
+ mimeType?: string | undefined;
103
+ bytes?: undefined;
104
+ }>;
105
+ export type FileWithUri = z.infer<typeof FileWithUriSchema>;
106
+ /**
107
+ * @description Represents a file with its content provided directly as a base64-encoded string or located at a specific URI.
108
+ */
109
+ export declare const FileSchema: z.ZodUnion<[z.ZodObject<{
110
+ /**
111
+ * @optional An optional name for the file (e.g., "document.pdf").
112
+ */
113
+ name: z.ZodOptional<z.ZodString>;
114
+ /**
115
+ * @optional The MIME type of the file (e.g., "application/pdf").
116
+ */
117
+ mimeType: z.ZodOptional<z.ZodString>;
118
+ } & {
119
+ /**
120
+ * @required The base64-encoded content of the file.
121
+ */
122
+ bytes: z.ZodString;
123
+ /**
124
+ * @optional The `uri` property must be absent when `bytes` is present.
125
+ */
126
+ uri: z.ZodOptional<z.ZodNever>;
127
+ }, "strip", z.ZodTypeAny, {
128
+ bytes: string;
129
+ name?: string | undefined;
130
+ mimeType?: string | undefined;
131
+ uri?: undefined;
132
+ }, {
133
+ bytes: string;
134
+ name?: string | undefined;
135
+ mimeType?: string | undefined;
136
+ uri?: undefined;
137
+ }>, z.ZodObject<{
138
+ /**
139
+ * @optional An optional name for the file (e.g., "document.pdf").
140
+ */
141
+ name: z.ZodOptional<z.ZodString>;
142
+ /**
143
+ * @optional The MIME type of the file (e.g., "application/pdf").
144
+ */
145
+ mimeType: z.ZodOptional<z.ZodString>;
146
+ } & {
147
+ /**
148
+ * @required A URL pointing to the file's content. (keeping as string for now)
149
+ */
150
+ uri: z.ZodString;
151
+ /**
152
+ * @optional The `bytes` property must be absent when `uri` is present.
153
+ */
154
+ bytes: z.ZodOptional<z.ZodNever>;
155
+ }, "strip", z.ZodTypeAny, {
156
+ uri: string;
157
+ name?: string | undefined;
158
+ mimeType?: string | undefined;
159
+ bytes?: undefined;
160
+ }, {
161
+ uri: string;
162
+ name?: string | undefined;
163
+ mimeType?: string | undefined;
164
+ bytes?: undefined;
165
+ }>]>;
166
+ export type File = z.infer<typeof FileSchema>;
167
+ /**
168
+ * @description Represents a file segment within a message or artifact. The file content can be
169
+ * provided either directly as bytes or as a URI.
170
+ */
171
+ export declare const FilePartSchema: z.ZodObject<{
172
+ /**
173
+ * @optional Optional metadata associated with this part.
174
+ */
175
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
176
+ } & {
177
+ /**
178
+ * @required The type of this part, used as a discriminator. Always 'file'.
179
+ */
180
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "file", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
181
+ /**
182
+ * @required The file content, represented as either a URI or as base64-encoded bytes.
183
+ */
184
+ file: z.ZodUnion<[z.ZodObject<{
185
+ /**
186
+ * @optional An optional name for the file (e.g., "document.pdf").
187
+ */
188
+ name: z.ZodOptional<z.ZodString>;
189
+ /**
190
+ * @optional The MIME type of the file (e.g., "application/pdf").
191
+ */
192
+ mimeType: z.ZodOptional<z.ZodString>;
193
+ } & {
194
+ /**
195
+ * @required The base64-encoded content of the file.
196
+ */
197
+ bytes: z.ZodString;
198
+ /**
199
+ * @optional The `uri` property must be absent when `bytes` is present.
200
+ */
201
+ uri: z.ZodOptional<z.ZodNever>;
202
+ }, "strip", z.ZodTypeAny, {
203
+ bytes: string;
204
+ name?: string | undefined;
205
+ mimeType?: string | undefined;
206
+ uri?: undefined;
207
+ }, {
208
+ bytes: string;
209
+ name?: string | undefined;
210
+ mimeType?: string | undefined;
211
+ uri?: undefined;
212
+ }>, z.ZodObject<{
213
+ /**
214
+ * @optional An optional name for the file (e.g., "document.pdf").
215
+ */
216
+ name: z.ZodOptional<z.ZodString>;
217
+ /**
218
+ * @optional The MIME type of the file (e.g., "application/pdf").
219
+ */
220
+ mimeType: z.ZodOptional<z.ZodString>;
221
+ } & {
222
+ /**
223
+ * @required A URL pointing to the file's content. (keeping as string for now)
224
+ */
225
+ uri: z.ZodString;
226
+ /**
227
+ * @optional The `bytes` property must be absent when `uri` is present.
228
+ */
229
+ bytes: z.ZodOptional<z.ZodNever>;
230
+ }, "strip", z.ZodTypeAny, {
231
+ uri: string;
232
+ name?: string | undefined;
233
+ mimeType?: string | undefined;
234
+ bytes?: undefined;
235
+ }, {
236
+ uri: string;
237
+ name?: string | undefined;
238
+ mimeType?: string | undefined;
239
+ bytes?: undefined;
240
+ }>]>;
241
+ }, "strip", z.ZodTypeAny, {
242
+ file: {
243
+ bytes: string;
244
+ name?: string | undefined;
245
+ mimeType?: string | undefined;
246
+ uri?: undefined;
247
+ } | {
248
+ uri: string;
249
+ name?: string | undefined;
250
+ mimeType?: string | undefined;
251
+ bytes?: undefined;
252
+ };
253
+ kind: "file";
254
+ metadata?: Record<string, unknown> | undefined;
255
+ }, {
256
+ file: {
257
+ bytes: string;
258
+ name?: string | undefined;
259
+ mimeType?: string | undefined;
260
+ uri?: undefined;
261
+ } | {
262
+ uri: string;
263
+ name?: string | undefined;
264
+ mimeType?: string | undefined;
265
+ bytes?: undefined;
266
+ };
267
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
268
+ metadata?: Record<string, unknown> | undefined;
269
+ }>;
270
+ export type FilePart = z.infer<typeof FilePartSchema>;
271
+ /**
272
+ * @description Represents a text segment within a message or artifact.
273
+ */
274
+ export declare const TextPartSchema: z.ZodObject<{
275
+ /**
276
+ * @optional Optional metadata associated with this part.
277
+ */
278
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
279
+ } & {
280
+ /**
281
+ * @required The type of this object, used as a discriminator. Always 'text' for a TextPart.
282
+ */
283
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "text", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
284
+ /**
285
+ * @required The string content of the text part.
286
+ */
287
+ text: z.ZodString;
288
+ }, "strip", z.ZodTypeAny, {
289
+ text: string;
290
+ kind: "text";
291
+ metadata?: Record<string, unknown> | undefined;
292
+ }, {
293
+ text: string;
294
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
295
+ metadata?: Record<string, unknown> | undefined;
296
+ }>;
297
+ export type TextPart = z.infer<typeof TextPartSchema>;
298
+ /**
299
+ * @description Represents a structured data segment (e.g., JSON) within a message or artifact.
300
+ */
301
+ export declare const DataPartSchema: z.ZodObject<{
302
+ /**
303
+ * @optional Optional metadata associated with this part.
304
+ */
305
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
306
+ } & {
307
+ /**
308
+ * @required The type of this object, used as a discriminator. Always 'data' for a DataPart.
309
+ */
310
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "data", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
311
+ /**
312
+ * @required The structured data content of the data part.
313
+ */
314
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
315
+ }, "strip", z.ZodTypeAny, {
316
+ data: Record<string, unknown>;
317
+ kind: "data";
318
+ metadata?: Record<string, unknown> | undefined;
319
+ }, {
320
+ data: Record<string, unknown>;
321
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
322
+ metadata?: Record<string, unknown> | undefined;
323
+ }>;
324
+ export type DataPart = z.infer<typeof DataPartSchema>;
325
+ /**
326
+ * @description A discriminated union representing a part of a message or artifact, which can
327
+ * be text, a file, or structured data.
328
+ */
329
+ export declare const PartSchema: z.ZodUnion<[z.ZodObject<{
330
+ /**
331
+ * @optional Optional metadata associated with this part.
332
+ */
333
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
334
+ } & {
335
+ /**
336
+ * @required The type of this object, used as a discriminator. Always 'text' for a TextPart.
337
+ */
338
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "text", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
339
+ /**
340
+ * @required The string content of the text part.
341
+ */
342
+ text: z.ZodString;
343
+ }, "strip", z.ZodTypeAny, {
344
+ text: string;
345
+ kind: "text";
346
+ metadata?: Record<string, unknown> | undefined;
347
+ }, {
348
+ text: string;
349
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
350
+ metadata?: Record<string, unknown> | undefined;
351
+ }>, z.ZodObject<{
352
+ /**
353
+ * @optional Optional metadata associated with this part.
354
+ */
355
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
356
+ } & {
357
+ /**
358
+ * @required The type of this part, used as a discriminator. Always 'file'.
359
+ */
360
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "file", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
361
+ /**
362
+ * @required The file content, represented as either a URI or as base64-encoded bytes.
363
+ */
364
+ file: z.ZodUnion<[z.ZodObject<{
365
+ /**
366
+ * @optional An optional name for the file (e.g., "document.pdf").
367
+ */
368
+ name: z.ZodOptional<z.ZodString>;
369
+ /**
370
+ * @optional The MIME type of the file (e.g., "application/pdf").
371
+ */
372
+ mimeType: z.ZodOptional<z.ZodString>;
373
+ } & {
374
+ /**
375
+ * @required The base64-encoded content of the file.
376
+ */
377
+ bytes: z.ZodString;
378
+ /**
379
+ * @optional The `uri` property must be absent when `bytes` is present.
380
+ */
381
+ uri: z.ZodOptional<z.ZodNever>;
382
+ }, "strip", z.ZodTypeAny, {
383
+ bytes: string;
384
+ name?: string | undefined;
385
+ mimeType?: string | undefined;
386
+ uri?: undefined;
387
+ }, {
388
+ bytes: string;
389
+ name?: string | undefined;
390
+ mimeType?: string | undefined;
391
+ uri?: undefined;
392
+ }>, z.ZodObject<{
393
+ /**
394
+ * @optional An optional name for the file (e.g., "document.pdf").
395
+ */
396
+ name: z.ZodOptional<z.ZodString>;
397
+ /**
398
+ * @optional The MIME type of the file (e.g., "application/pdf").
399
+ */
400
+ mimeType: z.ZodOptional<z.ZodString>;
401
+ } & {
402
+ /**
403
+ * @required A URL pointing to the file's content. (keeping as string for now)
404
+ */
405
+ uri: z.ZodString;
406
+ /**
407
+ * @optional The `bytes` property must be absent when `uri` is present.
408
+ */
409
+ bytes: z.ZodOptional<z.ZodNever>;
410
+ }, "strip", z.ZodTypeAny, {
411
+ uri: string;
412
+ name?: string | undefined;
413
+ mimeType?: string | undefined;
414
+ bytes?: undefined;
415
+ }, {
416
+ uri: string;
417
+ name?: string | undefined;
418
+ mimeType?: string | undefined;
419
+ bytes?: undefined;
420
+ }>]>;
421
+ }, "strip", z.ZodTypeAny, {
422
+ file: {
423
+ bytes: string;
424
+ name?: string | undefined;
425
+ mimeType?: string | undefined;
426
+ uri?: undefined;
427
+ } | {
428
+ uri: string;
429
+ name?: string | undefined;
430
+ mimeType?: string | undefined;
431
+ bytes?: undefined;
432
+ };
433
+ kind: "file";
434
+ metadata?: Record<string, unknown> | undefined;
435
+ }, {
436
+ file: {
437
+ bytes: string;
438
+ name?: string | undefined;
439
+ mimeType?: string | undefined;
440
+ uri?: undefined;
441
+ } | {
442
+ uri: string;
443
+ name?: string | undefined;
444
+ mimeType?: string | undefined;
445
+ bytes?: undefined;
446
+ };
447
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
448
+ metadata?: Record<string, unknown> | undefined;
449
+ }>, z.ZodObject<{
450
+ /**
451
+ * @optional Optional metadata associated with this part.
452
+ */
453
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
454
+ } & {
455
+ /**
456
+ * @required The type of this object, used as a discriminator. Always 'data' for a DataPart.
457
+ */
458
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "data", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
459
+ /**
460
+ * @required The structured data content of the data part.
461
+ */
462
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
463
+ }, "strip", z.ZodTypeAny, {
464
+ data: Record<string, unknown>;
465
+ kind: "data";
466
+ metadata?: Record<string, unknown> | undefined;
467
+ }, {
468
+ data: Record<string, unknown>;
469
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
470
+ metadata?: Record<string, unknown> | undefined;
471
+ }>]>;
472
+ export type Part = z.infer<typeof PartSchema>;
473
+ /**
474
+ * @description Represents a file, data structure, or other resource generated by an agent during a task.
475
+ */
476
+ export declare const ArtifactSchema: z.ZodObject<{
477
+ /**
478
+ * @required A unique identifier for the artifact within the scope of the task.
479
+ */
480
+ artifactId: z.ZodString;
481
+ /**
482
+ * @optional A human-readable name for the artifact.
483
+ */
484
+ name: z.ZodOptional<z.ZodString>;
485
+ /**
486
+ * @optional A human-readable description of the artifact.
487
+ */
488
+ description: z.ZodOptional<z.ZodString>;
489
+ /**
490
+ * @optional An array of content parts that make up the artifact.
491
+ */
492
+ parts: z.ZodArray<z.ZodUnion<[z.ZodObject<{
493
+ /**
494
+ * @optional Optional metadata associated with this part.
495
+ */
496
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
497
+ } & {
498
+ /**
499
+ * @required The type of this object, used as a discriminator. Always 'text' for a TextPart.
500
+ */
501
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "text", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
502
+ /**
503
+ * @required The string content of the text part.
504
+ */
505
+ text: z.ZodString;
506
+ }, "strip", z.ZodTypeAny, {
507
+ text: string;
508
+ kind: "text";
509
+ metadata?: Record<string, unknown> | undefined;
510
+ }, {
511
+ text: string;
512
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
513
+ metadata?: Record<string, unknown> | undefined;
514
+ }>, z.ZodObject<{
515
+ /**
516
+ * @optional Optional metadata associated with this part.
517
+ */
518
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
519
+ } & {
520
+ /**
521
+ * @required The type of this part, used as a discriminator. Always 'file'.
522
+ */
523
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "file", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
524
+ /**
525
+ * @required The file content, represented as either a URI or as base64-encoded bytes.
526
+ */
527
+ file: z.ZodUnion<[z.ZodObject<{
528
+ /**
529
+ * @optional An optional name for the file (e.g., "document.pdf").
530
+ */
531
+ name: z.ZodOptional<z.ZodString>;
532
+ /**
533
+ * @optional The MIME type of the file (e.g., "application/pdf").
534
+ */
535
+ mimeType: z.ZodOptional<z.ZodString>;
536
+ } & {
537
+ /**
538
+ * @required The base64-encoded content of the file.
539
+ */
540
+ bytes: z.ZodString;
541
+ /**
542
+ * @optional The `uri` property must be absent when `bytes` is present.
543
+ */
544
+ uri: z.ZodOptional<z.ZodNever>;
545
+ }, "strip", z.ZodTypeAny, {
546
+ bytes: string;
547
+ name?: string | undefined;
548
+ mimeType?: string | undefined;
549
+ uri?: undefined;
550
+ }, {
551
+ bytes: string;
552
+ name?: string | undefined;
553
+ mimeType?: string | undefined;
554
+ uri?: undefined;
555
+ }>, z.ZodObject<{
556
+ /**
557
+ * @optional An optional name for the file (e.g., "document.pdf").
558
+ */
559
+ name: z.ZodOptional<z.ZodString>;
560
+ /**
561
+ * @optional The MIME type of the file (e.g., "application/pdf").
562
+ */
563
+ mimeType: z.ZodOptional<z.ZodString>;
564
+ } & {
565
+ /**
566
+ * @required A URL pointing to the file's content. (keeping as string for now)
567
+ */
568
+ uri: z.ZodString;
569
+ /**
570
+ * @optional The `bytes` property must be absent when `uri` is present.
571
+ */
572
+ bytes: z.ZodOptional<z.ZodNever>;
573
+ }, "strip", z.ZodTypeAny, {
574
+ uri: string;
575
+ name?: string | undefined;
576
+ mimeType?: string | undefined;
577
+ bytes?: undefined;
578
+ }, {
579
+ uri: string;
580
+ name?: string | undefined;
581
+ mimeType?: string | undefined;
582
+ bytes?: undefined;
583
+ }>]>;
584
+ }, "strip", z.ZodTypeAny, {
585
+ file: {
586
+ bytes: string;
587
+ name?: string | undefined;
588
+ mimeType?: string | undefined;
589
+ uri?: undefined;
590
+ } | {
591
+ uri: string;
592
+ name?: string | undefined;
593
+ mimeType?: string | undefined;
594
+ bytes?: undefined;
595
+ };
596
+ kind: "file";
597
+ metadata?: Record<string, unknown> | undefined;
598
+ }, {
599
+ file: {
600
+ bytes: string;
601
+ name?: string | undefined;
602
+ mimeType?: string | undefined;
603
+ uri?: undefined;
604
+ } | {
605
+ uri: string;
606
+ name?: string | undefined;
607
+ mimeType?: string | undefined;
608
+ bytes?: undefined;
609
+ };
610
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
611
+ metadata?: Record<string, unknown> | undefined;
612
+ }>, z.ZodObject<{
613
+ /**
614
+ * @optional Optional metadata associated with this part.
615
+ */
616
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
617
+ } & {
618
+ /**
619
+ * @required The type of this object, used as a discriminator. Always 'data' for a DataPart.
620
+ */
621
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "data", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
622
+ /**
623
+ * @required The structured data content of the data part.
624
+ */
625
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
626
+ }, "strip", z.ZodTypeAny, {
627
+ data: Record<string, unknown>;
628
+ kind: "data";
629
+ metadata?: Record<string, unknown> | undefined;
630
+ }, {
631
+ data: Record<string, unknown>;
632
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
633
+ metadata?: Record<string, unknown> | undefined;
634
+ }>]>, "many">;
635
+ /**
636
+ * @optional Optional metadata for extensions. The key is an extension-specific identifier.
637
+ */
638
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
639
+ /**
640
+ * @optional The URIs of extensions that are relevant to this artifact.
641
+ */
642
+ extension: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
643
+ }, "strip", z.ZodTypeAny, {
644
+ artifactId: string;
645
+ parts: ({
646
+ file: {
647
+ bytes: string;
648
+ name?: string | undefined;
649
+ mimeType?: string | undefined;
650
+ uri?: undefined;
651
+ } | {
652
+ uri: string;
653
+ name?: string | undefined;
654
+ mimeType?: string | undefined;
655
+ bytes?: undefined;
656
+ };
657
+ kind: "file";
658
+ metadata?: Record<string, unknown> | undefined;
659
+ } | {
660
+ text: string;
661
+ kind: "text";
662
+ metadata?: Record<string, unknown> | undefined;
663
+ } | {
664
+ data: Record<string, unknown>;
665
+ kind: "data";
666
+ metadata?: Record<string, unknown> | undefined;
667
+ })[];
668
+ description?: string | undefined;
669
+ name?: string | undefined;
670
+ metadata?: Record<string, unknown> | undefined;
671
+ extension?: string[] | undefined;
672
+ }, {
673
+ artifactId: string;
674
+ parts: ({
675
+ file: {
676
+ bytes: string;
677
+ name?: string | undefined;
678
+ mimeType?: string | undefined;
679
+ uri?: undefined;
680
+ } | {
681
+ uri: string;
682
+ name?: string | undefined;
683
+ mimeType?: string | undefined;
684
+ bytes?: undefined;
685
+ };
686
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
687
+ metadata?: Record<string, unknown> | undefined;
688
+ } | {
689
+ text: string;
690
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
691
+ metadata?: Record<string, unknown> | undefined;
692
+ } | {
693
+ data: Record<string, unknown>;
694
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
695
+ metadata?: Record<string, unknown> | undefined;
696
+ })[];
697
+ description?: string | undefined;
698
+ name?: string | undefined;
699
+ metadata?: Record<string, unknown> | undefined;
700
+ extension?: string[] | undefined;
701
+ }>;
702
+ export type Artifact = z.infer<typeof ArtifactSchema>;
703
+ /**
704
+ * @description Represents the role of a message sender.
705
+ */
706
+ export declare const MessageRoleSchema: z.ZodEnum<["user", "agent"]>;
707
+ export type MessageRole = z.infer<typeof MessageRoleSchema>;
708
+ /**
709
+ * @description Represents a single message in the conversation between a user and an agent.
710
+ */
711
+ export declare const MessageSchema: z.ZodObject<{
712
+ /**
713
+ * @required Identifies the sender of the message. `user` for the client, `agent` for the service.
714
+ */
715
+ role: z.ZodEnum<["user", "agent"]>;
716
+ /**
717
+ * @required An array of content parts that form the message body. A message can be
718
+ * composed of multiple parts of different types (e.g., text and files).
719
+ */
720
+ parts: z.ZodArray<z.ZodUnion<[z.ZodObject<{
721
+ /**
722
+ * @optional Optional metadata associated with this part.
723
+ */
724
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
725
+ } & {
726
+ /**
727
+ * @required The type of this object, used as a discriminator. Always 'text' for a TextPart.
728
+ */
729
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "text", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
730
+ /**
731
+ * @required The string content of the text part.
732
+ */
733
+ text: z.ZodString;
734
+ }, "strip", z.ZodTypeAny, {
735
+ text: string;
736
+ kind: "text";
737
+ metadata?: Record<string, unknown> | undefined;
738
+ }, {
739
+ text: string;
740
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
741
+ metadata?: Record<string, unknown> | undefined;
742
+ }>, z.ZodObject<{
743
+ /**
744
+ * @optional Optional metadata associated with this part.
745
+ */
746
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
747
+ } & {
748
+ /**
749
+ * @required The type of this part, used as a discriminator. Always 'file'.
750
+ */
751
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "file", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
752
+ /**
753
+ * @required The file content, represented as either a URI or as base64-encoded bytes.
754
+ */
755
+ file: z.ZodUnion<[z.ZodObject<{
756
+ /**
757
+ * @optional An optional name for the file (e.g., "document.pdf").
758
+ */
759
+ name: z.ZodOptional<z.ZodString>;
760
+ /**
761
+ * @optional The MIME type of the file (e.g., "application/pdf").
762
+ */
763
+ mimeType: z.ZodOptional<z.ZodString>;
764
+ } & {
765
+ /**
766
+ * @required The base64-encoded content of the file.
767
+ */
768
+ bytes: z.ZodString;
769
+ /**
770
+ * @optional The `uri` property must be absent when `bytes` is present.
771
+ */
772
+ uri: z.ZodOptional<z.ZodNever>;
773
+ }, "strip", z.ZodTypeAny, {
774
+ bytes: string;
775
+ name?: string | undefined;
776
+ mimeType?: string | undefined;
777
+ uri?: undefined;
778
+ }, {
779
+ bytes: string;
780
+ name?: string | undefined;
781
+ mimeType?: string | undefined;
782
+ uri?: undefined;
783
+ }>, z.ZodObject<{
784
+ /**
785
+ * @optional An optional name for the file (e.g., "document.pdf").
786
+ */
787
+ name: z.ZodOptional<z.ZodString>;
788
+ /**
789
+ * @optional The MIME type of the file (e.g., "application/pdf").
790
+ */
791
+ mimeType: z.ZodOptional<z.ZodString>;
792
+ } & {
793
+ /**
794
+ * @required A URL pointing to the file's content. (keeping as string for now)
795
+ */
796
+ uri: z.ZodString;
797
+ /**
798
+ * @optional The `bytes` property must be absent when `uri` is present.
799
+ */
800
+ bytes: z.ZodOptional<z.ZodNever>;
801
+ }, "strip", z.ZodTypeAny, {
802
+ uri: string;
803
+ name?: string | undefined;
804
+ mimeType?: string | undefined;
805
+ bytes?: undefined;
806
+ }, {
807
+ uri: string;
808
+ name?: string | undefined;
809
+ mimeType?: string | undefined;
810
+ bytes?: undefined;
811
+ }>]>;
812
+ }, "strip", z.ZodTypeAny, {
813
+ file: {
814
+ bytes: string;
815
+ name?: string | undefined;
816
+ mimeType?: string | undefined;
817
+ uri?: undefined;
818
+ } | {
819
+ uri: string;
820
+ name?: string | undefined;
821
+ mimeType?: string | undefined;
822
+ bytes?: undefined;
823
+ };
824
+ kind: "file";
825
+ metadata?: Record<string, unknown> | undefined;
826
+ }, {
827
+ file: {
828
+ bytes: string;
829
+ name?: string | undefined;
830
+ mimeType?: string | undefined;
831
+ uri?: undefined;
832
+ } | {
833
+ uri: string;
834
+ name?: string | undefined;
835
+ mimeType?: string | undefined;
836
+ bytes?: undefined;
837
+ };
838
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
839
+ metadata?: Record<string, unknown> | undefined;
840
+ }>, z.ZodObject<{
841
+ /**
842
+ * @optional Optional metadata associated with this part.
843
+ */
844
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
845
+ } & {
846
+ /**
847
+ * @required The type of this object, used as a discriminator. Always 'data' for a DataPart.
848
+ */
849
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "data", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
850
+ /**
851
+ * @required The structured data content of the data part.
852
+ */
853
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
854
+ }, "strip", z.ZodTypeAny, {
855
+ data: Record<string, unknown>;
856
+ kind: "data";
857
+ metadata?: Record<string, unknown> | undefined;
858
+ }, {
859
+ data: Record<string, unknown>;
860
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
861
+ metadata?: Record<string, unknown> | undefined;
862
+ }>]>, "many">;
863
+ /**
864
+ * @optional Optional metadata for extensions. The key is an extension-specific identifier.
865
+ */
866
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
867
+ /**
868
+ * @optional The URIs of extensions that are relevant to this message.
869
+ */
870
+ extensions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
871
+ /**
872
+ * @optional A list of other task IDs that this message references for additional context.
873
+ */
874
+ referenceTaskIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
875
+ /**
876
+ * @required A unique identifier for the message, typically a UUID, generated by the sender.
877
+ */
878
+ messageId: z.ZodString;
879
+ /**
880
+ * @optional The identifier of the task this message is part of. Can be omitted for the first message of a new task.
881
+ */
882
+ taskId: z.ZodOptional<z.ZodString>;
883
+ /**
884
+ * @optional The context identifier for this message, used to group related interactions.
885
+ */
886
+ contextId: z.ZodOptional<z.ZodString>;
887
+ /**
888
+ * @required The type of this object, used as a discriminator. Always 'message' for a Message.
889
+ */
890
+ kind: z.ZodEffects<z.ZodEnum<["artifact-update", "data", "file", "message", "status-update", "task", "text"]>, "message", "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text">;
891
+ }, "strip", z.ZodTypeAny, {
892
+ kind: "message";
893
+ parts: ({
894
+ file: {
895
+ bytes: string;
896
+ name?: string | undefined;
897
+ mimeType?: string | undefined;
898
+ uri?: undefined;
899
+ } | {
900
+ uri: string;
901
+ name?: string | undefined;
902
+ mimeType?: string | undefined;
903
+ bytes?: undefined;
904
+ };
905
+ kind: "file";
906
+ metadata?: Record<string, unknown> | undefined;
907
+ } | {
908
+ text: string;
909
+ kind: "text";
910
+ metadata?: Record<string, unknown> | undefined;
911
+ } | {
912
+ data: Record<string, unknown>;
913
+ kind: "data";
914
+ metadata?: Record<string, unknown> | undefined;
915
+ })[];
916
+ role: "user" | "agent";
917
+ messageId: string;
918
+ metadata?: Record<string, unknown> | undefined;
919
+ extensions?: string[] | undefined;
920
+ referenceTaskIds?: string[] | undefined;
921
+ taskId?: string | undefined;
922
+ contextId?: string | undefined;
923
+ }, {
924
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
925
+ parts: ({
926
+ file: {
927
+ bytes: string;
928
+ name?: string | undefined;
929
+ mimeType?: string | undefined;
930
+ uri?: undefined;
931
+ } | {
932
+ uri: string;
933
+ name?: string | undefined;
934
+ mimeType?: string | undefined;
935
+ bytes?: undefined;
936
+ };
937
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
938
+ metadata?: Record<string, unknown> | undefined;
939
+ } | {
940
+ text: string;
941
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
942
+ metadata?: Record<string, unknown> | undefined;
943
+ } | {
944
+ data: Record<string, unknown>;
945
+ kind: "artifact-update" | "data" | "file" | "message" | "status-update" | "task" | "text";
946
+ metadata?: Record<string, unknown> | undefined;
947
+ })[];
948
+ role: "user" | "agent";
949
+ messageId: string;
950
+ metadata?: Record<string, unknown> | undefined;
951
+ extensions?: string[] | undefined;
952
+ referenceTaskIds?: string[] | undefined;
953
+ taskId?: string | undefined;
954
+ contextId?: string | undefined;
955
+ }>;
956
+ export type Message = z.infer<typeof MessageSchema>;