pub fn encrypt<T: Serialize + DeserializeOwned>( key: &AESKey, to_encrypt: &T, ) -> SharedResult<AESEncrypted<T>>