# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class BillEntryBodyLine(Model):
    """BillEntryBodyLine.

    :param body_line_id: The body line identifier
    :type body_line_id: int
    :param caption: The body line's caption
    :type caption: str
    :param value:
    :type value: ~energycap.sdk.models.BillEntryBodyLineWithNounChild
    :param cost:
    :type cost: ~energycap.sdk.models.BillEntryBodyLineChild
    :param observation_type:
    :type observation_type:
     ~energycap.sdk.models.BillEntryObservationTypeChild
    """

    _attribute_map = {
        'body_line_id': {'key': 'bodyLineId', 'type': 'int'},
        'caption': {'key': 'caption', 'type': 'str'},
        'value': {'key': 'value', 'type': 'BillEntryBodyLineWithNounChild'},
        'cost': {'key': 'cost', 'type': 'BillEntryBodyLineChild'},
        'observation_type': {'key': 'observationType', 'type': 'BillEntryObservationTypeChild'},
    }

    def __init__(self, **kwargs):
        super(BillEntryBodyLine, self).__init__(**kwargs)
        self.body_line_id = kwargs.get('body_line_id', None)
        self.caption = kwargs.get('caption', None)
        self.value = kwargs.get('value', None)
        self.cost = kwargs.get('cost', None)
        self.observation_type = kwargs.get('observation_type', None)
