deta_rust/database/
models.rs

1//! Structures corresponding to the responses of the deta drive API.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize, Clone, Debug)]
6pub struct Items<T> {
7    pub items: Vec<T>,
8}
9
10#[derive(Serialize, Deserialize, Clone, Debug)]
11pub struct PutItems<T> {
12    pub processed: Items<T>,
13    pub failed: Option<Items<T>>,
14}
15
16#[derive(Serialize, Deserialize, Clone, Debug)]
17pub struct DeleteItem {
18    pub key: String
19}
20
21#[derive(Serialize, Deserialize, Clone, Debug)]
22pub struct FetchItems<T> {
23    pub paging: FetchItemsPaging,
24    pub items: Vec<T>
25}
26
27#[derive(Serialize, Deserialize, Clone, Debug)]
28pub struct FetchItemsPaging {
29    pub size: usize,
30    pub last: Option<String>,
31}
32
33#[derive(Serialize, Deserialize, Clone, Debug)]
34pub struct UpdateItem {
35    pub key: String,
36    pub set: Option<serde_json::Value>,
37    pub increment: Option<serde_json::Value>,
38    pub append: Option<serde_json::Value>,
39    pub prepend: Option<serde_json::Value>,
40    pub delete: Option<serde_json::Value>
41}