use crate::utils;
use base64;
use safe_nd::{
ADataAddress, ClientPublicId, IDataAddress, MDataAddress, NodePublicId, PublicKey, XorName,
};
use serde::Serialize;
pub(crate) trait ToDbKey: Serialize {
fn to_db_key(&self) -> String {
let serialised = utils::serialise(&self);
base64::encode(&serialised)
}
}
impl ToDbKey for ADataAddress {}
impl ToDbKey for ClientPublicId {}
impl ToDbKey for IDataAddress {}
impl ToDbKey for MDataAddress {}
impl ToDbKey for NodePublicId {}
impl ToDbKey for PublicKey {}
impl ToDbKey for XorName {}