         excludeArchived: Bool = false,
         cursor: String? = nil,
         limit: Int? = nil,
-        types: [String]? = nil,
+        types: [ConversationType]? = nil,
         success: ((_ channels: [[String: Any]]?) -> Void)?,
         failure: FailureClosure?
     ) {

            parameters["limit"] = limit
        }
        if let types = types {
            parameters["types"] = types.joined(separator: ",")
        }
        networkInterface.request(.conversationsList, parameters: parameters, successClosure: {(response) in
            success?(response["channels"] as? [[String: Any]])


    fileprivate enum ChannelType: String {
        case channel, group, im
    }

    public enum ConversationType: String {
        case public_channel, private_channel, mpim, im
    }

    fileprivate let networkInterface: NetworkInterface
