  */
 
 
+import Foundation
+
+
 public struct Notification {
     
     public let message: Message

            
            var json = [:] as [String: AnyObject]
            
            // TargetPlatform --> String
            // Possible values: "A", "G", "M"
            var platformsAsStrings: [String] = []
            if platforms != nil {
                for platform in platforms! {
                    platformsAsStrings.append(platform.rawValue)
                }
            }
            
            json["deviceIds"] = deviceIds as? AnyObject
            json["platforms"] = !platformsAsStrings.isEmpty ? (platformsAsStrings as! AnyObject) : nil
            json["tagNames"] = tagNames as? AnyObject
            json["userIds"] = userIds as? AnyObject
            

                var json = [:] as [String: AnyObject]
                
                json["collapseKey"] = collapseKey as? AnyObject
                
                if let delay = delayWhileIdle {
                    #if os(OSX)
                        json["delayWhileIdle"] = delay ? "true" : "false"
                    #elseif os(Linux)
                        json["delayWhileIdle"] = delay ? ("true" as NSString) : ("false" as NSString)
                    #endif
                }
                
                json["payload"] = payload as? AnyObject
                json["priority"] = priority?.rawValue as? AnyObject
                json["sound"] = sound as? AnyObject
