Skip to main content

rivetkit_client/protocol/
to_server.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
4pub struct ActionRequest {
5	pub id: u64,
6	pub name: String,
7	pub args: Vec<u8>,
8}
9
10#[derive(Debug, Clone, Serialize, Deserialize)]
11pub struct SubscriptionRequest {
12	#[serde(rename = "eventName")]
13	pub event_name: String,
14	pub subscribe: bool,
15}
16
17#[derive(Debug, Clone, Serialize, Deserialize)]
18#[serde(tag = "tag", content = "val")]
19pub enum ToServerBody {
20	ActionRequest(ActionRequest),
21	SubscriptionRequest(SubscriptionRequest),
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
25pub struct ToServer {
26	pub body: ToServerBody,
27}