lichess_api/model/external_engine/
mod.rs

1pub 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}