Skip to main content

systemprompt_models/a2a/
artifact.rs

1use super::artifact_metadata::ArtifactMetadata;
2use super::message::Part;
3use serde::{Deserialize, Serialize};
4use systemprompt_identifiers::ArtifactId;
5
6#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
7#[serde(rename_all = "camelCase")]
8pub struct Artifact {
9    #[serde(rename = "artifactId")]
10    pub id: ArtifactId,
11    pub name: Option<String>,
12    pub description: Option<String>,
13    pub parts: Vec<Part>,
14    pub extensions: Vec<serde_json::Value>,
15    pub metadata: ArtifactMetadata,
16}