systemprompt_models/artifacts/
types.rs1use schemars::JsonSchema;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
5#[serde(rename_all = "lowercase")]
6pub enum ArtifactType {
7 Text,
8 Table,
9 Chart,
10 Form,
11 Dashboard,
12 #[serde(rename = "presentation_card")]
13 PresentationCard,
14 List,
15 #[serde(rename = "copy_paste_text")]
16 CopyPasteText,
17 Image,
18 Video,
19 Audio,
20 #[serde(untagged)]
23 Custom(String),
24}
25
26#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
27#[serde(rename_all = "lowercase")]
28pub enum ColumnType {
29 String,
30 Integer,
31 Number,
32 Currency,
33 Percentage,
34 Date,
35 Boolean,
36 Link,
37}
38
39#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
40#[serde(rename_all = "lowercase")]
41pub enum ChartType {
42 #[default]
43 Line,
44 Bar,
45 Pie,
46 Doughnut,
47 Area,
48}
49
50#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
51#[serde(rename_all = "lowercase")]
52pub enum AxisType {
53 Category,
54 #[default]
55 Linear,
56 Logarithmic,
57 Time,
58}
59
60#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
61#[serde(rename_all = "lowercase")]
62pub enum SortOrder {
63 Asc,
64 Desc,
65}
66
67#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
68#[serde(rename_all = "lowercase")]
69pub enum Alignment {
70 Left,
71 Center,
72 Right,
73}