use crate::models;
use serde::{Deserialize, Serialize};
use serde_with::serde_as;
#[serde_as]
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CapsuleOpenRequest {
#[serde_as(as = "serde_with::base64::Base64")]
#[serde(rename = "encryptedDek")]
pub encrypted_dek: Vec<u8>,
#[serde(rename = "keyID")]
pub key_id: i64,
#[serde(rename = "readParameters", skip_serializing_if = "Option::is_none")]
pub read_parameters: Option<Vec<models::ReadParameter>>,
}
impl CapsuleOpenRequest {
pub fn new(encrypted_dek: Vec<u8>, key_id: i64) -> CapsuleOpenRequest {
CapsuleOpenRequest {
encrypted_dek,
key_id,
read_parameters: None,
}
}
}