edgequake_sdk/types/
workspaces.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Serialize)]
7pub struct CreateWorkspaceRequest {
8 pub name: String,
9 #[serde(skip_serializing_if = "Option::is_none")]
10 pub slug: Option<String>,
11 #[serde(skip_serializing_if = "Option::is_none")]
12 pub description: Option<String>,
13}
14
15#[derive(Debug, Clone, Deserialize)]
17pub struct WorkspaceInfo {
18 pub id: String,
19 pub name: String,
20 #[serde(default)]
21 pub slug: Option<String>,
22 #[serde(default)]
23 pub description: Option<String>,
24 #[serde(default)]
25 pub tenant_id: Option<String>,
26 #[serde(default)]
27 pub created_at: Option<String>,
28}
29
30#[derive(Debug, Clone, Deserialize)]
32pub struct WorkspaceStats {
33 pub workspace_id: String,
34 #[serde(default)]
35 pub document_count: u32,
36 #[serde(default)]
37 pub entity_count: u32,
38 #[serde(default)]
39 pub relationship_count: u32,
40 #[serde(default)]
41 pub chunk_count: u32,
42 #[serde(default)]
43 pub query_count: u32,
44 #[serde(default)]
45 pub storage_size_bytes: u64,
46}
47
48#[derive(Debug, Clone, Deserialize)]
50pub struct RebuildResponse {
51 pub status: String,
52 #[serde(default)]
53 pub message: Option<String>,
54 #[serde(default)]
55 pub track_id: Option<String>,
56}