revolt_database/models/user_settings/
ops.rs

1use revolt_result::Result;
2
3use crate::UserSettings;
4
5#[cfg(feature = "mongodb")]
6mod mongodb;
7mod reference;
8
9#[async_trait]
10pub trait AbstractUserSettings: Sync + Send {
11    /// Fetch a subset of user settings
12    async fn fetch_user_settings(&'_ self, id: &str, filter: &'_ [String]) -> Result<UserSettings>;
13
14    /// Update a subset of user settings
15    async fn set_user_settings(&self, id: &str, settings: &UserSettings) -> Result<()>;
16
17    /// Delete all user settings
18    async fn delete_user_settings(&self, id: &str) -> Result<()>;
19}