   Returns an object containing a key/value pairs (language/value) for each language.
   @param {array} types Entire types CSV as an array of records.
   @param {object} attributeDefinitions The object containing all attribute definitions
+  @pearm {object} defaultAttributeDefinition If given, the default attribute will be added to all resulting product typ definitions.
   @return Array containing product type definition objects
   ###
-  _createProductTypesDefinitions: (types, attributeDefinitions) ->
+  _createProductTypesDefinitions: (types, attributeDefinitions, defaultAttributeDefinition) ->
 
     productTypeDefinitions = []
 

        name: row['name']
        description: row['description']

      productTypeDefinitions.push productTypeDefinition

    productTypeDefinitions

  ###
  Outputs given product definition as a file in JSON format.
  @param {object} productTypeDefinition The object containing product type definition.
  @param {string} target The target folder for the file.
  @param {string} prefix The prefix will be added to the resulting file name.
  ###
  _writeFile: (productTypeDefinition, target, prefix = 'product-type') ->

    prettified = JSON.stringify productTypeDefinition, null, 4

    fileName = "#{target}/#{prefix}-#{productTypeDefinition[PRODUCT_TYPE_NAME]}.json"
    fs.writeFile fileName, prettified, (error) ->
      if error
        console.log "Error while writing file #{fileName}: #{error}"
