1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct Meta {
5 pub columns: Vec<Column>,
6 #[serde(rename = "featureCount")]
7 pub feature_count: u64,
8}
9
10#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
11pub struct Column {
12 pub index: u16,
13 pub name: String,
14 #[serde(rename = "type")]
15 pub _type: ColumnType,
16 pub title: Option<String>,
17 pub description: Option<String>,
18 pub precision: Option<i32>,
19 pub scale: Option<i32>,
20 pub nullable: Option<bool>,
21 pub unique: Option<bool>,
22 pub primary_key: Option<bool>,
23 pub metadata: Option<String>,
24 #[serde(rename = "attrIndex")]
25 pub attr_index: Option<bool>,
26}
27
28#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
29pub enum ColumnType {
30 Byte, UByte, Bool, Short, UShort, Int, UInt, Long, ULong, Float, Double, String, Json, DateTime, Binary, }