lichess_api/model/external_engine/
mod.rs1pub mod acquire_analysis;
2pub mod analyse;
3pub mod create;
4pub mod delete;
5pub mod id;
6pub mod list;
7pub mod update;
8
9use serde::{Deserialize, Serialize};
10use serde_with::skip_serializing_none;
11
12#[derive(Clone, Debug, Deserialize, Serialize)]
13#[serde(rename_all = "camelCase")]
14pub struct ExternalEngine {
15 pub id: String,
16 pub name: String,
17 pub client_secret: String,
18 pub user_id: String,
19 pub max_threads: u32,
20 pub max_hash: u32,
21 pub default_depth: u8,
22 pub variants: Vec<String>,
23 pub provider_data: Option<String>,
24}
25
26#[derive(Clone, Debug, Serialize)]
27#[serde(rename_all = "camelCase")]
28#[skip_serializing_none]
29pub struct CreateExternalEngine {
30 pub name: String,
31 pub max_threads: u32,
32 pub max_hash: u32,
33 pub default_depth: u8,
34 pub variants: Option<Vec<String>>,
35 pub provider_secret: String,
36 pub provider_data: Option<String>,
37}
38
39#[derive(Clone, Debug, Serialize)]
40#[serde(rename_all = "camelCase")]
41#[skip_serializing_none]
42pub struct UpdateExternalEngine {
43 pub name: String,
44 pub max_threads: u32,
45 pub max_hash: u32,
46 pub default_depth: u8,
47 pub variants: Option<Vec<String>>,
48 pub provider_secret: String,
49 pub provider_data: Option<String>,
50}