//
// Awards.swift
//
// Generated by swagger-codegen
// https://github.com/swagger-api/swagger-codegen
//

import Foundation


/** CardContainer composed by a list of awards with nominees and winners */
open class Awards: CardContainer {
    public enum TypeOfContainer: String { 
        case RAWTEXT_ENUMTEXT = "'{raw=text, enum=Text}'"
        case RAWLISTING_ENUMLISTING = "'{raw=listing, enum=Listing}'"
        case RAWRATING_ENUMRATING = "'{raw=rating, enum=Rating}'"
        case RAWMAP_ENUMMAP = "'{raw=map, enum=Map}'"
        case RAWLINK_ENUMLINK = "'{raw=link, enum=Link}'"
        case RAWAWARDS_ENUMAWARDS = "'{raw=awards, enum=Awards}'"
        case RAWCATALOG_ENUMCATALOG = "'{raw=catalog, enum=Catalog}'"
        case RAWSEASONS_ENUMSEASONS = "'{raw=seasons, enum=Seasons}'"
        case RAWIMAGE_ENUMIMAGE = "'{raw=image, enum=Image}'"
    }
    public enum ContentType: String { 
        case RAWAWARDS_ENUMAWARDS = "'{raw=awards, enum=Awards}'"
    }
    /** Card container format type, determines the format of the &#39;data&#39; field */
    public var typeOfContainer: TypeOfContainer?
    /** Awards container content type */
    public var contentType: ContentType?
    public var data: [AwardsData]?

    

    // MARK: JSONEncodable
    override open func encodeToJSON() -> Any {
        var nillableDictionary = super.encodeToJSON() as? [String:Any?] ?? [String:Any?]()
        nillableDictionary["typeOfContainer"] = self.typeOfContainer?.rawValue
        nillableDictionary["content_type"] = self.contentType?.rawValue
        nillableDictionary["data"] = self.data?.encodeToJSON()
        let dictionary: [String:Any] = APIHelper.rejectNil(nillableDictionary) ?? [:]
        return dictionary
    }
}
