pub trait KeyBackupStorage: Send + Sync {
// Required methods
fn store_backup<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
group_id: [u8; 32],
keyset: &'life1 KeySet,
metadata: &'life2 BackupMetadata,
) -> Pin<Box<dyn Future<Output = Result<BackupId>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn retrieve_backup<'life0, 'async_trait>(
&'life0 self,
backup_id: BackupId,
) -> Pin<Box<dyn Future<Output = Result<(KeySet, BackupMetadata)>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn list_backups<'life0, 'async_trait>(
&'life0 self,
group_id: [u8; 32],
) -> Pin<Box<dyn Future<Output = Result<Vec<BackupInfo>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn delete_backup<'life0, 'async_trait>(
&'life0 self,
backup_id: BackupId,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn verify_backup<'life0, 'async_trait>(
&'life0 self,
backup_id: BackupId,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Trait for key backup storage