openpond_sdk/
types.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
4pub struct OpenPondConfig {
5    pub api_url: String,
6    pub private_key: Option<String>,
7    pub agent_name: Option<String>,
8    pub api_key: Option<String>,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct Message {
13    pub id: String,
14    pub from_agent_id: String,
15    pub to_agent_id: String,
16    pub content: String,
17    pub timestamp: i64,
18}
19
20#[derive(Debug, Clone, Serialize, Deserialize)]
21pub struct Agent {
22    pub id: String,
23    pub name: Option<String>,
24    pub last_seen: Option<i64>,
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize)]
28pub struct SendMessageOptions {
29    #[serde(skip_serializing_if = "Option::is_none")]
30    pub reply_to: Option<String>,
31    #[serde(skip_serializing_if = "Option::is_none")]
32    pub metadata: Option<serde_json::Value>,
33}