text: # -*- coding: utf-8 -*-
  #
  # This class was auto-generated.
  #
  from onlinepayments.sdk.data_object import DataObject
  from onlinepayments.sdk.domain.amount_of_money import AmountOfMoney
  from onlinepayments.sdk.domain.payment_references import PaymentReferences
  
  
  class RefundRequest(DataObject):
      __amount_of_money = None
      __references = None
  
      @property
      def amount_of_money(self) -> AmountOfMoney:
          """
          | Object containing amount and ISO currency code attributes
  
          Type: :class:`onlinepayments.sdk.domain.amount_of_money.AmountOfMoney`
          """
          return self.__amount_of_money
  
      @amount_of_money.setter
      def amount_of_money(self, value: AmountOfMoney):
          self.__amount_of_money = value
  
      @property
      def references(self) -> PaymentReferences:
          """
          | Object that holds all reference properties that are linked to this transaction
  
          Type: :class:`onlinepayments.sdk.domain.payment_references.PaymentReferences`
          """
          return self.__references
  
      @references.setter
      def references(self, value: PaymentReferences):
          self.__references = value
  
      def to_dictionary(self):
          dictionary = super(RefundRequest, self).to_dictionary()
          if self.amount_of_money is not None:
              dictionary['amountOfMoney'] = self.amount_of_money.to_dictionary()
          if self.references is not None:
              dictionary['references'] = self.references.to_dictionary()
          return dictionary
  
      def from_dictionary(self, dictionary):
          super(RefundRequest, self).from_dictionary(dictionary)
          if 'amountOfMoney' in dictionary:
              if not isinstance(dictionary['amountOfMoney'], dict):
                  raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['amountOfMoney']))
              value = AmountOfMoney()
              self.amount_of_money = value.from_dictionary(dictionary['amountOfMoney'])
          if 'references' in dictionary:
              if not isinstance(dictionary['references'], dict):
                  raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['references']))
              value = PaymentReferences()
              self.references = value.from_dictionary(dictionary['references'])
          return self
  