use serde::Serialize;
use super::ExtraFields;
#[derive(Debug, Clone, Serialize, Default, bon::Builder)]
#[builder(on(String, into))]
#[serde(remote = "Self", rename_all = "camelCase")]
pub struct HcaptchaTask {
#[serde(rename = "websiteURL")]
pub website_url: String,
pub website_key: String,
pub lang: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub proxy: Option<String>,
pub invisible: bool,
#[serde(rename = "rqdata", skip_serializing_if = "Option::is_none")]
pub rq_data: Option<String>,
#[serde(skip)]
#[builder(default)]
pub extra: ExtraFields,
}
#[derive(Debug, Clone, Serialize, Default, bon::Builder)]
#[builder(on(String, into))]
#[serde(remote = "Self", rename_all = "camelCase")]
pub struct HcaptchaClassificationTask {
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub images: Option<Vec<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub anchors: Option<Vec<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub question: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub module: Option<String>,
#[serde(skip)]
#[builder(default)]
pub extra: ExtraFields,
}