1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Deserialize)]
5pub struct Request {
6 pub id: u64,
7 pub method: String,
8 pub params: serde_json::Value,
9}
10
11#[derive(Debug, Serialize, Deserialize)]
13pub struct Response {
14 pub id: u64,
15 pub result: serde_json::Value,
16}
17
18#[derive(Debug, Serialize, Deserialize)]
20pub struct ErrorObject {
21 pub code: i64,
22 pub message: String,
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub data: Option<serde_json::Value>,
25}
26
27#[derive(Debug, Serialize, Deserialize)]
29pub struct ErrorResponse {
30 pub id: u64,
31 pub error: ErrorObject,
32}
33
34#[derive(Debug, Serialize, Deserialize)]
36pub struct EvaluateParams {
37 pub code: String,
38}
39
40#[derive(Debug, Serialize, Deserialize)]
42pub struct EvaluateResult {
43 pub output: String,
44}
45
46#[derive(Debug, Serialize, Deserialize)]
48pub struct CommandLog {
49 pub timestamp: String,
50 pub command: String,
51}
52
53#[derive(Debug, Serialize, Deserialize)]
55pub struct OutputLog {
56 pub timestamp: String,
57 pub output: String,
58}