1use nil_core::world::WorldOptions;
5use nil_core::world::config::WorldId;
6use nil_crypto::password::Password;
7use serde::{Deserialize, Serialize};
8use std::path::PathBuf;
9
10#[derive(Clone, Debug, Deserialize, Serialize)]
11#[serde(rename_all = "camelCase")]
12pub struct CreateRemoteWorldRequest {
13 pub options: WorldOptions,
14 #[serde(default)]
15 pub description: Option<String>,
16 #[serde(default)]
17 pub password: Option<Password>,
18}
19
20#[derive(Clone, Debug, Deserialize, Serialize)]
21#[serde(rename_all = "camelCase")]
22pub struct GetRemoteWorldRequest {
23 pub world: WorldId,
24}
25
26#[derive(Clone, Debug, Deserialize, Serialize)]
27#[serde(rename_all = "camelCase")]
28pub struct GetWorldBotsRequest {
29 pub world: WorldId,
30}
31
32#[derive(Clone, Debug, Deserialize, Serialize)]
33#[serde(rename_all = "camelCase")]
34pub struct GetWorldConfigRequest {
35 pub world: WorldId,
36}
37
38#[derive(Clone, Debug, Deserialize, Serialize)]
39#[serde(rename_all = "camelCase")]
40pub struct GetWorldPlayersRequest {
41 pub world: WorldId,
42}
43
44#[derive(Clone, Debug, Deserialize, Serialize)]
45#[serde(rename_all = "camelCase")]
46pub struct GetWorldPrecursorsRequest {
47 pub world: WorldId,
48}
49
50#[derive(Clone, Debug, Deserialize, Serialize)]
51#[serde(rename_all = "camelCase")]
52pub struct GetWorldStatsRequest {
53 pub world: WorldId,
54}
55
56#[derive(Clone, Debug, Deserialize, Serialize)]
57#[serde(rename_all = "camelCase")]
58pub struct LeaveRequest {
59 pub world: WorldId,
60}
61
62#[derive(Clone, Debug, Deserialize, Serialize)]
63#[serde(rename_all = "camelCase")]
64pub struct SaveLocalWorldRequest {
65 pub world: WorldId,
66 pub path: PathBuf,
67}