/*
 * Binance Wallet REST API
 *
 * OpenAPI Specification for the Binance Wallet REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

#![allow(unused_imports)]
use crate::wallet::rest_api::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct DepositHistoryTravelRuleResponseInner {
    #[serde(rename = "trId", skip_serializing_if = "Option::is_none")]
    pub tr_id: Option<i64>,
    #[serde(rename = "tranId", skip_serializing_if = "Option::is_none")]
    pub tran_id: Option<i64>,
    #[serde(rename = "amount", skip_serializing_if = "Option::is_none")]
    pub amount: Option<String>,
    #[serde(rename = "coin", skip_serializing_if = "Option::is_none")]
    pub coin: Option<String>,
    #[serde(rename = "network", skip_serializing_if = "Option::is_none")]
    pub network: Option<String>,
    #[serde(rename = "depositStatus", skip_serializing_if = "Option::is_none")]
    pub deposit_status: Option<i64>,
    #[serde(rename = "travelRuleStatus", skip_serializing_if = "Option::is_none")]
    pub travel_rule_status: Option<i64>,
    #[serde(rename = "address", skip_serializing_if = "Option::is_none")]
    pub address: Option<String>,
    #[serde(rename = "addressTag", skip_serializing_if = "Option::is_none")]
    pub address_tag: Option<String>,
    #[serde(rename = "txId", skip_serializing_if = "Option::is_none")]
    pub tx_id: Option<String>,
    #[serde(rename = "insertTime", skip_serializing_if = "Option::is_none")]
    pub insert_time: Option<i64>,
    #[serde(rename = "transferType", skip_serializing_if = "Option::is_none")]
    pub transfer_type: Option<i64>,
    #[serde(rename = "confirmTimes", skip_serializing_if = "Option::is_none")]
    pub confirm_times: Option<String>,
    #[serde(rename = "unlockConfirm", skip_serializing_if = "Option::is_none")]
    pub unlock_confirm: Option<i64>,
    #[serde(rename = "walletType", skip_serializing_if = "Option::is_none")]
    pub wallet_type: Option<i64>,
    #[serde(
        rename = "requireQuestionnaire",
        skip_serializing_if = "Option::is_none"
    )]
    pub require_questionnaire: Option<bool>,
    #[serde(rename = "questionnaire", skip_serializing_if = "Option::is_none")]
    pub questionnaire: Option<String>,
}

impl DepositHistoryTravelRuleResponseInner {
    #[must_use]
    pub fn new() -> DepositHistoryTravelRuleResponseInner {
        DepositHistoryTravelRuleResponseInner {
            tr_id: None,
            tran_id: None,
            amount: None,
            coin: None,
            network: None,
            deposit_status: None,
            travel_rule_status: None,
            address: None,
            address_tag: None,
            tx_id: None,
            insert_time: None,
            transfer_type: None,
            confirm_times: None,
            unlock_confirm: None,
            wallet_type: None,
            require_questionnaire: None,
            questionnaire: None,
        }
    }
}
