// 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 Pid35001MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<MarktteilnehmerWrapped>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub referenz: Option<Referenz>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35001TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
}

pub type Pid35001Interchange =
    crate::model::Interchange<Pid35001MessageStammdaten, Pid35001TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35002MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<MarktteilnehmerWrapped>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub referenz: Option<Referenz>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35002TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
}

pub type Pid35002Interchange =
    crate::model::Interchange<Pid35002MessageStammdaten, Pid35002TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35003MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<MarktteilnehmerWrapped>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub referenz: Option<Referenz>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35003TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
    pub vorgang_zuordnung: Option<VorgangZuordnung>,
}

pub type Pid35003Interchange =
    crate::model::Interchange<Pid35003MessageStammdaten, Pid35003TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35004MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<MarktteilnehmerWrapped>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub referenz: Option<Referenz>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35004TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
    pub vorgang_zuordnung: Option<VorgangZuordnung>,
}

pub type Pid35004Interchange =
    crate::model::Interchange<Pid35004MessageStammdaten, Pid35004TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35005MessageStammdaten {
    pub ansprechpartner: Option<Ansprechpartner>,
    pub marktteilnehmer: Option<MarktteilnehmerWrapped>,
    pub marktteilnehmer_referenz: Option<Vec<MarktteilnehmerReferenz>>,
    pub nachricht: Option<Nachricht>,
    pub referenz: Option<Referenz>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid35005TransaktionStammdaten {
    pub vorgang: Option<Vorgang>,
}

pub type Pid35005Interchange =
    crate::model::Interchange<Pid35005MessageStammdaten, Pid35005TransaktionStammdaten>;
