use crate::models;
use serde::{Deserialize, Serialize};
use serde_with::serde_as;
#[serde_as]
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CapsuleOpenResponse {
#[serde_as(as = "serde_with::base64::Base64")]
#[serde(rename = "decryptionKey")]
pub decryption_key: Vec<u8>,
#[serde(rename = "readContextConfiguration")]
pub read_context_configuration: Box<models::CapsuleOpenResponseReadContextConfiguration>,
#[serde(rename = "openToken")]
pub open_token: String,
#[serde(rename = "capsuleTags")]
pub capsule_tags: Vec<models::Tag>,
}
impl CapsuleOpenResponse {
pub fn new(decryption_key: Vec<u8>, read_context_configuration: models::CapsuleOpenResponseReadContextConfiguration, open_token: String, capsule_tags: Vec<models::Tag>) -> CapsuleOpenResponse {
CapsuleOpenResponse {
decryption_key,
read_context_configuration: Box::new(read_context_configuration),
open_token,
capsule_tags,
}
}
}