u_sdk/translate/
types_rs.rs1use crate::translate::Client;
2use bon::Builder;
3use serde::{Deserialize, Serialize};
4
5#[derive(Builder, Serialize)]
8#[serde(rename_all = "PascalCase")]
9pub struct Translate<'a> {
10 #[builder(start_fn)]
11 #[serde(skip_serializing)]
12 pub(crate) client: &'a Client,
13
14 format_type: &'a str,
16 target_language: &'a str,
17 source_language: &'a str,
18 pub(crate) source_text: &'a str,
19 pub(crate) scene: &'a str,
20 #[serde(skip_serializing_if = "Option::is_none")]
21 context: Option<&'a str>,
22}
23
24#[derive(Deserialize, Debug)]
25#[serde(rename_all = "PascalCase")]
26pub struct TranslateResponse {
27 pub message: Option<String>,
28 #[serde(rename = "RequestId")]
29 pub request_id: String,
30 pub data: Option<TranslateData>,
31 pub code: String,
32}
33
34#[derive(Deserialize, Debug)]
35#[serde(rename_all = "PascalCase")]
36pub struct TranslateData {
37 pub word_count: String,
38 pub translated: String,
39 pub detected_language: Option<String>,
40}
41#[derive(Builder)]
45pub struct GetDetectLanguage<'a> {
46 #[builder(start_fn)]
47 pub(crate) client: &'a Client,
48 pub(crate) source_text: &'a str,
49}
50#[derive(Deserialize)]
51#[serde(rename_all = "PascalCase")]
52pub(crate) struct GetDetectLanguageResp {
53 pub detected_language: String,
54}
55