pub trait EncodableSecret {
// Required methods
fn encode_bson(&self) -> Secret<Vec<u8>>;
fn decode_bson(bson_data: &Secret<Vec<u8>>) -> Result<Self, FormatError>
where Self: Sized;
fn encode_pem(&self) -> Secret<String>;
fn decode_pem(pem_data: Secret<String>) -> Result<Self, FormatError>
where Self: Sized;
}