//
// Copyright (c) Double Symmetry GmbH
// Commercial use requires a license. See https://rntp.dev/pricing
//

#if canImport(UIKit)
import UIKit
#endif

enum SourceType {
  case stream
  case file
}

protocol AudioItem {
  var sourceUrl: String { get }
  var sourceType: SourceType { get }
  var headers: [String: String]? { get }
  var isLive: Bool { get }
  var title: String? { get }
  var artist: String? { get }
  var albumTitle: String? { get }
  #if canImport(UIKit)
  func getArtwork(_ handler: @escaping (UIImage?) -> Void)
  #endif
}
