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

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid27001TransaktionStammdaten {
    pub preis: Option<Preis>,
    pub preisgruppe: Option<Preisgruppe>,
    pub preisposition: Option<Preisposition>,
}

pub type Pid27001Interchange =
    crate::model::Interchange<Pid27001MessageStammdaten, Pid27001TransaktionStammdaten>;

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

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid27002TransaktionStammdaten {
    pub preis: Option<Preis>,
    pub preisgruppe: Option<Preisgruppe>,
    pub preisposition: Option<Preisposition>,
}

pub type Pid27002Interchange =
    crate::model::Interchange<Pid27002MessageStammdaten, Pid27002TransaktionStammdaten>;

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

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid27003TransaktionStammdaten {
    pub preis: Option<Preis>,
    pub preisgruppe: Option<Preisgruppe>,
    pub preisposition: Option<Preisposition>,
}

pub type Pid27003Interchange =
    crate::model::Interchange<Pid27003MessageStammdaten, Pid27003TransaktionStammdaten>;
