funpay_client/client/
mod.rs

1use crate::error::FunPayError;
2use crate::models::OfferSaveRequest;
3use async_trait::async_trait;
4use serde_json::Value;
5
6#[async_trait]
7pub trait FunpayGateway: Send + Sync {
8    async fn get_home(
9        &self,
10        golden_key: &str,
11        user_agent: &str,
12    ) -> Result<(String, Vec<String>), FunPayError>;
13    async fn get_chat_page(
14        &self,
15        golden_key: &str,
16        user_agent: &str,
17        chat_id: &str,
18    ) -> Result<(String, Vec<String>), FunPayError>;
19    async fn get_orders_trade(
20        &self,
21        golden_key: &str,
22        user_agent: &str,
23    ) -> Result<String, FunPayError>;
24    async fn get_order_page(
25        &self,
26        golden_key: &str,
27        user_agent: &str,
28        order_id: &str,
29    ) -> Result<String, FunPayError>;
30    async fn post_runner(
31        &self,
32        golden_key: &str,
33        user_agent: &str,
34        csrf: &str,
35        phpsessid: Option<&str>,
36        objects_json: &str,
37        request_json: Option<&str>,
38    ) -> Result<Value, FunPayError>;
39    async fn post_offer_save(
40        &self,
41        request: OfferSaveRequest<'_>,
42    ) -> Result<Value, FunPayError>;
43    async fn get_offer_edit_page(
44        &self,
45        golden_key: &str,
46        user_agent: &str,
47        node_id: i64,
48        offer_id: i64,
49    ) -> Result<String, FunPayError>;
50    async fn get_lots_trade_page(
51        &self,
52        golden_key: &str,
53        user_agent: &str,
54        node_id: i64,
55    ) -> Result<String, FunPayError>;
56    async fn get_lots_page(
57        &self,
58        golden_key: &str,
59        user_agent: &str,
60        node_id: i64,
61    ) -> Result<String, FunPayError>;
62}
63
64pub mod account;
65pub mod http;
66pub mod poller;
67pub mod urls;