siera_agent/modules/
multitenancy.rs1use async_trait::async_trait;
2
3use crate::error::Result;
4use serde::Deserialize;
5use serde::Serialize;
6use serde_json::Value;
7
8#[derive(Default, Debug, Clone, Eq, PartialEq, Serialize, Deserialize)]
10pub struct MultitenancyCreateResponse {
11 pub created_at: String,
13
14 pub key_management_mode: String,
16
17 pub settings: Value,
19
20 pub token: String,
22
23 pub updated_at: String,
25
26 pub wallet_id: String,
28}
29
30#[async_trait]
32pub trait MultitenancyModule {
33 async fn create(&self) -> Result<MultitenancyCreateResponse>;
35
36 async fn remove(&self, wallet_id: String) -> Result<()>;
38}