use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
pub enum FieldValue {
SingleText(String),
Text(String),
SingleSelect(String),
MultiSelect(Vec<String>),
Number(f64),
Currency(f64),
Percent(f64),
Datetime(u64),
Attachment(Vec<Attachment>),
Member(Vec<Member>),
Checkbox(bool),
Rating(u8),
URL(Url),
Phone(String),
Email(String),
WorkDoc(Vec<WorkDoc>),
OneWayLink(String),
TwoWayLink(Vec<String>),
MagicLookUp(Vec<String>),
Formula(Formula),
AutoNumber(usize),
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Attachment {
id: String,
name: String,
size: usize,
mime_type: String,
token: String,
width: usize,
height: usize,
url: String,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Member {
id: String,
r#type: i32,
name: String,
avatar: String,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Url {
title: String,
text: String,
fafavicon: String,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Formula {
Formula(String),
Number(f64),
Bool(bool),
}
#[derive(Debug, Serialize, Deserialize)]
pub struct WorkDoc {
document_id: String,
title: String,
}