]> Untitled Git - lemmy.git/blob - crates/apub/src/api/mod.rs
Activitypub crate rewrite (#2782)
[lemmy.git] / crates / apub / src / api / mod.rs
1 use activitypub_federation::config::Data;
2 use lemmy_api_common::context::LemmyContext;
3 use lemmy_utils::{error::LemmyError, ConnectionId};
4
5 mod list_comments;
6 mod list_posts;
7 mod read_community;
8 mod read_person;
9 mod resolve_object;
10 mod search;
11
12 #[async_trait::async_trait]
13 pub trait PerformApub {
14   type Response: serde::ser::Serialize + Send;
15
16   async fn perform(
17     &self,
18     context: &Data<LemmyContext>,
19     websocket_id: Option<ConnectionId>,
20   ) -> Result<Self::Response, LemmyError>;
21 }