// Auto-generated by automapper-generator. Do not edit.

#![allow(unused_imports)]

use super::entities::*;
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid31002MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub rechnungssumme: Option<Rechnungssumme>,
    pub rechnungssumme_referenz: Option<RechnungssummeReferenz>,
    pub referenz: Option<Referenz>,
    pub steuersatz_summe: Option<SteuersatzSumme>,
    pub waehrung: Option<Waehrung>,
    pub zahlungsbedingungen: Option<Zahlungsbedingungen>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid31002TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
    pub vorgang_abschlag: Option<VorgangAbschlag>,
    pub vorgang_abschlag_betrag: Option<VorgangAbschlagBetrag>,
    pub vorgang_abschlag_prozent: Option<VorgangAbschlagProzent>,
    pub vorgang_betrag: Option<VorgangBetrag>,
    pub vorgang_preis: Option<VorgangPreis>,
    pub vorgang_steuersatz: Option<VorgangSteuersatz>,
    pub vorgang_zuschlag: Option<VorgangZuschlag>,
    pub vorgang_zuschlag_prozent: Option<VorgangZuschlagProzent>,
}

pub type Pid31002Interchange =
    crate::model::Interchange<Pid31002MessageStammdaten, Pid31002TransaktionStammdaten>;
