#[allow(unused_imports, reason = "Some modules may have empty `options` field")]
use cdk_ansible::OptU;
use cdk_ansible::TaskModule;
use serde::Serialize;
#[derive(Clone, Debug, Serialize)]
pub struct Module {
#[serde(rename = "ansible.builtin.user")]
pub module: Args,
}
impl TaskModule for Module {}
#[derive(Clone, Debug, Serialize)]
pub struct Args {
#[serde(flatten)]
pub options: Opt,
}
#[derive(Clone, Debug, Default, Serialize)]
#[serde(rename_all = "snake_case")]
pub struct Opt {
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub append: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub authorization: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub comment: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub create_home: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub expires: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub force: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub generate_ssh_key: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub group: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub groups: OptU<Vec<::serde_json::Value>>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub hidden: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub home: OptU<std::path::PathBuf>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub local: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub login_class: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub move_home: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub name: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub non_unique: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password_expire_account_disable: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password_expire_max: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password_expire_min: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password_expire_warn: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub password_lock: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub profile: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub remove: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub role: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub seuser: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub shell: OptU<std::path::PathBuf>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub skeleton: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub ssh_key_bits: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub ssh_key_comment: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub ssh_key_file: OptU<std::path::PathBuf>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub ssh_key_passphrase: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub ssh_key_type: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub state: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub system: OptU<bool>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub uid: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub uid_max: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub uid_min: OptU<i64>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub umask: OptU<String>,
#[serde(default = "OptU::default", skip_serializing_if = "OptU::is_unset")]
pub update_password: OptU<String>,
}