# easy_bimeh_landing
#
# This file was automatically generated by APIMATIC
# v2.0 ( https://apimatic.io ).

module EasyBimehLanding
  # StatusStatusCollections Model.
  class StatusStatusCollections < BaseModel
    # TODO: Write general description for this method
    # @return [String]
    attr_accessor :id

    # TODO: Write general description for this method
    # @return [String]
    attr_accessor :parent_id

    # TODO: Write general description for this method
    # @return [Integer]
    attr_accessor :status_type

    # TODO: Write general description for this method
    # @return [String]
    attr_accessor :title

    # TODO: Write general description for this method
    # @return [String]
    attr_accessor :icon_name

    # TODO: Write general description for this method
    # @return [String]
    attr_accessor :description

    # TODO: Write general description for this method
    # @return [Boolean]
    attr_accessor :editable

    # A mapping from model property names to API property names.
    def self.names
      @_hash = {} if @_hash.nil?
      @_hash['id'] = 'id'
      @_hash['parent_id'] = 'parentId'
      @_hash['status_type'] = 'statusType'
      @_hash['title'] = 'title'
      @_hash['icon_name'] = 'iconName'
      @_hash['description'] = 'description'
      @_hash['editable'] = 'editable'
      @_hash
    end

    def initialize(id = nil,
                   status_type = nil,
                   title = nil,
                   editable = nil,
                   parent_id = nil,
                   icon_name = nil,
                   description = nil)
      @id = id
      @parent_id = parent_id
      @status_type = status_type
      @title = title
      @icon_name = icon_name
      @description = description
      @editable = editable
    end

    # Creates an instance of the object from a hash.
    def self.from_hash(hash)
      return nil unless hash

      # Extract variables from the hash.
      id = hash['id']
      status_type = hash['statusType']
      title = hash['title']
      editable = hash['editable']
      parent_id = hash['parentId']
      icon_name = hash['iconName']
      description = hash['description']

      # Create object from extracted values.
      StatusStatusCollections.new(id,
                                  status_type,
                                  title,
                                  editable,
                                  parent_id,
                                  icon_name,
                                  description)
    end
  end
end
