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(&self, request: OfferSaveRequest<'_>) -> Result<Value, FunPayError>;
40    async fn get_offer_edit_page(
41        &self,
42        golden_key: &str,
43        user_agent: &str,
44        node_id: i64,
45        offer_id: i64,
46    ) -> Result<String, FunPayError>;
47    async fn get_lots_trade_page(
48        &self,
49        golden_key: &str,
50        user_agent: &str,
51        node_id: i64,
52    ) -> Result<String, FunPayError>;
53    async fn get_lots_page(
54        &self,
55        golden_key: &str,
56        user_agent: &str,
57        node_id: i64,
58    ) -> Result<String, FunPayError>;
59}
60
61pub mod account;
62pub mod http;
63pub mod poller;
64pub mod urls;