1use derive_more::{Deref, DerefMut, From, Into};
5use nil_core::continent::coord::Coord;
6use nil_core::infrastructure::Infrastructure;
7use nil_core::infrastructure::building::r#impl::academy::recruit_queue::AcademyRecruitQueue;
8use nil_core::infrastructure::building::r#impl::prefecture::build_queue::PrefectureBuildQueue;
9use nil_core::infrastructure::building::r#impl::stable::recruit_queue::StableRecruitQueue;
10use nil_core::infrastructure::storage::OverallStorageCapacity;
11use serde::{Deserialize, Serialize};
12
13#[cfg(feature = "axum")]
14use nil_payload_macros::IntoJsonResponse;
15
16#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
17#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
18#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
19#[cfg_attr(feature = "typescript", ts(export))]
20pub struct CheatGetAcademyRecruitQueueResponse(pub AcademyRecruitQueue);
21
22#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
23#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
24#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
25#[cfg_attr(feature = "typescript", ts(export))]
26pub struct CheatGetAcademyRecruitQueuesResponse(pub Vec<CheatGetAcademyRecruitQueuesResponseItem>);
27
28#[derive(Clone, Debug, Deserialize, Serialize)]
29#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
30#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
31#[cfg_attr(feature = "typescript", ts(export))]
32pub struct CheatGetAcademyRecruitQueuesResponseItem {
33 pub coord: Coord,
34 pub queue: AcademyRecruitQueue,
35}
36
37#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
38#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
39#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
40#[cfg_attr(feature = "typescript", ts(export))]
41pub struct CheatGetAllAcademyRecruitQueuesResponse(
42 pub Vec<CheatGetAllAcademyRecruitQueuesResponseItem>,
43);
44
45#[derive(Clone, Debug, Deserialize, Serialize)]
46#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
47#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
48#[cfg_attr(feature = "typescript", ts(export))]
49pub struct CheatGetAllAcademyRecruitQueuesResponseItem {
50 pub coord: Coord,
51 pub queue: AcademyRecruitQueue,
52}
53
54#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
55#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
56#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
57#[cfg_attr(feature = "typescript", ts(export))]
58pub struct CheatGetAllPrefectureBuildQueuesResponse(
59 pub Vec<CheatGetAllPrefectureBuildQueuesResponseItem>,
60);
61
62#[derive(Clone, Debug, Deserialize, Serialize)]
63#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
64#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
65#[cfg_attr(feature = "typescript", ts(export))]
66pub struct CheatGetAllPrefectureBuildQueuesResponseItem {
67 pub coord: Coord,
68 pub queue: PrefectureBuildQueue,
69}
70
71#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
72#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
73#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
74#[cfg_attr(feature = "typescript", ts(export))]
75pub struct CheatGetAllStableRecruitQueuesResponse(
76 pub Vec<CheatGetAllStableRecruitQueuesResponseItem>,
77);
78
79#[derive(Clone, Debug, Deserialize, Serialize)]
80#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
81#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
82#[cfg_attr(feature = "typescript", ts(export))]
83pub struct CheatGetAllStableRecruitQueuesResponseItem {
84 pub coord: Coord,
85 pub queue: StableRecruitQueue,
86}
87
88#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
89#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
90#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
91#[cfg_attr(feature = "typescript", ts(export))]
92pub struct CheatGetInfrastructureResponse(pub Infrastructure);
93
94#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
95#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
96#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
97#[cfg_attr(feature = "typescript", ts(export))]
98pub struct CheatGetPrefectureBuildQueueResponse(pub PrefectureBuildQueue);
99
100#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
101#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
102#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
103#[cfg_attr(feature = "typescript", ts(export))]
104pub struct CheatGetPrefectureBuildQueuesResponse(
105 pub Vec<CheatGetPrefectureBuildQueuesResponseItem>,
106);
107
108#[derive(Clone, Debug, Deserialize, Serialize)]
109#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
110#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
111#[cfg_attr(feature = "typescript", ts(export))]
112pub struct CheatGetPrefectureBuildQueuesResponseItem {
113 pub coord: Coord,
114 pub queue: PrefectureBuildQueue,
115}
116
117#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
118#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
119#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
120#[cfg_attr(feature = "typescript", ts(export))]
121pub struct CheatGetStableRecruitQueueResponse(pub StableRecruitQueue);
122
123#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
124#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
125#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
126#[cfg_attr(feature = "typescript", ts(export))]
127pub struct CheatGetStableRecruitQueuesResponse(pub Vec<CheatGetStableRecruitQueuesResponseItem>);
128
129#[derive(Clone, Debug, Deserialize, Serialize)]
130#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
131#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
132#[cfg_attr(feature = "typescript", ts(export))]
133pub struct CheatGetStableRecruitQueuesResponseItem {
134 pub coord: Coord,
135 pub queue: StableRecruitQueue,
136}
137
138#[derive(Clone, Debug, Deref, DerefMut, From, Into, Deserialize, Serialize)]
139#[cfg_attr(feature = "axum", derive(IntoJsonResponse))]
140#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
141#[cfg_attr(feature = "typescript", ts(export))]
142pub struct CheatGetStorageCapacityResponse(pub OverallStorageCapacity);