2022-10-05 20:34:31 +02:00
|
|
|
use ruma::{
|
2022-11-09 18:46:10 +01:00
|
|
|
api::client::push::{set_pusher, Pusher},
|
2022-10-05 20:34:31 +02:00
|
|
|
UserId,
|
|
|
|
};
|
2022-09-06 23:15:09 +02:00
|
|
|
|
2022-09-07 13:25:51 +02:00
|
|
|
use crate::Result;
|
2024-03-05 19:48:54 -05:00
|
|
|
|
2022-10-05 15:33:57 +02:00
|
|
|
pub trait Data: Send + Sync {
|
2022-11-09 18:46:10 +01:00
|
|
|
fn set_pusher(&self, sender: &UserId, pusher: set_pusher::v3::PusherAction) -> Result<()>;
|
2021-01-26 21:54:35 -05:00
|
|
|
|
2022-11-09 18:46:10 +01:00
|
|
|
fn get_pusher(&self, sender: &UserId, pushkey: &str) -> Result<Option<Pusher>>;
|
2021-06-08 18:10:00 +02:00
|
|
|
|
2022-11-09 18:46:10 +01:00
|
|
|
fn get_pushers(&self, sender: &UserId) -> Result<Vec<Pusher>>;
|
2021-01-29 10:14:09 -05:00
|
|
|
|
2022-10-08 13:03:07 +02:00
|
|
|
fn get_pushkeys<'a>(&'a self, sender: &UserId) -> Box<dyn Iterator<Item = Result<String>> + 'a>;
|
2021-01-26 21:54:35 -05:00
|
|
|
}
|