package mg.dot.feufaro.musicXML

import kotlinx.serialization.Serializable
import nl.adaptivity.xmlutil.serialization.XmlElement
import nl.adaptivity.xmlutil.serialization.XmlSerialName

@Serializable
@XmlSerialName("barline ", "", "")
data class MXBarLine (
    @Serializable var coda: String? = null,
    @Serializable var divisions: String? = null,
    @Serializable var id: String? = null,
    @Serializable var location: String? = null,
    @Serializable var segno: String? = null,
    @Serializable
    @XmlElement
    @XmlSerialName("bar-style", "", "")
    var barStyle: String? = null,
    @Serializable
    @XmlElement
    var footnote: MXFootNote? = null,
    @Serializable
    @XmlElement
    var level: MXLevel? = null,
    @Serializable
    @XmlElement
    @XmlSerialName("wavy-line", "", "")
    var wavyLine: MXWavyLine? = null,
    @Serializable
    @XmlElement
    @XmlSerialName("segno", "", "")
    var segnoElement: String? = null, // @todo MXSegno
    @Serializable
    @XmlElement
    var fermata: String? = null, // @todo MXFermata
    @Serializable
    @XmlElement
    var ending: MXEnding? = null,
    @Serializable
    @XmlElement
    var repeat: MXRepeat? = null,
)
