use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct KeyStore {
pub uuid: Uuid,
pub consumers: Vec<Consumer>,
pub resource_data_groups: Vec<ResourceDataGroup>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct Consumer {
pub id: String, pub key_id: Option<String>, pub key_value: Option<String>, }
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct ResourceDataGroup {
pub key_uuid: Uuid, pub access_rights: Vec<AccessRight>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct AccessRight {
pub consumer_id: String,
pub algorithm: String, pub wrapped_key: Vec<u8>, }