← Back to report

MusicKit.swiftinterface 3,763 rows

1// swift-interface-format-version: 1.0
2// swift-compiler-version: Apple Swift version 6.3.2 effective-5.10 (swiftlang-6.3.2.1.2 clang-2100.0.123.2)
3// swift-module-flags: -target arm64e-apple-ios26.5 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -Osize -library-level api -enable-experimental-concurrency -enable-upcoming-feature MemberImportVisibility -enable-experimental-feature DebugDescriptionMacro -enable-bare-slash-regex -user-module-version 4025.610.1 -module-name MusicKit
4// swift-module-flags-ignorable: -formal-cxx-interoperability-mode=off -interface-compiler-version 6.3.2
5import Combine
6import CoreGraphics
7import DeveloperToolsSupport
1// swift-interface-format-version: 1.0
2// swift-compiler-version: Apple Swift version 6.4 effective-5.10 (swiftlang-6.4.0.19.103 clang-2100.3.19.4)
3// swift-module-flags: -target arm64e-apple-ios27.0 -enable-objc-interop -enable-library-evolution -language-mode 5 -Osize -library-level api -enable-upcoming-feature MemberImportVisibility -enable-experimental-feature DebugDescriptionMacro -enable-bare-slash-regex -user-module-version 4026.100.68 -module-name MusicKit
4// swift-module-flags-ignorable: -formal-cxx-interoperability-mode=off -interface-compiler-version 6.4
5import Combine
6import CoreGraphics
7import DeveloperToolsSupport
… 4 unchanged lines …
12import _StringProcessing
13import _SwiftConcurrencyShims
14@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
15public struct Artwork : Swift.Equatable, Swift.Hashable, Swift.Sendable {
16 public let maximumWidth: Swift.Int
17 public let maximumHeight: Swift.Int
18 public let alternateText: Swift.String?
19 public let backgroundColor: CoreGraphics.CGColor?
20 public let primaryTextColor: CoreGraphics.CGColor?
21 public let secondaryTextColor: CoreGraphics.CGColor?
22 public let tertiaryTextColor: CoreGraphics.CGColor?
23 public let quaternaryTextColor: CoreGraphics.CGColor?
24 public func url(width: Swift.Int, height: Swift.Int) -> Foundation.URL?
25 public static func == (a: MusicKit.Artwork, b: MusicKit.Artwork) -> Swift.Bool
26 public func hash(into hasher: inout Swift.Hasher)
27 public var hashValue: Swift.Int {
28 get
29 }
30}
31@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
32extension MusicKit.Artwork : Swift.Codable {
33 public init(from decoder: any Swift.Decoder) throws
34 public func encode(to encoder: any Swift.Encoder) throws
35}
36@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
37extension MusicKit.Artwork : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
38 public var description: Swift.String {
39 get
40 }
41 public var debugDescription: Swift.String {
42 get
43 }
44}
45@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
46public struct MusicAuthorization {
47 public static var currentStatus: MusicKit.MusicAuthorization.Status {
48 get
49 }
50 public static func request() async -> MusicKit.MusicAuthorization.Status
51}
52@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
53extension MusicKit.MusicAuthorization {
54 public enum Status : Swift.String, Swift.Sendable {
55 case notDetermined
56 case denied
57 case restricted
58 case authorized
59 public init?(rawValue: Swift.String)
60 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
61 public typealias RawValue = Swift.String
62 public var rawValue: Swift.String {
63 get
64 }
65 }
66}
67@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
68extension MusicKit.MusicAuthorization.Status : Swift.CustomStringConvertible {
69 public var description: Swift.String {
70 get
71 }
72}
73@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
74public struct MusicDataRequest : Swift.Equatable, Swift.Hashable, Swift.Sendable {
75 public init(urlRequest: Foundation.URLRequest)
76 public let urlRequest: Foundation.URLRequest
77 public func response() async throws -> MusicKit.MusicDataResponse
78 public static var currentCountryCode: Swift.String {
79 get async throws
80 }
81 public static func == (a: MusicKit.MusicDataRequest, b: MusicKit.MusicDataRequest) -> Swift.Bool
82 public func hash(into hasher: inout Swift.Hasher)
83 public var hashValue: Swift.Int {
84 get
85 }
86}
87@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
88extension MusicKit.MusicDataRequest : Swift.CustomStringConvertible {
89 public var description: Swift.String {
90 get
91 }
92}
93@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
94extension MusicKit.MusicDataRequest {
95 public struct Error : Swift.Error, Swift.Sendable {
96 public let status: Swift.Int
97 public let code: Swift.Int
98 public let title: Swift.String
99 public let detailText: Swift.String
100 public let id: Swift.String
101 public let source: MusicKit.MusicDataRequest.Error.Source?
102 public let originalResponse: MusicKit.MusicDataResponse
103 public enum Source : Swift.Equatable, Swift.Sendable {
104 case parameter(Swift.String)
105 public static func == (a: MusicKit.MusicDataRequest.Error.Source, b: MusicKit.MusicDataRequest.Error.Source) -> Swift.Bool
106 }
107 }
108}
109@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
110extension MusicKit.MusicDataRequest.Error : Swift.CustomStringConvertible {
111 public var description: Swift.String {
112 get
113 }
114}
115@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
116extension MusicKit.MusicDataRequest.Error.Source : Swift.CustomStringConvertible {
117 public var description: Swift.String {
118 get
119 }
120}
121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
122public struct MusicDataResponse : Swift.Equatable, Swift.Hashable, Swift.Sendable {
123 public let data: Foundation.Data
124 public let urlResponse: Foundation.HTTPURLResponse
125 public static func == (a: MusicKit.MusicDataResponse, b: MusicKit.MusicDataResponse) -> Swift.Bool
126 public func hash(into hasher: inout Swift.Hasher)
127 public var hashValue: Swift.Int {
128 get
129 }
130}
131@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
132extension MusicKit.MusicDataResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
133 public var description: Swift.String {
134 get
135 }
136 public var debugDescription: Swift.String {
137 get
138 }
139}
140@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
141public struct TitledSection : Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
142 public let title: Swift.String
143 public var id: MusicKit.MusicItemID {
144 get
145 }
146 public static func == (a: MusicKit.TitledSection, b: MusicKit.TitledSection) -> Swift.Bool
147 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
148 public typealias ID = MusicKit.MusicItemID
149 public func hash(into hasher: inout Swift.Hasher)
150 public var hashValue: Swift.Int {
151 get
152 }
153}
154@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
155extension MusicKit.TitledSection : MusicKit.MusicLibrarySectionRequestable {
156}
157@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
158public struct MusicLibraryRequest<MusicItemType> where MusicItemType : MusicKit.MusicLibraryRequestable {
159 public init()
160 public var limit: Swift.Int
161 public var offset: Swift.Int
162 public var includeOnlyDownloadedContent: Swift.Bool
163 public mutating func filter<RelatedMusicItemType>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, MusicKit.MusicItemCollection<RelatedMusicItemType>?>, contains relatedItem: RelatedMusicItemType) where RelatedMusicItemType : MusicKit.MusicItem
164 public mutating func filter(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Swift.String>, contains text: Swift.String)
165 public mutating func filter(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Swift.String?>, contains text: Swift.String)
166 public mutating func filter<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value>, equalTo value: Value) where Value : MusicKit.MusicLibraryRequestFilterValueEquatable
167 public mutating func filter<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value?>, equalTo value: Value?) where Value : MusicKit.MusicLibraryRequestFilterValueEquatable
168 public mutating func filter<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value>, memberOf values: [Value]) where Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
169 public mutating func filter<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value?>, memberOf values: [Value?]) where Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
170 public mutating func filter(text: Swift.String)
171 public mutating func sort<Value>(by keyPath: Swift.KeyPath<MusicItemType.LibrarySortProperties, Value>, ascending: Swift.Bool)
172 public func response() async throws -> MusicKit.MusicLibraryResponse<MusicItemType>
173}
174@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
175public protocol MusicLibraryRequestable : MusicKit.MusicItem {
176 associatedtype LibraryFilter
177 associatedtype LibrarySortProperties
178}
12import _StringProcessing
13import _SwiftConcurrencyShims
14@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
15public struct Artwork : Swift::Equatable, Swift::Hashable, Swift::Sendable {
16 public let maximumWidth: Swift::Int
17 public let maximumHeight: Swift::Int
18 public let alternateText: Swift::String?
19 public let backgroundColor: CoreGraphics::CGColor?
20 public let primaryTextColor: CoreGraphics::CGColor?
21 public let secondaryTextColor: CoreGraphics::CGColor?
22 public let tertiaryTextColor: CoreGraphics::CGColor?
23 public let quaternaryTextColor: CoreGraphics::CGColor?
24 public func url(width: Swift::Int, height: Swift::Int) -> Foundation::URL?
25 public static func == (a: MusicKit::Artwork, b: MusicKit::Artwork) -> Swift::Bool
26 public func hash(into hasher: inout Swift::Hasher)
27 public var hashValue: Swift::Int {
28 get
29 }
30}
31@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
32extension MusicKit::Artwork : Swift::Codable {
33 public init(from decoder: any Swift::Decoder) throws
34 public func encode(to encoder: any Swift::Encoder) throws
35}
36@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
37extension MusicKit::Artwork : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
38 public var description: Swift::String {
39 get
40 }
41 public var debugDescription: Swift::String {
42 get
43 }
44}
45@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
46public struct MusicAuthorization {
47 public static var currentStatus: MusicKit::MusicAuthorization.MusicKit::Status {
48 get
49 }
50 public static func request() async -> MusicKit::MusicAuthorization.MusicKit::Status
51}
52@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
53extension MusicKit::MusicAuthorization {
54 public enum Status : Swift::String, Swift::Sendable {
55 case notDetermined
56 case denied
57 case restricted
58 case authorized
59 public init?(rawValue: Swift::String)
60 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
61 public typealias RawValue = Swift::String
62 public var rawValue: Swift::String {
63 get
64 }
65 }
66}
67@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
68extension MusicKit::MusicAuthorization.MusicKit::Status : Swift::CustomStringConvertible {
69 public var description: Swift::String {
70 get
71 }
72}
73@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
74public struct MusicDataRequest : Swift::Equatable, Swift::Hashable, Swift::Sendable {
75 public init(urlRequest: Foundation::URLRequest)
76 public let urlRequest: Foundation::URLRequest
77 public func response() async throws -> MusicKit::MusicDataResponse
78 public static var currentCountryCode: Swift::String {
79 get async throws
80 }
81 public static func == (a: MusicKit::MusicDataRequest, b: MusicKit::MusicDataRequest) -> Swift::Bool
82 public func hash(into hasher: inout Swift::Hasher)
83 public var hashValue: Swift::Int {
84 get
85 }
86}
87@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
88extension MusicKit::MusicDataRequest : Swift::CustomStringConvertible {
89 public var description: Swift::String {
90 get
91 }
92}
93@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
94extension MusicKit::MusicDataRequest {
95 public struct Error : Swift::Error, Swift::Sendable {
96 public let status: Swift::Int
97 public let code: Swift::Int
98 public let title: Swift::String
99 public let detailText: Swift::String
100 public let id: Swift::String
101 public let source: MusicKit::MusicDataRequest.MusicKit::Error.MusicKit::Source?
102 public let originalResponse: MusicKit::MusicDataResponse
103 public enum Source : Swift::Equatable, Swift::Sendable {
104 case parameter(Swift::String)
105 public static func == (a: MusicKit::MusicDataRequest.MusicKit::Error.MusicKit::Source, b: MusicKit::MusicDataRequest.MusicKit::Error.MusicKit::Source) -> Swift::Bool
106 }
107 }
108}
109@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
110extension MusicKit::MusicDataRequest.MusicKit::Error : Swift::CustomStringConvertible {
111 public var description: Swift::String {
112 get
113 }
114}
115@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
116extension MusicKit::MusicDataRequest.MusicKit::Error.MusicKit::Source : Swift::CustomStringConvertible {
117 public var description: Swift::String {
118 get
119 }
120}
121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
122public struct MusicDataResponse : Swift::Equatable, Swift::Hashable, Swift::Sendable {
123 public let data: Foundation::Data
124 public let urlResponse: Foundation::HTTPURLResponse
125 public static func == (a: MusicKit::MusicDataResponse, b: MusicKit::MusicDataResponse) -> Swift::Bool
126 public func hash(into hasher: inout Swift::Hasher)
127 public var hashValue: Swift::Int {
128 get
129 }
130}
131@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
132extension MusicKit::MusicDataResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
133 public var description: Swift::String {
134 get
135 }
136 public var debugDescription: Swift::String {
137 get
138 }
139}
140@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
141public struct TitledSection : Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
142 public let title: Swift::String
143 public var id: MusicKit::MusicItemID {
144 get
145 }
146 public static func == (a: MusicKit::TitledSection, b: MusicKit::TitledSection) -> Swift::Bool
147 @available(macOS 14.0, iOS 16.0, tvOS 16.0, watchOS 9.0, macCatalyst 17.0, visionOS 1.0, *)
148 public typealias ID = MusicKit::MusicItemID
149 public func hash(into hasher: inout Swift::Hasher)
150 public var hashValue: Swift::Int {
151 get
152 }
153}
154@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
155extension MusicKit::TitledSection : MusicKit::MusicLibrarySectionRequestable {
156}
157@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
158public struct MusicLibraryRequest<MusicItemType> where MusicItemType : MusicKit::MusicLibraryRequestable {
159 public init()
160 public var limit: Swift::Int
161 public var offset: Swift::Int
162 public var includeOnlyDownloadedContent: Swift::Bool
163 public mutating func filter<RelatedMusicItemType>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, MusicKit::MusicItemCollection<RelatedMusicItemType>?>, contains relatedItem: RelatedMusicItemType) where RelatedMusicItemType : MusicKit::MusicItem
164 public mutating func filter(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Swift::String>, contains text: Swift::String)
165 public mutating func filter(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Swift::String?>, contains text: Swift::String)
166 public mutating func filter<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value>, equalTo value: Value) where Value : MusicKit::MusicLibraryRequestFilterValueEquatable
167 public mutating func filter<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value?>, equalTo value: Value?) where Value : MusicKit::MusicLibraryRequestFilterValueEquatable
168 public mutating func filter<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value>, memberOf values: [Value]) where Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
169 public mutating func filter<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value?>, memberOf values: [Value?]) where Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
170 public mutating func filter(text: Swift::String)
171 public mutating func sort<Value>(by keyPath: Swift::KeyPath<MusicItemType.LibrarySortProperties, Value>, ascending: Swift::Bool)
172 public func response() async throws -> MusicKit::MusicLibraryResponse<MusicItemType>
173}
174@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
175public protocol MusicLibraryRequestable : MusicKit::MusicItem {
176 associatedtype LibraryFilter
177 associatedtype LibrarySortProperties
178}
… 4 unchanged lines …
183public protocol MusicLibraryRequestFilterValueEquatable {
184}
185@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
186extension Swift.Bool : MusicKit.MusicLibraryRequestFilterValueEquatable {
187}
188@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
189extension MusicKit.MusicItemID : MusicKit.MusicLibraryRequestFilterValueEquatable {
190}
191@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
192extension Swift.String : MusicKit.MusicLibraryRequestFilterValueEquatable {
193}
194@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
195public protocol MusicLibraryRequestFilterValueMembershipComparable {
196}
197@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
198extension MusicKit.MusicItemID : MusicKit.MusicLibraryRequestFilterValueMembershipComparable {
199}
200@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
201public struct MusicLibraryResponse<MusicItemType> where MusicItemType : MusicKit.MusicItem {
202 public let items: MusicKit.MusicItemCollection<MusicItemType>
203}
204@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
205extension MusicKit.MusicLibraryResponse : Swift.Equatable where MusicItemType : Swift.Equatable {
206 public static func == (a: MusicKit.MusicLibraryResponse<MusicItemType>, b: MusicKit.MusicLibraryResponse<MusicItemType>) -> Swift.Bool
207}
208@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
209extension MusicKit.MusicLibraryResponse : Swift.Hashable where MusicItemType : Swift.Hashable {
210 public func hash(into hasher: inout Swift.Hasher)
211 public var hashValue: Swift.Int {
212 get
213 }
214}
215@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
216extension MusicKit.MusicLibraryResponse : Swift.Sendable {
217}
218@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
219extension MusicKit.MusicLibraryResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
220 public var description: Swift.String {
221 get
222 }
223 public var debugDescription: Swift.String {
224 get
225 }
226}
227@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
228@dynamicMemberLookup public struct MusicLibrarySection<SectionType, MusicItemType> where SectionType : MusicKit.MusicLibrarySectionRequestable, MusicItemType : MusicKit.MusicLibraryRequestable {
229 public let items: MusicKit.MusicItemCollection<MusicItemType>
230 public subscript<T>(dynamicMember keyPath: Swift.KeyPath<SectionType, T>) -> T {
231 get
232 }
233}
234@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
235extension MusicKit.MusicLibrarySection : Swift.Identifiable {
236 public var id: MusicKit.MusicItemID {
237 get
238 }
239 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
240 public typealias ID = MusicKit.MusicItemID
241}
242@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
243extension MusicKit.MusicLibrarySection : Swift.Equatable where SectionType : Swift.Equatable, MusicItemType : Swift.Equatable {
244 public static func == (a: MusicKit.MusicLibrarySection<SectionType, MusicItemType>, b: MusicKit.MusicLibrarySection<SectionType, MusicItemType>) -> Swift.Bool
245}
246@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
247extension MusicKit.MusicLibrarySection : Swift.Hashable where SectionType : Swift.Hashable, MusicItemType : Swift.Hashable {
248 public func hash(into hasher: inout Swift.Hasher)
249 public var hashValue: Swift.Int {
250 get
251 }
252}
253@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
254extension MusicKit.MusicLibrarySection : Swift.Sendable where SectionType : Swift.Sendable {
255}
256@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
257extension MusicKit.MusicLibrarySection : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
258 public var description: Swift.String {
259 get
260 }
261 public var debugDescription: Swift.String {
262 get
263 }
264}
265@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
266public struct MusicLibrarySectionedRequest<SectionType, MusicItemType> where SectionType : MusicKit.MusicLibrarySectionRequestable, MusicItemType : MusicKit.MusicLibraryRequestable {
267 public init()
268 public var limit: Swift.Int
269 public var offset: Swift.Int
270 public var includeOnlyDownloadedContent: Swift.Bool
271 public mutating func filterItems<RelatedMusicItemType>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, MusicKit.MusicItemCollection<RelatedMusicItemType>?>, contains relatedItem: RelatedMusicItemType) where RelatedMusicItemType : MusicKit.MusicItem
272 @available(macOS, unavailable)
273 @available(macCatalyst, unavailable)
274 public mutating func filterItems(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Swift.String>, contains text: Swift.String)
275 @available(macOS, unavailable)
276 @available(macCatalyst, unavailable)
277 public mutating func filterItems(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Swift.String?>, contains text: Swift.String)
278 public mutating func filterItems<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value>, equalTo value: Value) where Value : MusicKit.MusicLibraryRequestFilterValueEquatable
279 public mutating func filterItems<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value?>, equalTo value: Value?) where Value : MusicKit.MusicLibraryRequestFilterValueEquatable
280 public mutating func filterItems<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value>, memberOf values: [Value]) where Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
281 public mutating func filterItems<Value>(matching keyPath: Swift.KeyPath<MusicItemType.LibraryFilter, Value?>, memberOf values: [Value?]) where Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
282 public mutating func filterItems(text: Swift.String)
283 public mutating func sortItems<Value>(by keyPath: Swift.KeyPath<MusicItemType.LibrarySortProperties, Value>, ascending: Swift.Bool)
284 public mutating func filterSections(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Swift.String>, contains text: Swift.String) where SectionType : MusicKit.MusicLibraryRequestable
285 public mutating func filterSections(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Swift.String?>, contains text: Swift.String) where SectionType : MusicKit.MusicLibraryRequestable
286 public mutating func filterSections<Value>(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Value>, equalTo value: Value) where SectionType : MusicKit.MusicLibraryRequestable, Value : MusicKit.MusicLibraryRequestFilterValueEquatable
287 public mutating func filterSections<Value>(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Value?>, equalTo value: Value?) where SectionType : MusicKit.MusicLibraryRequestable, Value : MusicKit.MusicLibraryRequestFilterValueEquatable
288 public mutating func filterSections<Value>(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Value>, memberOf values: [Value]) where SectionType : MusicKit.MusicLibraryRequestable, Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
289 public mutating func filterSections<Value>(matching keyPath: Swift.KeyPath<SectionType.LibraryFilter, Value?>, memberOf values: [Value?]) where SectionType : MusicKit.MusicLibraryRequestable, Value : MusicKit.MusicLibraryRequestFilterValueMembershipComparable
290 public mutating func filterSections(text: Swift.String) where SectionType : MusicKit.MusicLibraryRequestable
291 public mutating func sortSections<Value>(by keyPath: Swift.KeyPath<SectionType.LibrarySortProperties, Value>, ascending: Swift.Bool) where SectionType : MusicKit.MusicLibraryRequestable
292 public func response() async throws -> MusicKit.MusicLibrarySectionedResponse<SectionType, MusicItemType>
293}
294@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
295public struct MusicLibrarySectionedResponse<SectionType, MusicItemType> where SectionType : MusicKit.MusicLibrarySectionRequestable, MusicItemType : MusicKit.MusicLibraryRequestable {
296 public let sections: [MusicKit.MusicLibrarySection<SectionType, MusicItemType>]
297}
298@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
299extension MusicKit.MusicLibrarySectionedResponse : Swift.Equatable where SectionType : Swift.Equatable, MusicItemType : Swift.Equatable {
300 public static func == (a: MusicKit.MusicLibrarySectionedResponse<SectionType, MusicItemType>, b: MusicKit.MusicLibrarySectionedResponse<SectionType, MusicItemType>) -> Swift.Bool
301}
302@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
303extension MusicKit.MusicLibrarySectionedResponse : Swift.Hashable where SectionType : Swift.Hashable, MusicItemType : Swift.Hashable {
304 public func hash(into hasher: inout Swift.Hasher)
305 public var hashValue: Swift.Int {
306 get
307 }
308}
309@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
310extension MusicKit.MusicLibrarySectionedResponse : Swift.Sendable where SectionType : Swift.Sendable {
311}
312@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
313extension MusicKit.MusicLibrarySectionedResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
314 public var description: Swift.String {
315 get
316 }
317 public var debugDescription: Swift.String {
318 get
319 }
320}
321@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
322public protocol MusicLibrarySearchable : MusicKit.MusicItem {
323}
324@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
325public struct MusicLibrarySearchRequest : Swift.Equatable, Swift.Hashable, Swift.Sendable {
326 public init(term: Swift.String, types: [any MusicKit.MusicLibrarySearchable.Type])
327 public let term: Swift.String
328 public var types: [any MusicKit.MusicLibrarySearchable.Type] {
329 get
330 }
331 public var includeTopResults: Swift.Bool
332 public var limit: Swift.Int
333 public func response() async throws -> MusicKit.MusicLibrarySearchResponse
334 public static func == (a: MusicKit.MusicLibrarySearchRequest, b: MusicKit.MusicLibrarySearchRequest) -> Swift.Bool
335 public func hash(into hasher: inout Swift.Hasher)
336 public var hashValue: Swift.Int {
337 get
338 }
339}
340@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
341public struct MusicLibrarySearchResponse : Swift.Equatable, Swift.Hashable, Swift.Sendable {
342 public let albums: MusicKit.MusicItemCollection<MusicKit.Album>
343 public let artists: MusicKit.MusicItemCollection<MusicKit.Artist>
344 public let musicVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>
345 public let playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>
346 public let songs: MusicKit.MusicItemCollection<MusicKit.Song>
347 public let topResults: MusicKit.MusicItemCollection<MusicKit.MusicLibrarySearchResponse.TopResult>
348 public static func == (a: MusicKit.MusicLibrarySearchResponse, b: MusicKit.MusicLibrarySearchResponse) -> Swift.Bool
349 public func hash(into hasher: inout Swift.Hasher)
350 public var hashValue: Swift.Int {
351 get
352 }
353}
354@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
355extension MusicKit.MusicLibrarySearchResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
356 public var description: Swift.String {
357 get
358 }
359 public var debugDescription: Swift.String {
360 get
361 }
362}
363@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
364extension MusicKit.MusicLibrarySearchResponse {
365 public enum TopResult : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
366 case album(MusicKit.Album)
367 case artist(MusicKit.Artist)
368 case musicVideo(MusicKit.MusicVideo)
369 case playlist(MusicKit.Playlist)
370 case song(MusicKit.Song)
371 public var id: MusicKit.MusicItemID {
372 get
373 }
374 public var artwork: MusicKit.Artwork? {
375 get
376 }
377 public var title: Swift.String {
378 get
379 }
380 public static func == (a: MusicKit.MusicLibrarySearchResponse.TopResult, b: MusicKit.MusicLibrarySearchResponse.TopResult) -> Swift.Bool
381 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
382 public typealias ID = MusicKit.MusicItemID
383 public func hash(into hasher: inout Swift.Hasher)
384 public var hashValue: Swift.Int {
385 get
386 }
387 }
388}
389@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
390extension MusicKit.MusicLibrarySearchResponse.TopResult : Swift.Codable {
391 public init(from decoder: any Swift.Decoder) throws
392 public func encode(to encoder: any Swift.Encoder) throws
393}
394@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
395extension MusicKit.MusicLibrarySearchResponse.TopResult : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
396 public var description: Swift.String {
397 get
398 }
399 public var debugDescription: Swift.String {
400 get
401 }
402}
403@_hasMissingDesignatedInitializers @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
404public class MusicLibrary {
405 public static let shared: MusicKit.MusicLibrary
406 @objc deinit
407 @available(macOS, unavailable)
408 @available(macCatalyst, unavailable)
409 public func add<MusicItemType>(_ item: MusicItemType) async throws where MusicItemType : MusicKit.MusicLibraryAddable
410 @available(macOS, unavailable)
411 @available(macCatalyst, unavailable)
412 @discardableResult
413 public func add<MusicItemType>(_ item: MusicItemType, to playlist: MusicKit.Playlist) async throws -> MusicKit.Playlist where MusicItemType : MusicKit.MusicPlaylistAddable
414 @available(macOS, unavailable)
415 @available(macCatalyst, unavailable)
416 @discardableResult
417 public func createPlaylist(name: Swift.String, description: Swift.String? = nil, authorDisplayName: Swift.String? = nil) async throws -> MusicKit.Playlist
418 @available(macOS, unavailable)
419 @available(macCatalyst, unavailable)
420 @discardableResult
421 public func createPlaylist<S, MusicPlaylistAddableType>(name: Swift.String, description: Swift.String? = nil, authorDisplayName: Swift.String? = nil, items: S) async throws -> MusicKit.Playlist where S : Swift.Sequence, MusicPlaylistAddableType : MusicKit.MusicPlaylistAddable, MusicPlaylistAddableType == S.Element
422 @available(macOS, unavailable)
423 @available(macCatalyst, unavailable)
424 @discardableResult
425 public func edit(_ playlist: MusicKit.Playlist, name: Swift.String? = nil, description: Swift.String? = nil, authorDisplayName: Swift.String? = nil) async throws -> MusicKit.Playlist
426 @available(macOS, unavailable)
427 @available(macCatalyst, unavailable)
428 @discardableResult
429 public func edit<S, MusicPlaylistAddableType>(_ playlist: MusicKit.Playlist, name: Swift.String? = nil, description: Swift.String? = nil, authorDisplayName: Swift.String? = nil, items: S) async throws -> MusicKit.Playlist where S : Swift.Sequence, MusicPlaylistAddableType : MusicKit.MusicPlaylistAddable, MusicPlaylistAddableType == S.Element
430}
431@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
432@available(macOS, unavailable)
433@available(macCatalyst, unavailable)
434public protocol MusicLibraryAddable : MusicKit.MusicItem {
435}
436@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
437@available(macOS, unavailable)
438@available(macCatalyst, unavailable)
439public protocol MusicPlaylistAddable : MusicKit.MusicItem {
440}
441@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
442extension MusicKit.MusicLibrary {
443 public enum Error : Swift.String, Foundation.LocalizedError, Swift.Sendable, Swift.CustomStringConvertible {
444 case unknown
445 case permissionDenied
446 case unableToAddItem
183public protocol MusicLibraryRequestFilterValueEquatable {
184}
185@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
186extension Swift::Bool : MusicKit::MusicLibraryRequestFilterValueEquatable {
187}
188@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
189extension MusicKit::MusicItemID : MusicKit::MusicLibraryRequestFilterValueEquatable {
190}
191@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
192extension Swift::String : MusicKit::MusicLibraryRequestFilterValueEquatable {
193}
194@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
195public protocol MusicLibraryRequestFilterValueMembershipComparable {
196}
197@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
198extension MusicKit::MusicItemID : MusicKit::MusicLibraryRequestFilterValueMembershipComparable {
199}
200@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
201public struct MusicLibraryResponse<MusicItemType> where MusicItemType : MusicKit::MusicItem {
202 public let items: MusicKit::MusicItemCollection<MusicItemType>
203}
204@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
205extension MusicKit::MusicLibraryResponse : Swift::Equatable where MusicItemType : Swift::Equatable {
206 public static func == (a: MusicKit::MusicLibraryResponse<MusicItemType>, b: MusicKit::MusicLibraryResponse<MusicItemType>) -> Swift::Bool
207}
208@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
209extension MusicKit::MusicLibraryResponse : Swift::Hashable where MusicItemType : Swift::Hashable {
210 public func hash(into hasher: inout Swift::Hasher)
211 public var hashValue: Swift::Int {
212 get
213 }
214}
215@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
216extension MusicKit::MusicLibraryResponse : Swift::Sendable {
217}
218@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
219extension MusicKit::MusicLibraryResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
220 public var description: Swift::String {
221 get
222 }
223 public var debugDescription: Swift::String {
224 get
225 }
226}
227@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
228@dynamicMemberLookup public struct MusicLibrarySection<SectionType, MusicItemType> where SectionType : MusicKit::MusicLibrarySectionRequestable, MusicItemType : MusicKit::MusicLibraryRequestable {
229 public let items: MusicKit::MusicItemCollection<MusicItemType>
230 public subscript<T>(dynamicMember keyPath: Swift::KeyPath<SectionType, T>) -> T {
231 get
232 }
233}
234@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
235extension MusicKit::MusicLibrarySection : Swift::Identifiable {
236 public var id: MusicKit::MusicItemID {
237 get
238 }
239 @available(macOS 14.0, iOS 16.0, tvOS 16.0, watchOS 9.0, macCatalyst 17.0, visionOS 1.0, *)
240 public typealias ID = MusicKit::MusicItemID
241}
242@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
243extension MusicKit::MusicLibrarySection : Swift::Equatable where SectionType : Swift::Equatable, MusicItemType : Swift::Equatable {
244 public static func == (a: MusicKit::MusicLibrarySection<SectionType, MusicItemType>, b: MusicKit::MusicLibrarySection<SectionType, MusicItemType>) -> Swift::Bool
245}
246@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
247extension MusicKit::MusicLibrarySection : Swift::Hashable where SectionType : Swift::Hashable, MusicItemType : Swift::Hashable {
248 public func hash(into hasher: inout Swift::Hasher)
249 public var hashValue: Swift::Int {
250 get
251 }
252}
253@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
254extension MusicKit::MusicLibrarySection : Swift::Sendable where SectionType : Swift::Sendable {
255}
256@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
257extension MusicKit::MusicLibrarySection : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
258 public var description: Swift::String {
259 get
260 }
261 public var debugDescription: Swift::String {
262 get
263 }
264}
265@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
266public struct MusicLibrarySectionedRequest<SectionType, MusicItemType> where SectionType : MusicKit::MusicLibrarySectionRequestable, MusicItemType : MusicKit::MusicLibraryRequestable {
267 public init()
268 public var limit: Swift::Int
269 public var offset: Swift::Int
270 public var includeOnlyDownloadedContent: Swift::Bool
271 public mutating func filterItems<RelatedMusicItemType>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, MusicKit::MusicItemCollection<RelatedMusicItemType>?>, contains relatedItem: RelatedMusicItemType) where RelatedMusicItemType : MusicKit::MusicItem
272 @available(macOS, unavailable)
273 @available(macCatalyst, unavailable)
274 public mutating func filterItems(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Swift::String>, contains text: Swift::String)
275 @available(macOS, unavailable)
276 @available(macCatalyst, unavailable)
277 public mutating func filterItems(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Swift::String?>, contains text: Swift::String)
278 public mutating func filterItems<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value>, equalTo value: Value) where Value : MusicKit::MusicLibraryRequestFilterValueEquatable
279 public mutating func filterItems<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value?>, equalTo value: Value?) where Value : MusicKit::MusicLibraryRequestFilterValueEquatable
280 public mutating func filterItems<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value>, memberOf values: [Value]) where Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
281 public mutating func filterItems<Value>(matching keyPath: Swift::KeyPath<MusicItemType.LibraryFilter, Value?>, memberOf values: [Value?]) where Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
282 public mutating func filterItems(text: Swift::String)
283 public mutating func sortItems<Value>(by keyPath: Swift::KeyPath<MusicItemType.LibrarySortProperties, Value>, ascending: Swift::Bool)
284 public mutating func filterSections(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Swift::String>, contains text: Swift::String) where SectionType : MusicKit::MusicLibraryRequestable
285 public mutating func filterSections(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Swift::String?>, contains text: Swift::String) where SectionType : MusicKit::MusicLibraryRequestable
286 public mutating func filterSections<Value>(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Value>, equalTo value: Value) where SectionType : MusicKit::MusicLibraryRequestable, Value : MusicKit::MusicLibraryRequestFilterValueEquatable
287 public mutating func filterSections<Value>(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Value?>, equalTo value: Value?) where SectionType : MusicKit::MusicLibraryRequestable, Value : MusicKit::MusicLibraryRequestFilterValueEquatable
288 public mutating func filterSections<Value>(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Value>, memberOf values: [Value]) where SectionType : MusicKit::MusicLibraryRequestable, Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
289 public mutating func filterSections<Value>(matching keyPath: Swift::KeyPath<SectionType.LibraryFilter, Value?>, memberOf values: [Value?]) where SectionType : MusicKit::MusicLibraryRequestable, Value : MusicKit::MusicLibraryRequestFilterValueMembershipComparable
290 public mutating func filterSections(text: Swift::String) where SectionType : MusicKit::MusicLibraryRequestable
291 public mutating func sortSections<Value>(by keyPath: Swift::KeyPath<SectionType.LibrarySortProperties, Value>, ascending: Swift::Bool) where SectionType : MusicKit::MusicLibraryRequestable
292 public func response() async throws -> MusicKit::MusicLibrarySectionedResponse<SectionType, MusicItemType>
293}
294@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
295public struct MusicLibrarySectionedResponse<SectionType, MusicItemType> where SectionType : MusicKit::MusicLibrarySectionRequestable, MusicItemType : MusicKit::MusicLibraryRequestable {
296 public let sections: [MusicKit::MusicLibrarySection<SectionType, MusicItemType>]
297}
298@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
299extension MusicKit::MusicLibrarySectionedResponse : Swift::Equatable where SectionType : Swift::Equatable, MusicItemType : Swift::Equatable {
300 public static func == (a: MusicKit::MusicLibrarySectionedResponse<SectionType, MusicItemType>, b: MusicKit::MusicLibrarySectionedResponse<SectionType, MusicItemType>) -> Swift::Bool
301}
302@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
303extension MusicKit::MusicLibrarySectionedResponse : Swift::Hashable where SectionType : Swift::Hashable, MusicItemType : Swift::Hashable {
304 public func hash(into hasher: inout Swift::Hasher)
305 public var hashValue: Swift::Int {
306 get
307 }
308}
309@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
310extension MusicKit::MusicLibrarySectionedResponse : Swift::Sendable where SectionType : Swift::Sendable {
311}
312@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
313extension MusicKit::MusicLibrarySectionedResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
314 public var description: Swift::String {
315 get
316 }
317 public var debugDescription: Swift::String {
318 get
319 }
320}
321@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
322public protocol MusicLibrarySearchable : MusicKit::MusicItem {
323}
324@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
325public struct MusicLibrarySearchRequest : Swift::Equatable, Swift::Hashable, Swift::Sendable {
326 public init(term: Swift::String, types: [any MusicKit::MusicLibrarySearchable.Type])
327 public let term: Swift::String
328 public var types: [any MusicKit::MusicLibrarySearchable.Type] {
329 get
330 }
331 public var includeTopResults: Swift::Bool
332 public var limit: Swift::Int
333 public func response() async throws -> MusicKit::MusicLibrarySearchResponse
334 public static func == (a: MusicKit::MusicLibrarySearchRequest, b: MusicKit::MusicLibrarySearchRequest) -> Swift::Bool
335 public func hash(into hasher: inout Swift::Hasher)
336 public var hashValue: Swift::Int {
337 get
338 }
339}
340@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
341public struct MusicLibrarySearchResponse : Swift::Equatable, Swift::Hashable, Swift::Sendable {
342 public let albums: MusicKit::MusicItemCollection<MusicKit::Album>
343 public let artists: MusicKit::MusicItemCollection<MusicKit::Artist>
344 public let musicVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>
345 public let playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>
346 public let songs: MusicKit::MusicItemCollection<MusicKit::Song>
347 public let topResults: MusicKit::MusicItemCollection<MusicKit::MusicLibrarySearchResponse.MusicKit::TopResult>
348 public static func == (a: MusicKit::MusicLibrarySearchResponse, b: MusicKit::MusicLibrarySearchResponse) -> Swift::Bool
349 public func hash(into hasher: inout Swift::Hasher)
350 public var hashValue: Swift::Int {
351 get
352 }
353}
354@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
355extension MusicKit::MusicLibrarySearchResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
356 public var description: Swift::String {
357 get
358 }
359 public var debugDescription: Swift::String {
360 get
361 }
362}
363@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
364extension MusicKit::MusicLibrarySearchResponse {
365 public enum TopResult : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
366 case album(MusicKit::Album)
367 case artist(MusicKit::Artist)
368 case musicVideo(MusicKit::MusicVideo)
369 case playlist(MusicKit::Playlist)
370 case song(MusicKit::Song)
371 public var id: MusicKit::MusicItemID {
372 get
373 }
374 public var artwork: MusicKit::Artwork? {
375 get
376 }
377 public var title: Swift::String {
378 get
379 }
380 public static func == (a: MusicKit::MusicLibrarySearchResponse.MusicKit::TopResult, b: MusicKit::MusicLibrarySearchResponse.MusicKit::TopResult) -> Swift::Bool
381 @available(macOS 14.0, iOS 16.0, tvOS 16.0, watchOS 9.0, macCatalyst 17.0, visionOS 1.0, *)
382 public typealias ID = MusicKit::MusicItemID
383 public func hash(into hasher: inout Swift::Hasher)
384 public var hashValue: Swift::Int {
385 get
386 }
387 }
388}
389@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
390extension MusicKit::MusicLibrarySearchResponse.MusicKit::TopResult : Swift::Codable {
391 public init(from decoder: any Swift::Decoder) throws
392 public func encode(to encoder: any Swift::Encoder) throws
393}
394@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
395extension MusicKit::MusicLibrarySearchResponse.MusicKit::TopResult : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
396 public var description: Swift::String {
397 get
398 }
399 public var debugDescription: Swift::String {
400 get
401 }
402}
403@_hasMissingDesignatedInitializers @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
404public class MusicLibrary {
405 public static let shared: MusicKit::MusicLibrary
406 @objc deinit
407 @available(macOS, unavailable)
408 @available(macCatalyst, unavailable)
409 public func add<MusicItemType>(_ item: MusicItemType) async throws where MusicItemType : MusicKit::MusicLibraryAddable
410 @available(macOS, unavailable)
411 @available(macCatalyst, unavailable)
412 @discardableResult
413 public func add<MusicItemType>(_ item: MusicItemType, to playlist: MusicKit::Playlist) async throws -> MusicKit::Playlist where MusicItemType : MusicKit::MusicPlaylistAddable
414 @available(macOS, unavailable)
415 @available(macCatalyst, unavailable)
416 @discardableResult
417 public func createPlaylist(name: Swift::String, description: Swift::String? = nil, authorDisplayName: Swift::String? = nil) async throws -> MusicKit::Playlist
418 @available(macOS, unavailable)
419 @available(macCatalyst, unavailable)
420 @discardableResult
421 public func createPlaylist<S, MusicPlaylistAddableType>(name: Swift::String, description: Swift::String? = nil, authorDisplayName: Swift::String? = nil, items: S) async throws -> MusicKit::Playlist where S : Swift::Sequence, MusicPlaylistAddableType : MusicKit::MusicPlaylistAddable, MusicPlaylistAddableType == S.Element
422 @available(macOS, unavailable)
423 @available(macCatalyst, unavailable)
424 @discardableResult
425 public func edit(_ playlist: MusicKit::Playlist, name: Swift::String? = nil, description: Swift::String? = nil, authorDisplayName: Swift::String? = nil) async throws -> MusicKit::Playlist
426 @available(macOS, unavailable)
427 @available(macCatalyst, unavailable)
428 @discardableResult
429 public func edit<S, MusicPlaylistAddableType>(_ playlist: MusicKit::Playlist, name: Swift::String? = nil, description: Swift::String? = nil, authorDisplayName: Swift::String? = nil, items: S) async throws -> MusicKit::Playlist where S : Swift::Sequence, MusicPlaylistAddableType : MusicKit::MusicPlaylistAddable, MusicPlaylistAddableType == S.Element
430}
431@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
432@available(macOS, unavailable)
433@available(macCatalyst, unavailable)
434public protocol MusicLibraryAddable : MusicKit::MusicItem {
435}
436@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
437@available(macOS, unavailable)
438@available(macCatalyst, unavailable)
439public protocol MusicPlaylistAddable : MusicKit::MusicItem {
440}
441@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
442extension MusicKit::MusicLibrary {
443 public enum Error : Swift::String, Foundation::LocalizedError, Swift::Sendable, Swift::CustomStringConvertible {
444 case unknown
445 case permissionDenied
446 case unableToAddItem
… 2 unchanged lines …
449 case addToPlaylistFailed
450 case createPlaylistFailed
451 case editPlaylistFailed
452 public var errorDescription: Swift.String? {
453 get
454 }
455 public var failureReason: Swift.String? {
456 get
457 }
458 public var recoverySuggestion: Swift.String? {
459 get
460 }
461 public var helpAnchor: Swift.String? {
462 get
463 }
464 public var description: Swift.String {
465 get
466 }
467 public init?(rawValue: Swift.String)
468 @available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
469 public typealias RawValue = Swift.String
470 public var rawValue: Swift.String {
471 get
472 }
473 }
474}
475@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
476public protocol FilterableMusicItem : MusicKit.MusicItem {
477 associatedtype FilterType
478}
479@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
480public protocol MusicItem : Swift.Sendable {
481 var id: MusicKit.MusicItemID { get }
482}
483@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
484public struct MusicItemCollection<MusicItemType> where MusicItemType : MusicKit.MusicItem {
485 public var title: Swift.String? {
486 get
487 }
488 public static func += (collection: inout MusicKit.MusicItemCollection<MusicItemType>, nextBatchCollection: MusicKit.MusicItemCollection<MusicItemType>)
489}
490@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
491extension MusicKit.MusicItemCollection {
492 public var hasNextBatch: Swift.Bool {
493 get
494 }
495 public func nextBatch(limit: Swift.Int? = nil) async throws -> MusicKit.MusicItemCollection<MusicItemType>?
496 public func nextBatch(limit: Swift.Int? = nil) async throws -> MusicKit.MusicItemCollection<MusicItemType>? where MusicItemType : Swift.Decodable
497}
498@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
499extension MusicKit.MusicItemCollection : Swift.ExpressibleByArrayLiteral {
500 public init(arrayLiteral items: MusicItemType...)
501 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
502 public typealias ArrayLiteralElement = MusicItemType
503}
504@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
505extension MusicKit.MusicItemCollection {
506 public init<S>(_ elements: S) where MusicItemType == S.Element, S : Swift.Sequence
507}
508@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
509extension MusicKit.MusicItemCollection : Swift.RandomAccessCollection {
510 public typealias Element = MusicItemType
511 public typealias Index = Swift.Array<MusicItemType>.Index
512 public typealias SubSequence = Swift.Array<MusicItemType>.SubSequence
513 public typealias Indices = Swift.Array<MusicItemType>.Indices
514 public var indices: MusicKit.MusicItemCollection<MusicItemType>.Indices {
515 get
516 }
517 public subscript(bounds: Swift.Range<MusicKit.MusicItemCollection<MusicItemType>.Index>) -> MusicKit.MusicItemCollection<MusicItemType>.SubSequence {
518 get
519 }
520 public subscript(position: MusicKit.MusicItemCollection<MusicItemType>.Index) -> MusicKit.MusicItemCollection<MusicItemType>.Element {
521 get
522 }
523 public var startIndex: MusicKit.MusicItemCollection<MusicItemType>.Index {
524 get
525 }
526 public var endIndex: MusicKit.MusicItemCollection<MusicItemType>.Index {
527 get
528 }
529 public func index(before i: MusicKit.MusicItemCollection<MusicItemType>.Index) -> MusicKit.MusicItemCollection<MusicItemType>.Index
530 public func formIndex(before i: inout MusicKit.MusicItemCollection<MusicItemType>.Index)
531 public func index(after i: MusicKit.MusicItemCollection<MusicItemType>.Index) -> MusicKit.MusicItemCollection<MusicItemType>.Index
532 public func formIndex(after i: inout MusicKit.MusicItemCollection<MusicItemType>.Index)
533 public func index(_ i: MusicKit.MusicItemCollection<MusicItemType>.Index, offsetBy distance: Swift.Int) -> MusicKit.MusicItemCollection<MusicItemType>.Index
534 public func index(_ i: MusicKit.MusicItemCollection<MusicItemType>.Index, offsetBy distance: Swift.Int, limitedBy limit: MusicKit.MusicItemCollection<MusicItemType>.Index) -> MusicKit.MusicItemCollection<MusicItemType>.Index?
535 public func distance(from start: MusicKit.MusicItemCollection<MusicItemType>.Index, to end: MusicKit.MusicItemCollection<MusicItemType>.Index) -> Swift.Int
536 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
537 public typealias Iterator = Swift.IndexingIterator<MusicKit.MusicItemCollection<MusicItemType>>
538}
539@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
540extension MusicKit.MusicItemCollection : Swift.Equatable where MusicItemType : Swift.Equatable {
541 public static func == (left: MusicKit.MusicItemCollection<MusicItemType>, right: MusicKit.MusicItemCollection<MusicItemType>) -> Swift.Bool
542}
543@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
544extension MusicKit.MusicItemCollection : Swift.Hashable where MusicItemType : Swift.Hashable {
545 public func hash(into hasher: inout Swift.Hasher)
546 public var hashValue: Swift.Int {
547 get
548 }
549}
550@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
551extension MusicKit.MusicItemCollection : Swift.Sendable {
552}
553@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
554extension MusicKit.MusicItemCollection : Swift.Decodable where MusicItemType : Swift.Decodable {
555 public init(from decoder: any Swift.Decoder) throws
556}
557@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
558extension MusicKit.MusicItemCollection : Swift.Encodable where MusicItemType : Swift.Encodable {
559 public func encode(to encoder: any Swift.Encoder) throws
560}
561@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
562extension MusicKit.MusicItemCollection : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
563 public var description: Swift.String {
564 get
565 }
566 public var debugDescription: Swift.String {
567 get
568 }
569}
570@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
571@frozen public struct MusicItemID : Swift.Equatable, Swift.Hashable, Swift.Sendable, Swift.RawRepresentable, Swift.ExpressibleByStringLiteral {
572 public init(_ rawValue: Swift.String)
573 public init(rawValue: Swift.String)
574 public init(stringLiteral value: Swift.String)
575 public let rawValue: Swift.String
576 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
577 public typealias ExtendedGraphemeClusterLiteralType = Swift.String
578 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
579 public typealias RawValue = Swift.String
580 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
581 public typealias StringLiteralType = Swift.String
582 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
583 public typealias UnicodeScalarLiteralType = Swift.String
584}
585@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
586extension MusicKit.MusicItemID : Swift.Codable {
587 public init(from decoder: any Swift.Decoder) throws
588 public func encode(to encoder: any Swift.Encoder) throws
589}
590@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
591extension MusicKit.MusicItemID : Swift.CustomStringConvertible {
592 public var description: Swift.String {
593 get
594 }
595}
596@_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
597public class AnyMusicProperty : Swift.Equatable, Swift.Hashable, @unchecked Swift.Sendable {
598 public static func == (left: MusicKit.AnyMusicProperty, right: MusicKit.AnyMusicProperty) -> Swift.Bool
599 public func hash(into hasher: inout Swift.Hasher)
600 @objc deinit
601 public var hashValue: Swift.Int {
602 get
603 }
604}
605@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
606public class PartialMusicProperty<Root> : MusicKit.AnyMusicProperty, @unchecked Swift.Sendable {
607 @objc deinit
608}
609@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
610public class PartialMusicAsyncProperty<Root> : MusicKit.PartialMusicProperty<Root>, @unchecked Swift.Sendable {
611 @objc deinit
612}
613@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
614public class MusicAttributeProperty<Root, Value> : MusicKit.PartialMusicProperty<Root>, Swift.CustomStringConvertible, @unchecked Swift.Sendable where Value : Swift.Decodable {
615 @usableFromInline
616 internal init(_ name: Swift.String)
617 public var description: Swift.String {
618 get
619 }
620 @objc deinit
621}
622@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
623public class MusicExtendedAttributeProperty<Root, Value> : MusicKit.PartialMusicAsyncProperty<Root>, Swift.CustomStringConvertible, @unchecked Swift.Sendable where Value : Swift.Decodable {
624 @usableFromInline
625 internal init(_ name: Swift.String)
626 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
627 @usableFromInline
628 internal init(_ name: Swift.String, supportedSources: [MusicKit.MusicPropertySource])
629 public var description: Swift.String {
630 get
631 }
632 @objc deinit
633}
634@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
635public class MusicRelationshipProperty<Root, RelatedMusicItemType> : MusicKit.PartialMusicAsyncProperty<Root>, Swift.CustomStringConvertible, @unchecked Swift.Sendable where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
636 @usableFromInline
637 internal init(_ name: Swift.String, kind: MusicKit.MusicRelationshipPropertyKind = .model)
638 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
639 @usableFromInline
640 internal init(_ name: Swift.String, kind: MusicKit.MusicRelationshipPropertyKind = .model, supportedSources: [MusicKit.MusicPropertySource])
641 @usableFromInline
642 final internal let kind: MusicKit.MusicRelationshipPropertyKind
643 public var description: Swift.String {
644 get
645 }
646 @objc deinit
647}
648@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
649@usableFromInline
650internal enum MusicRelationshipPropertyKind : Swift.Sendable {
651 case model
652 case association
653 @usableFromInline
654 internal static func == (a: MusicKit.MusicRelationshipPropertyKind, b: MusicKit.MusicRelationshipPropertyKind) -> Swift.Bool
655 @usableFromInline
656 internal func hash(into hasher: inout Swift.Hasher)
657 @usableFromInline
658 internal var hashValue: Swift.Int {
659 @usableFromInline
660 get
661 }
662}
663@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
664public protocol MusicPropertyContainer {
665 func with(_ properties: [MusicKit.PartialMusicAsyncProperty<Self>]) async throws -> Self
666 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
667 func with(_ properties: [MusicKit.PartialMusicAsyncProperty<Self>], preferredSource: MusicKit.MusicPropertySource) async throws -> Self
668 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
669 func with(_ properties: MusicKit.PartialMusicAsyncProperty<Self>..., preferredSource: MusicKit.MusicPropertySource) async throws -> Self
670}
671@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
672extension MusicKit.MusicPropertyContainer {
673 @_alwaysEmitIntoClient public func with(_ properties: MusicKit.PartialMusicAsyncProperty<Self>...) async throws -> Self {
674 let arrayOfProperties: [PartialMusicAsyncProperty<Self>] = properties
675 return try await self.with(arrayOfProperties)
676 }
677}
678@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
679public enum MusicPropertySource : Swift.CaseIterable, Swift.Codable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
680 case catalog
681 @available(macOS 14.0, macCatalyst 17.0, *)
682 case library
683 public static var allCases: [MusicKit.MusicPropertySource] {
684 get
685 }
686 public static func == (a: MusicKit.MusicPropertySource, b: MusicKit.MusicPropertySource) -> Swift.Bool
687 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
688 public typealias AllCases = [MusicKit.MusicPropertySource]
689 public func encode(to encoder: any Swift.Encoder) throws
690 public func hash(into hasher: inout Swift.Hasher)
691 public var hashValue: Swift.Int {
692 get
693 }
694 public init(from decoder: any Swift.Decoder) throws
695}
696@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
697public struct Album : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
698 public let id: MusicKit.MusicItemID
699 public var artwork: MusicKit.Artwork? {
700 get
701 }
702 public var artistName: Swift.String {
703 get
704 }
705 public var artistURL: Foundation.URL? {
706 get
707 }
708 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
709 public var audioVariants: [MusicKit.AudioVariant]? {
710 get
711 }
712 public var contentRating: MusicKit.ContentRating? {
713 get
714 }
715 public var copyright: Swift.String? {
716 get
717 }
718 public var editorialNotes: MusicKit.EditorialNotes? {
719 get
720 }
721 public var genreNames: [Swift.String] {
722 get
723 }
724 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
725 public var isAppleDigitalMaster: Swift.Bool? {
726 get
727 }
728 public var isCompilation: Swift.Bool? {
729 get
730 }
731 public var isComplete: Swift.Bool? {
732 get
733 }
734 public var isSingle: Swift.Bool? {
735 get
736 }
737 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
738 public var lastPlayedDate: Foundation.Date? {
739 get
740 }
741 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
742 public var libraryAddedDate: Foundation.Date? {
743 get
744 }
745 public var playParameters: MusicKit.PlayParameters? {
746 get
747 }
748 public var recordLabelName: Swift.String? {
749 get
750 }
751 public var releaseDate: Foundation.Date? {
752 get
753 }
754 public var title: Swift.String {
755 get
756 }
757 public var trackCount: Swift.Int {
758 get
759 }
760 public var upc: Swift.String? {
761 get
762 }
763 public var url: Foundation.URL? {
764 get
765 }
766 public var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
767 get
768 }
769 public var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? {
770 get
771 }
772 public var tracks: MusicKit.MusicItemCollection<MusicKit.Track>? {
773 get
774 }
775 public var recordLabels: MusicKit.MusicItemCollection<MusicKit.RecordLabel>? {
776 get
777 }
778 public var appearsOn: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
779 get
780 }
781 public var otherVersions: MusicKit.MusicItemCollection<MusicKit.Album>? {
782 get
783 }
784 public var relatedAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
785 get
786 }
787 public var relatedVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
788 get
789 }
790 public static func == (a: MusicKit.Album, b: MusicKit.Album) -> Swift.Bool
791 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
792 public typealias ID = MusicKit.MusicItemID
793 public func hash(into hasher: inout Swift.Hasher)
794 public var hashValue: Swift.Int {
795 get
796 }
797}
798@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
799extension MusicKit.Album : MusicKit.MusicPropertyContainer {
800 @usableFromInline
801 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Album, Value>) -> Value? where Value : Swift.Decodable {
802 get throws
803 }
804 @usableFromInline
805 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Album, Value>) -> Value? where Value : Swift.Decodable {
806 get throws
807 }
808 @usableFromInline
809 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Album, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
810 get throws
811 }
812}
813@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
814extension MusicKit.PartialMusicProperty where Root == MusicKit.Album {
815 @_alwaysEmitIntoClient public static var artistURL: MusicKit.MusicExtendedAttributeProperty<MusicKit.Album, Foundation.URL> {
816 get {
817 MusicExtendedAttributeProperty("artistUrl")
818 }
819 }
820 public static let artists: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Artist>
821 public static let genres: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Genre>
822 public static let tracks: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Track>
823 public static let recordLabels: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.RecordLabel>
824 public static let appearsOn: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Playlist>
825 public static let otherVersions: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Album>
826 public static let relatedAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.Album>
827 public static let relatedVideos: MusicKit.MusicRelationshipProperty<MusicKit.Album, MusicKit.MusicVideo>
828}
829@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
830extension MusicKit.PartialMusicProperty where Root == MusicKit.Album {
831 public static let audioVariants: MusicKit.MusicExtendedAttributeProperty<MusicKit.Album, [MusicKit.AudioVariant]>
832}
833@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
834@available(watchOS, unavailable)
835extension MusicKit.Album : MusicKit.PlayableMusicItem {
836}
837@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
838extension MusicKit.Album : MusicKit.MusicCatalogChartRequestable {
839}
840@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
841extension MusicKit.Album : MusicKit.MusicCatalogSearchable {
842}
843@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
844public protocol AlbumFilter {
845 var id: MusicKit.MusicItemID { get }
846 var upc: Swift.String? { get }
847}
848@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
849extension MusicKit.Album : MusicKit.FilterableMusicItem {
850 public typealias FilterType = MusicKit.AlbumFilter
851}
852@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
853@available(macOS, unavailable)
854@available(macCatalyst, unavailable)
855extension MusicKit.Album : MusicKit.MusicLibraryAddable {
856}
857@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
858@available(macOS, unavailable)
859@available(macCatalyst, unavailable)
860extension MusicKit.Album : MusicKit.MusicPlaylistAddable {
861}
862@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
863extension MusicKit.Album : MusicKit.MusicLibraryRequestable {
864 public typealias LibraryFilter = MusicKit.LibraryAlbumFilter
865 public typealias LibrarySortProperties = MusicKit.LibraryAlbumSortProperties
866}
867@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
868public protocol LibraryAlbumFilter {
869 var id: MusicKit.MusicItemID { get }
870 var isCompilation: Swift.Bool? { get }
871 var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? { get }
872 var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? { get }
873 var title: Swift.String { get }
874 var artistName: Swift.String { get }
875}
876@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
877public protocol LibraryAlbumSortProperties {
878 var artistName: Swift.String { get }
879 var releaseDate: Foundation.Date? { get }
880 var title: Swift.String { get }
881 var trackCount: Swift.Int { get }
882 var lastPlayedDate: Foundation.Date? { get }
883 var libraryAddedDate: Foundation.Date? { get }
884}
885@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
886extension MusicKit.Album : MusicKit.MusicLibrarySectionRequestable {
887}
888@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
889extension MusicKit.Album : MusicKit.MusicLibrarySearchable {
890}
891@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
892extension MusicKit.Album : MusicKit.MusicPersonalRecommendationItem {
893}
894@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
895extension MusicKit.Album : Swift.Codable {
896 public init(from decoder: any Swift.Decoder) throws
897 public func encode(to encoder: any Swift.Encoder) throws
898}
899@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
900extension MusicKit.Album : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
901 public var description: Swift.String {
902 get
903 }
904 public var debugDescription: Swift.String {
905 get
906 }
907}
908@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
909public struct Artist : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
910 public let id: MusicKit.MusicItemID
911 @_alwaysEmitIntoClient public var artwork: MusicKit.Artwork? {
912 get {
913 return try? self[property: .artwork]
914 }
915 }
916 public var editorialNotes: MusicKit.EditorialNotes? {
917 get
918 }
919 public var genreNames: [Swift.String]? {
920 get
921 }
922 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
923 public var libraryAddedDate: Foundation.Date? {
924 get
925 }
926 public var name: Swift.String {
927 get
928 }
929 public var url: Foundation.URL? {
930 get
931 }
932 public var albums: MusicKit.MusicItemCollection<MusicKit.Album>? {
933 get
934 }
935 public var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? {
936 get
937 }
938 public var musicVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
939 get
940 }
941 public var playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
942 get
943 }
944 public var station: MusicKit.Station? {
945 get
946 }
947 public var appearsOnAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
948 get
949 }
950 public var compilationAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
951 get
952 }
953 public var featuredAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
954 get
955 }
956 public var featuredPlaylists: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
957 get
958 }
959 public var fullAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
960 get
961 }
962 public var latestRelease: MusicKit.Album? {
963 get
964 }
965 public var liveAlbums: MusicKit.MusicItemCollection<MusicKit.Album>? {
966 get
967 }
968 public var similarArtists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
969 get
970 }
971 public var singles: MusicKit.MusicItemCollection<MusicKit.Album>? {
972 get
973 }
974 public var topMusicVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
975 get
976 }
977 public var topSongs: MusicKit.MusicItemCollection<MusicKit.Song>? {
978 get
979 }
980 public static func == (a: MusicKit.Artist, b: MusicKit.Artist) -> Swift.Bool
981 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
982 public typealias ID = MusicKit.MusicItemID
983 public func hash(into hasher: inout Swift.Hasher)
984 public var hashValue: Swift.Int {
985 get
986 }
987}
988@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
989extension MusicKit.Artist : MusicKit.MusicPropertyContainer {
990 @usableFromInline
991 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Artist, Value>) -> Value? where Value : Swift.Decodable {
992 get throws
993 }
994 @usableFromInline
995 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Artist, Value>) -> Value? where Value : Swift.Decodable {
996 get throws
997 }
998 @usableFromInline
999 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Artist, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1000 get throws
1001 }
1002}
1003@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1004extension MusicKit.PartialMusicProperty where Root == MusicKit.Artist {
1005 @_alwaysEmitIntoClient internal static var artwork: MusicKit.MusicAttributeProperty<MusicKit.Artist, MusicKit.Artwork> {
1006 get {
1007 MusicAttributeProperty("artwork")
1008 }
1009 }
1010 public static let albums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1011 public static let genres: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Genre>
1012 public static let musicVideos: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.MusicVideo>
1013 public static let playlists: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Playlist>
1014 public static let station: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Station>
1015 public static let appearsOnAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1016 public static let compilationAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1017 public static let featuredAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1018 public static let featuredPlaylists: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Playlist>
1019 public static let fullAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1020 public static let latestRelease: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1021 public static let liveAlbums: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1022 public static let similarArtists: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Artist>
1023 public static let singles: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Album>
1024 public static let topMusicVideos: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.MusicVideo>
1025 public static let topSongs: MusicKit.MusicRelationshipProperty<MusicKit.Artist, MusicKit.Song>
1026}
1027@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1028extension MusicKit.Artist : MusicKit.MusicCatalogSearchable {
1029}
1030@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1031public protocol ArtistFilter {
1032 var id: MusicKit.MusicItemID { get }
1033}
1034@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1035extension MusicKit.Artist : MusicKit.FilterableMusicItem {
1036 public typealias FilterType = MusicKit.ArtistFilter
1037}
1038@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1039extension MusicKit.Artist : MusicKit.MusicLibraryRequestable {
1040 public typealias LibraryFilter = MusicKit.LibraryArtistFilter
1041 public typealias LibrarySortProperties = MusicKit.LibraryArtistSortProperties
1042}
1043@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1044public protocol LibraryArtistFilter {
1045 var id: MusicKit.MusicItemID { get }
1046 var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? { get }
1047 var playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>? { get }
1048 var name: Swift.String { get }
1049}
1050@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1051public protocol LibraryArtistSortProperties {
1052 var albumCount: Swift.Int? { get }
1053 var libraryAddedDate: Foundation.Date? { get }
1054 var name: Swift.String { get }
1055}
1056@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1057extension MusicKit.Artist : MusicKit.MusicLibrarySectionRequestable {
1058}
1059@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1060extension MusicKit.Artist : MusicKit.MusicLibrarySearchable {
1061}
1062@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1063extension MusicKit.Artist : Swift.Codable {
1064 public init(from decoder: any Swift.Decoder) throws
1065 public func encode(to encoder: any Swift.Encoder) throws
1066}
1067@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1068extension MusicKit.Artist : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1069 public var description: Swift.String {
1070 get
1071 }
1072 public var debugDescription: Swift.String {
1073 get
1074 }
1075}
1076@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1077public struct Curator : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1078 public let id: MusicKit.MusicItemID
1079 public var artwork: MusicKit.Artwork? {
1080 get
1081 }
1082 public var editorialNotes: MusicKit.EditorialNotes? {
1083 get
1084 }
1085 public var kind: MusicKit.Curator.Kind {
1086 get
1087 }
1088 public var name: Swift.String {
1089 get
1090 }
1091 public var url: Foundation.URL? {
1092 get
1093 }
1094 public var playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
1095 get
1096 }
1097 public static func == (a: MusicKit.Curator, b: MusicKit.Curator) -> Swift.Bool
1098 @available(iOS 15.4, tvOS 15.4, watchOS 9.0, visionOS 1.0, macOS 12.3, *)
1099 public typealias ID = MusicKit.MusicItemID
1100 public func hash(into hasher: inout Swift.Hasher)
1101 public var hashValue: Swift.Int {
1102 get
1103 }
1104}
1105@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1106extension MusicKit.Curator : MusicKit.MusicPropertyContainer {
1107 @usableFromInline
1108 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Curator, Value>) -> Value? where Value : Swift.Decodable {
1109 get throws
1110 }
1111 @usableFromInline
1112 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Curator, Value>) -> Value? where Value : Swift.Decodable {
1113 get throws
1114 }
1115 @usableFromInline
1116 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Curator, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1117 get throws
1118 }
1119}
1120@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1121extension MusicKit.PartialMusicProperty where Root == MusicKit.Curator {
1122 public static let playlists: MusicKit.MusicRelationshipProperty<MusicKit.Curator, MusicKit.Playlist>
1123}
1124@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1125extension MusicKit.Curator : MusicKit.MusicCatalogSearchable {
1126}
1127@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1128public protocol CuratorFilter {
1129 var id: MusicKit.MusicItemID { get }
1130}
1131@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1132extension MusicKit.Curator : MusicKit.FilterableMusicItem {
1133 public typealias FilterType = MusicKit.CuratorFilter
1134}
1135@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1136extension MusicKit.Curator : Swift.Codable {
1137 public init(from decoder: any Swift.Decoder) throws
1138 public func encode(to encoder: any Swift.Encoder) throws
1139}
1140@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1141extension MusicKit.Curator : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1142 public var description: Swift.String {
1143 get
1144 }
1145 public var debugDescription: Swift.String {
1146 get
1147 }
1148}
1149@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1150extension MusicKit.Curator {
1151 public enum Kind : Swift.Codable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1152 case editorial
1153 case external
1154 public static func == (a: MusicKit.Curator.Kind, b: MusicKit.Curator.Kind) -> Swift.Bool
1155 public func encode(to encoder: any Swift.Encoder) throws
1156 public func hash(into hasher: inout Swift.Hasher)
1157 public var hashValue: Swift.Int {
1158 get
1159 }
1160 public init(from decoder: any Swift.Decoder) throws
1161 }
1162}
1163@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1164public struct Genre : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1165 public let id: MusicKit.MusicItemID
1166 public var name: Swift.String {
1167 get
1168 }
1169 public var parent: MusicKit.Genre? {
1170 get
1171 }
1172 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 15.2, macCatalyst 18.2, *)
1173 public var libraryAddedDate: Foundation.Date? {
1174 get
1175 }
1176 public static func == (a: MusicKit.Genre, b: MusicKit.Genre) -> Swift.Bool
1177 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1178 public typealias ID = MusicKit.MusicItemID
1179 public func hash(into hasher: inout Swift.Hasher)
1180 public var hashValue: Swift.Int {
1181 get
1182 }
1183}
1184@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1185extension MusicKit.Genre : MusicKit.MusicPropertyContainer {
1186 @usableFromInline
1187 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Genre, Value>) -> Value? where Value : Swift.Decodable {
1188 get throws
1189 }
1190 @usableFromInline
1191 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Genre, Value>) -> Value? where Value : Swift.Decodable {
1192 get throws
1193 }
1194 @usableFromInline
1195 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Genre, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1196 get throws
1197 }
1198}
1199@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1200public protocol GenreFilter {
1201 var id: MusicKit.MusicItemID { get }
1202}
1203@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1204extension MusicKit.Genre : MusicKit.FilterableMusicItem {
1205 public typealias FilterType = MusicKit.GenreFilter
1206}
1207@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1208extension MusicKit.Genre : MusicKit.MusicCatalogTopLevelResourceRequesting {
1209}
1210@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1211extension MusicKit.Genre : MusicKit.MusicLibraryRequestable {
1212 public typealias LibraryFilter = MusicKit.LibraryGenreFilter
1213 public typealias LibrarySortProperties = MusicKit.LibraryGenreSortProperties
1214}
1215@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1216public protocol LibraryGenreFilter {
1217 var id: MusicKit.MusicItemID { get }
1218 var name: Swift.String { get }
1219}
1220@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1221public protocol LibraryGenreSortProperties {
1222 var libraryAddedDate: Foundation.Date? { get }
1223 var name: Swift.String { get }
1224}
1225@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.2, macCatalyst 17.2, *)
1226extension MusicKit.Genre : MusicKit.MusicLibrarySectionRequestable {
1227}
1228@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1229extension MusicKit.Genre : Swift.Codable {
1230 public init(from decoder: any Swift.Decoder) throws
1231 public func encode(to encoder: any Swift.Encoder) throws
1232}
1233@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1234extension MusicKit.Genre : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1235 public var description: Swift.String {
1236 get
1237 }
1238 public var debugDescription: Swift.String {
1239 get
1240 }
1241}
1242@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1243public struct MusicVideo : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1244 public let id: MusicKit.MusicItemID
1245 public var artwork: MusicKit.Artwork? {
1246 get
1247 }
1248 public var albumTitle: Swift.String? {
1249 get
1250 }
1251 public var artistName: Swift.String {
1252 get
1253 }
1254 public var artistURL: Foundation.URL? {
1255 get
1256 }
1257 public var contentRating: MusicKit.ContentRating? {
1258 get
1259 }
1260 public var duration: Foundation.TimeInterval? {
1261 get
1262 }
1263 public var editorialNotes: MusicKit.EditorialNotes? {
1264 get
1265 }
1266 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1267 public var endTime: Foundation.TimeInterval? {
1268 get
1269 }
1270 public var genreNames: [Swift.String] {
1271 get
1272 }
1273 public var has4K: Swift.Bool? {
1274 get
1275 }
1276 public var hasHDR: Swift.Bool? {
1277 get
1278 }
1279 public var isPreview: Swift.Bool {
1280 get
1281 }
1282 public var isrc: Swift.String? {
1283 get
1284 }
1285 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1286 public var lastPlayedDate: Foundation.Date? {
1287 get
1288 }
1289 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1290 public var libraryAddedDate: Foundation.Date? {
1291 get
1292 }
1293 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1294 public var playCount: Swift.Int? {
1295 get
1296 }
1297 public var playParameters: MusicKit.PlayParameters? {
1298 get
1299 }
1300 public var previewAssets: [MusicKit.PreviewAsset]? {
1301 get
1302 }
1303 public var releaseDate: Foundation.Date? {
1304 get
1305 }
1306 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1307 public var startTime: Foundation.TimeInterval? {
1308 get
1309 }
1310 public var title: Swift.String {
1311 get
1312 }
1313 public var trackNumber: Swift.Int? {
1314 get
1315 }
1316 public var url: Foundation.URL? {
1317 get
1318 }
1319 public var workName: Swift.String? {
1320 get
1321 }
1322 public var albums: MusicKit.MusicItemCollection<MusicKit.Album>? {
1323 get
1324 }
1325 public var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
1326 get
1327 }
1328 public var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? {
1329 get
1330 }
1331 public var songs: MusicKit.MusicItemCollection<MusicKit.Song>? {
1332 get
1333 }
1334 public var moreByArtist: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
1335 get
1336 }
1337 public var moreInGenre: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
1338 get
1339 }
1340 public static func == (a: MusicKit.MusicVideo, b: MusicKit.MusicVideo) -> Swift.Bool
1341 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1342 public typealias ID = MusicKit.MusicItemID
1343 public func hash(into hasher: inout Swift.Hasher)
1344 public var hashValue: Swift.Int {
1345 get
1346 }
1347}
1348@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1349extension MusicKit.MusicVideo : MusicKit.MusicPropertyContainer {
1350 @usableFromInline
1351 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.MusicVideo, Value>) -> Value? where Value : Swift.Decodable {
1352 get throws
1353 }
1354 @usableFromInline
1355 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.MusicVideo, Value>) -> Value? where Value : Swift.Decodable {
1356 get throws
1357 }
1358 @usableFromInline
1359 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1360 get throws
1361 }
1362}
1363@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1364extension MusicKit.PartialMusicProperty where Root == MusicKit.MusicVideo {
1365 @_alwaysEmitIntoClient public static var artistURL: MusicKit.MusicExtendedAttributeProperty<MusicKit.MusicVideo, Foundation.URL> {
1366 get {
1367 MusicExtendedAttributeProperty("artistUrl")
1368 }
1369 }
1370 public static let albums: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.Album>
1371 public static let artists: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.Artist>
1372 public static let genres: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.Genre>
1373 public static let songs: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.Song>
1374 public static let moreByArtist: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.MusicVideo>
1375 public static let moreInGenre: MusicKit.MusicRelationshipProperty<MusicKit.MusicVideo, MusicKit.MusicVideo>
1376}
1377@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1378extension MusicKit.MusicVideo : MusicKit.MusicCatalogChartRequestable {
1379}
1380@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1381extension MusicKit.MusicVideo : MusicKit.MusicCatalogSearchable {
1382}
1383@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1384public protocol MusicVideoFilter {
1385 var id: MusicKit.MusicItemID { get }
1386 var isrc: Swift.String? { get }
1387}
1388@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1389extension MusicKit.MusicVideo : MusicKit.FilterableMusicItem {
1390 public typealias FilterType = MusicKit.MusicVideoFilter
1391}
1392@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1393@available(macOS, unavailable)
1394@available(macCatalyst, unavailable)
1395extension MusicKit.MusicVideo : MusicKit.MusicLibraryAddable {
1396}
1397@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1398@available(macOS, unavailable)
1399@available(macCatalyst, unavailable)
1400extension MusicKit.MusicVideo : MusicKit.MusicPlaylistAddable {
1401}
1402@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1403extension MusicKit.MusicVideo : MusicKit.MusicLibraryRequestable {
1404 public typealias LibraryFilter = MusicKit.LibraryMusicVideoFilter
1405 public typealias LibrarySortProperties = MusicKit.LibraryMusicVideoSortProperties
1406}
1407@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1408public protocol LibraryMusicVideoFilter {
1409 var id: MusicKit.MusicItemID { get }
1410 var albums: MusicKit.MusicItemCollection<MusicKit.Album>? { get }
1411 var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? { get }
1412 var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? { get }
1413 var albumTitle: Swift.String? { get }
1414 var artistName: Swift.String? { get }
1415 var title: Swift.String { get }
1416}
1417@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1418public protocol LibraryMusicVideoSortProperties {
1419 var albumTitle: Swift.String? { get }
1420 var artistName: Swift.String? { get }
1421 var duration: Foundation.TimeInterval? { get }
1422 var lastPlayedDate: Foundation.Date? { get }
1423 var libraryAddedDate: Foundation.Date? { get }
1424 var playCount: Swift.Int? { get }
1425 var title: Swift.String { get }
1426 var trackNumber: Swift.Int? { get }
1427}
1428@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1429extension MusicKit.MusicVideo : MusicKit.MusicLibrarySearchable {
1430}
1431@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1432extension MusicKit.MusicVideo : MusicKit.MusicRecentlyPlayedRequestable {
1433}
1434@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1435extension MusicKit.MusicVideo : Swift.Codable {
1436 public init(from decoder: any Swift.Decoder) throws
1437 public func encode(to encoder: any Swift.Encoder) throws
1438}
1439@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1440extension MusicKit.MusicVideo : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1441 public var description: Swift.String {
1442 get
1443 }
1444 public var debugDescription: Swift.String {
1445 get
1446 }
1447}
1448@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1449public struct Playlist : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1450 public let id: MusicKit.MusicItemID
1451 public var artwork: MusicKit.Artwork? {
1452 get
1453 }
1454 public var curatorName: Swift.String? {
1455 get
1456 }
1457 public var isChart: Swift.Bool? {
1458 get
1459 }
1460 public var kind: MusicKit.Playlist.Kind? {
1461 get
1462 }
1463 public var lastModifiedDate: Foundation.Date? {
1464 get
1465 }
1466 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1467 public var lastPlayedDate: Foundation.Date? {
1468 get
1469 }
1470 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1471 public var libraryAddedDate: Foundation.Date? {
1472 get
1473 }
1474 public var name: Swift.String {
1475 get
1476 }
1477 public var playParameters: MusicKit.PlayParameters? {
1478 get
1479 }
1480 public var shortDescription: Swift.String? {
1481 get
1482 }
1483 public var standardDescription: Swift.String? {
1484 get
1485 }
1486 public var url: Foundation.URL? {
1487 get
1488 }
1489 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1490 public var curator: MusicKit.Curator? {
1491 get
1492 }
1493 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1494 public var entries: MusicKit.MusicItemCollection<MusicKit.Playlist.Entry>? {
1495 get
1496 }
1497 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1498 public var radioShow: MusicKit.RadioShow? {
1499 get
1500 }
1501 public var tracks: MusicKit.MusicItemCollection<MusicKit.Track>? {
1502 get
1503 }
1504 public var featuredArtists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
1505 get
1506 }
1507 public var moreByCurator: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
1508 get
1509 }
1510 public static func == (a: MusicKit.Playlist, b: MusicKit.Playlist) -> Swift.Bool
1511 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1512 public typealias ID = MusicKit.MusicItemID
1513 public func hash(into hasher: inout Swift.Hasher)
1514 public var hashValue: Swift.Int {
1515 get
1516 }
1517}
1518@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1519extension MusicKit.Playlist : MusicKit.MusicPropertyContainer {
1520 @usableFromInline
1521 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Playlist, Value>) -> Value? where Value : Swift.Decodable {
1522 get throws
1523 }
1524 @usableFromInline
1525 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Playlist, Value>) -> Value? where Value : Swift.Decodable {
1526 get throws
1527 }
1528 @usableFromInline
1529 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1530 get throws
1531 }
1532}
1533@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1534extension MusicKit.PartialMusicProperty where Root == MusicKit.Playlist {
1535 public static let tracks: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.Track>
1536 public static let featuredArtists: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.Artist>
1537 public static let moreByCurator: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.Playlist>
1538}
1539@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1540extension MusicKit.PartialMusicProperty where Root == MusicKit.Playlist {
1541 public static let curator: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.Curator>
1542 public static let entries: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.Playlist.Entry>
1543 public static let radioShow: MusicKit.MusicRelationshipProperty<MusicKit.Playlist, MusicKit.RadioShow>
1544}
1545@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
1546@available(watchOS, unavailable)
1547extension MusicKit.Playlist : MusicKit.PlayableMusicItem {
1548}
1549@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1550extension MusicKit.Playlist : MusicKit.MusicCatalogChartRequestable {
1551}
1552@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1553extension MusicKit.Playlist : MusicKit.MusicCatalogSearchable {
1554}
1555@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1556public protocol PlaylistFilter {
1557 var id: MusicKit.MusicItemID { get }
1558}
1559@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1560extension MusicKit.Playlist : MusicKit.FilterableMusicItem {
1561 public typealias FilterType = MusicKit.PlaylistFilter
1562}
1563@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1564@available(macOS, unavailable)
1565@available(macCatalyst, unavailable)
1566extension MusicKit.Playlist : MusicKit.MusicLibraryAddable {
1567}
1568@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1569@available(macOS, unavailable)
1570@available(macCatalyst, unavailable)
1571extension MusicKit.Playlist : MusicKit.MusicPlaylistAddable {
1572}
1573@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1574extension MusicKit.Playlist : MusicKit.MusicLibraryRequestable {
1575 public typealias LibraryFilter = MusicKit.LibraryPlaylistFilter
1576 public typealias LibrarySortProperties = MusicKit.LibraryPlaylistSortProperties
1577}
1578@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1579public protocol LibraryPlaylistFilter {
1580 var id: MusicKit.MusicItemID { get }
1581 var name: Swift.String { get }
1582}
1583@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1584public protocol LibraryPlaylistSortProperties {
1585 var lastPlayedDate: Foundation.Date? { get }
1586 var libraryAddedDate: Foundation.Date? { get }
1587 var name: Swift.String { get }
1588}
1589@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1590extension MusicKit.Playlist : MusicKit.MusicLibrarySectionRequestable {
1591}
1592@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1593extension MusicKit.Playlist : MusicKit.MusicLibrarySearchable {
1594}
1595@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1596extension MusicKit.Playlist : MusicKit.MusicPersonalRecommendationItem {
1597}
1598@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1599extension MusicKit.Playlist : Swift.Codable {
1600 public init(from decoder: any Swift.Decoder) throws
1601 public func encode(to encoder: any Swift.Encoder) throws
1602}
1603@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1604extension MusicKit.Playlist : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1605 public var description: Swift.String {
1606 get
1607 }
1608 public var debugDescription: Swift.String {
1609 get
1610 }
1611}
1612@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1613extension MusicKit.Playlist {
1614 public enum Kind : Swift.Codable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1615 case editorial
1616 case external
1617 case personalMix
1618 case replay
1619 case userShared
1620 public static func == (a: MusicKit.Playlist.Kind, b: MusicKit.Playlist.Kind) -> Swift.Bool
1621 public func encode(to encoder: any Swift.Encoder) throws
1622 public func hash(into hasher: inout Swift.Hasher)
1623 public var hashValue: Swift.Int {
1624 get
1625 }
1626 public init(from decoder: any Swift.Decoder) throws
1627 }
1628}
1629@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1630extension MusicKit.Playlist {
1631 public struct Entry : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1632 public let id: MusicKit.MusicItemID
1633 public var artwork: MusicKit.Artwork? {
1634 get
1635 }
1636 public var albumTitle: Swift.String? {
1637 get
1638 }
1639 public var artistName: Swift.String {
1640 get
1641 }
1642 public var artistURL: Foundation.URL? {
1643 get
1644 }
1645 public var contentRating: MusicKit.ContentRating? {
1646 get
1647 }
1648 public var duration: Foundation.TimeInterval? {
1649 get
1650 }
1651 public var editorialNotes: MusicKit.EditorialNotes? {
1652 get
1653 }
1654 public var genreNames: [Swift.String] {
1655 get
1656 }
1657 @available(macOS 14.0, macCatalyst 17.0, *)
1658 public var lastPlayedDate: Foundation.Date? {
1659 get
1660 }
1661 @available(macOS 14.0, macCatalyst 17.0, *)
1662 public var libraryAddedDate: Foundation.Date? {
1663 get
1664 }
1665 @available(macOS 14.0, macCatalyst 17.0, *)
1666 public var playCount: Swift.Int? {
1667 get
1668 }
1669 public var isrc: Swift.String? {
1670 get
1671 }
1672 public var item: MusicKit.Playlist.Entry.Item? {
1673 get
1674 }
1675 public var playParameters: MusicKit.PlayParameters? {
1676 get
1677 }
1678 public var position: Swift.Int {
1679 get
1680 }
1681 public var previewAssets: [MusicKit.PreviewAsset]? {
1682 get
1683 }
1684 public var releaseDate: Foundation.Date? {
1685 get
1686 }
1687 public var title: Swift.String {
1688 get
1689 }
1690 public var url: Foundation.URL? {
1691 get
1692 }
1693 public static func == (a: MusicKit.Playlist.Entry, b: MusicKit.Playlist.Entry) -> Swift.Bool
1694 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
1695 public typealias ID = MusicKit.MusicItemID
1696 public func hash(into hasher: inout Swift.Hasher)
1697 public var hashValue: Swift.Int {
1698 get
1699 }
1700 }
1701}
1702@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1703extension MusicKit.Playlist.Entry : MusicKit.MusicPropertyContainer {
1704}
1705@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
1706@available(watchOS, unavailable)
1707extension MusicKit.Playlist.Entry : MusicKit.PlayableMusicItem {
1708}
1709@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1710@available(macOS, unavailable)
1711@available(macCatalyst, unavailable)
1712extension MusicKit.Playlist.Entry : MusicKit.MusicLibraryAddable, MusicKit.MusicPlaylistAddable {
1713}
1714@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1715extension MusicKit.Playlist.Entry : Swift.Codable {
1716 public init(from decoder: any Swift.Decoder) throws
1717 public func encode(to encoder: any Swift.Encoder) throws
1718}
1719@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1720extension MusicKit.Playlist.Entry : MusicKit.MusicLibraryRequestable {
1721 public typealias LibraryFilter = MusicKit.LibraryPlaylistEntryFilter
1722 public typealias LibrarySortProperties = MusicKit.LibraryPlaylistEntrySortProperties
1723}
1724@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1725public protocol LibraryPlaylistEntryFilter {
1726 var id: MusicKit.MusicItemID { get }
1727}
1728@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1729public protocol LibraryPlaylistEntrySortProperties {
1730}
1731@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1732extension MusicKit.Playlist.Entry : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1733 public var description: Swift.String {
1734 get
1735 }
1736 public var debugDescription: Swift.String {
1737 get
1738 }
1739}
1740@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1741public struct RadioShow : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1742 public let id: MusicKit.MusicItemID
1743 public var artwork: MusicKit.Artwork? {
1744 get
1745 }
1746 public var editorialNotes: MusicKit.EditorialNotes? {
1747 get
1748 }
1749 public var hostName: Swift.String? {
1750 get
1751 }
1752 public var name: Swift.String {
1753 get
1754 }
1755 public var url: Foundation.URL? {
1756 get
1757 }
1758 public var playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>? {
1759 get
1760 }
1761 public static func == (a: MusicKit.RadioShow, b: MusicKit.RadioShow) -> Swift.Bool
1762 @available(iOS 15.4, tvOS 15.4, watchOS 9.0, visionOS 1.0, macOS 12.3, *)
1763 public typealias ID = MusicKit.MusicItemID
1764 public func hash(into hasher: inout Swift.Hasher)
1765 public var hashValue: Swift.Int {
1766 get
1767 }
1768}
1769@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1770extension MusicKit.RadioShow : MusicKit.MusicPropertyContainer {
1771 @usableFromInline
1772 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.RadioShow, Value>) -> Value? where Value : Swift.Decodable {
1773 get throws
1774 }
1775 @usableFromInline
1776 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.RadioShow, Value>) -> Value? where Value : Swift.Decodable {
1777 get throws
1778 }
1779 @usableFromInline
1780 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.RadioShow, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1781 get throws
1782 }
1783}
1784@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1785extension MusicKit.PartialMusicProperty where Root == MusicKit.RadioShow {
1786 public static let playlists: MusicKit.MusicRelationshipProperty<MusicKit.RadioShow, MusicKit.Playlist>
1787}
1788@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1789extension MusicKit.RadioShow : MusicKit.MusicCatalogSearchable {
1790}
1791@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1792public protocol RadioShowFilter {
1793 var id: MusicKit.MusicItemID { get }
1794}
1795@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1796extension MusicKit.RadioShow : MusicKit.FilterableMusicItem {
1797 public typealias FilterType = MusicKit.RadioShowFilter
1798}
1799@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1800extension MusicKit.RadioShow : Swift.Codable {
1801 public init(from decoder: any Swift.Decoder) throws
1802 public func encode(to encoder: any Swift.Encoder) throws
1803}
1804@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1805extension MusicKit.RadioShow : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1806 public var description: Swift.String {
1807 get
1808 }
1809 public var debugDescription: Swift.String {
1810 get
1811 }
1812}
1813@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1814public struct RecordLabel : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1815 public let id: MusicKit.MusicItemID
1816 public var artwork: MusicKit.Artwork? {
1817 get
1818 }
1819 public var shortDescription: Swift.String? {
1820 get
1821 }
1822 public var standardDescription: Swift.String? {
1823 get
1824 }
1825 public var name: Swift.String {
1826 get
1827 }
1828 public var url: Foundation.URL? {
1829 get
1830 }
1831 public var latestReleases: MusicKit.MusicItemCollection<MusicKit.Album>? {
1832 get
1833 }
1834 public var topReleases: MusicKit.MusicItemCollection<MusicKit.Album>? {
1835 get
1836 }
1837 public static func == (a: MusicKit.RecordLabel, b: MusicKit.RecordLabel) -> Swift.Bool
1838 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1839 public typealias ID = MusicKit.MusicItemID
1840 public func hash(into hasher: inout Swift.Hasher)
1841 public var hashValue: Swift.Int {
1842 get
1843 }
1844}
1845@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1846extension MusicKit.RecordLabel : MusicKit.MusicPropertyContainer {
1847 @usableFromInline
1848 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.RecordLabel, Value>) -> Value? where Value : Swift.Decodable {
1849 get throws
1850 }
1851 @usableFromInline
1852 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.RecordLabel, Value>) -> Value? where Value : Swift.Decodable {
1853 get throws
1854 }
1855 @usableFromInline
1856 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.RecordLabel, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
1857 get throws
1858 }
1859}
1860@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1861extension MusicKit.PartialMusicProperty where Root == MusicKit.RecordLabel {
1862 @_alwaysEmitIntoClient public static var latestReleases: MusicKit.MusicRelationshipProperty<MusicKit.RecordLabel, MusicKit.Album> {
1863 get {
1864 MusicRelationshipProperty("latest-releases", kind: .association)
1865 }
1866 }
1867 @_alwaysEmitIntoClient public static var topReleases: MusicKit.MusicRelationshipProperty<MusicKit.RecordLabel, MusicKit.Album> {
1868 get {
1869 MusicRelationshipProperty("top-releases", kind: .association)
1870 }
1871 }
1872}
1873@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1874extension MusicKit.RecordLabel : MusicKit.MusicCatalogSearchable {
1875}
1876@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1877public protocol RecordLabelFilter {
1878 var id: MusicKit.MusicItemID { get }
1879}
1880@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1881extension MusicKit.RecordLabel : MusicKit.FilterableMusicItem {
1882 public typealias FilterType = MusicKit.RecordLabelFilter
1883}
1884@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1885extension MusicKit.RecordLabel : Swift.Codable {
1886 public init(from decoder: any Swift.Decoder) throws
1887 public func encode(to encoder: any Swift.Encoder) throws
1888}
1889@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1890extension MusicKit.RecordLabel : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
1891 public var description: Swift.String {
1892 get
1893 }
1894 public var debugDescription: Swift.String {
1895 get
1896 }
1897}
1898@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1899public struct Song : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
1900 public let id: MusicKit.MusicItemID
1901 public var artwork: MusicKit.Artwork? {
1902 get
1903 }
1904 public var albumTitle: Swift.String? {
1905 get
1906 }
1907 public var artistName: Swift.String {
1908 get
1909 }
1910 public var artistURL: Foundation.URL? {
1911 get
1912 }
1913 public var attribution: Swift.String? {
1914 get
1915 }
1916 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1917 public var audioVariants: [MusicKit.AudioVariant]? {
1918 get
1919 }
1920 public var composerName: Swift.String? {
1921 get
1922 }
1923 public var contentRating: MusicKit.ContentRating? {
1924 get
1925 }
1926 public var discNumber: Swift.Int? {
1927 get
1928 }
1929 public var duration: Foundation.TimeInterval? {
1930 get
1931 }
1932 public var editorialNotes: MusicKit.EditorialNotes? {
1933 get
1934 }
1935 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1936 public var endTime: Foundation.TimeInterval? {
1937 get
1938 }
1939 public var genreNames: [Swift.String] {
1940 get
1941 }
1942 public var hasLyrics: Swift.Bool {
1943 get
1944 }
1945 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1946 public var isAppleDigitalMaster: Swift.Bool? {
1947 get
1948 }
1949 public var isrc: Swift.String? {
1950 get
1951 }
1952 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1953 public var lastPlayedDate: Foundation.Date? {
1954 get
1955 }
1956 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1957 public var libraryAddedDate: Foundation.Date? {
1958 get
1959 }
1960 public var movementCount: Swift.Int? {
1961 get
1962 }
1963 public var movementName: Swift.String? {
1964 get
1965 }
1966 public var movementNumber: Swift.Int? {
1967 get
1968 }
1969 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1970 public var playCount: Swift.Int? {
1971 get
1972 }
1973 public var playParameters: MusicKit.PlayParameters? {
1974 get
1975 }
1976 public var previewAssets: [MusicKit.PreviewAsset]? {
1977 get
1978 }
1979 public var releaseDate: Foundation.Date? {
1980 get
1981 }
1982 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1983 public var startTime: Foundation.TimeInterval? {
1984 get
1985 }
1986 public var title: Swift.String {
1987 get
1988 }
1989 public var trackNumber: Swift.Int? {
1990 get
1991 }
1992 public var url: Foundation.URL? {
1993 get
1994 }
1995 public var workName: Swift.String? {
1996 get
1997 }
1998 public var albums: MusicKit.MusicItemCollection<MusicKit.Album>? {
1999 get
2000 }
2001 public var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
2002 get
2003 }
2004 public var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? {
2005 get
2006 }
2007 public var station: MusicKit.Station? {
2008 get
2009 }
2010 public var composers: MusicKit.MusicItemCollection<MusicKit.Artist>? {
2011 get
2012 }
2013 public var musicVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>? {
2014 get
2015 }
2016 public static func == (a: MusicKit.Song, b: MusicKit.Song) -> Swift.Bool
2017 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2018 public typealias ID = MusicKit.MusicItemID
2019 public func hash(into hasher: inout Swift.Hasher)
2020 public var hashValue: Swift.Int {
2021 get
2022 }
2023}
2024@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2025extension MusicKit.Song : MusicKit.MusicPropertyContainer {
2026 @usableFromInline
2027 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Song, Value>) -> Value? where Value : Swift.Decodable {
2028 get throws
2029 }
2030 @usableFromInline
2031 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Song, Value>) -> Value? where Value : Swift.Decodable {
2032 get throws
2033 }
2034 @usableFromInline
2035 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Song, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
2036 get throws
2037 }
2038}
2039@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2040extension MusicKit.PartialMusicProperty where Root == MusicKit.Song {
2041 @_alwaysEmitIntoClient public static var artistURL: MusicKit.MusicExtendedAttributeProperty<MusicKit.Song, Foundation.URL> {
2042 get {
2043 MusicExtendedAttributeProperty("artistUrl")
2044 }
2045 }
2046 public static let albums: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.Album>
2047 public static let artists: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.Artist>
2048 public static let genres: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.Genre>
2049 public static let station: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.Station>
2050 public static let composers: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.Artist>
2051 public static let musicVideos: MusicKit.MusicRelationshipProperty<MusicKit.Song, MusicKit.MusicVideo>
2052}
2053@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2054extension MusicKit.PartialMusicProperty where Root == MusicKit.Song {
2055 public static let audioVariants: MusicKit.MusicExtendedAttributeProperty<MusicKit.Song, [MusicKit.AudioVariant]>
2056}
2057@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2058@available(watchOS, unavailable)
2059extension MusicKit.Song : MusicKit.PlayableMusicItem {
2060}
2061@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2062extension MusicKit.Song : MusicKit.MusicCatalogChartRequestable {
2063}
2064@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2065extension MusicKit.Song : MusicKit.MusicCatalogSearchable {
2066}
2067@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2068public protocol SongFilter {
2069 var id: MusicKit.MusicItemID { get }
2070 var isrc: Swift.String? { get }
2071}
2072@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2073extension MusicKit.Song : MusicKit.FilterableMusicItem {
2074 public typealias FilterType = MusicKit.SongFilter
2075}
2076@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2077@available(macOS, unavailable)
2078@available(macCatalyst, unavailable)
2079extension MusicKit.Song : MusicKit.MusicLibraryAddable {
2080}
2081@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2082@available(macOS, unavailable)
2083@available(macCatalyst, unavailable)
2084extension MusicKit.Song : MusicKit.MusicPlaylistAddable {
2085}
2086@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2087extension MusicKit.Song : MusicKit.MusicLibraryRequestable {
2088 public typealias LibraryFilter = MusicKit.LibrarySongFilter
2089 public typealias LibrarySortProperties = MusicKit.LibrarySongSortProperties
2090}
2091@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2092public protocol LibrarySongFilter {
2093 var id: MusicKit.MusicItemID { get }
2094 var albums: MusicKit.MusicItemCollection<MusicKit.Album>? { get }
2095 var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? { get }
2096 var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? { get }
2097 var albumTitle: Swift.String? { get }
2098 var artistName: Swift.String? { get }
2099 var composerName: Swift.String? { get }
2100 var title: Swift.String { get }
2101}
2102@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2103public protocol LibrarySongSortProperties {
2104 var albumTitle: Swift.String? { get }
2105 var artistName: Swift.String? { get }
2106 var composerName: Swift.String? { get }
2107 var discNumber: Swift.Int? { get }
2108 var duration: Foundation.TimeInterval? { get }
2109 var lastPlayedDate: Foundation.Date? { get }
2110 var libraryAddedDate: Foundation.Date? { get }
2111 var playCount: Swift.Int? { get }
2112 var title: Swift.String { get }
2113 var trackNumber: Swift.Int? { get }
2114}
2115@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2116extension MusicKit.Song : MusicKit.MusicLibrarySearchable {
2117}
2118@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2119extension MusicKit.Song : MusicKit.MusicRecentlyPlayedRequestable {
2120}
2121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2122extension MusicKit.Song : Swift.Codable {
2123 public init(from decoder: any Swift.Decoder) throws
2124 public func encode(to encoder: any Swift.Encoder) throws
2125}
2126@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2127extension MusicKit.Song : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2128 public var description: Swift.String {
2129 get
2130 }
2131 public var debugDescription: Swift.String {
2132 get
2133 }
2134}
2135@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2136public struct Station : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2137 public let id: MusicKit.MusicItemID
2138 public var artwork: MusicKit.Artwork? {
2139 get
2140 }
2141 public var contentRating: MusicKit.ContentRating? {
2142 get
2143 }
2144 public var duration: Foundation.TimeInterval? {
2145 get
2146 }
2147 public var editorialNotes: MusicKit.EditorialNotes? {
2148 get
2149 }
2150 public var episodeNumber: Swift.Int? {
2151 get
2152 }
2153 public var isLive: Swift.Bool {
2154 get
2155 }
2156 public var name: Swift.String {
2157 get
2158 }
2159 public var playParameters: MusicKit.PlayParameters? {
2160 get
2161 }
2162 public var stationProviderName: Swift.String? {
2163 get
2164 }
2165 public var url: Foundation.URL? {
2166 get
2167 }
2168 public static func == (a: MusicKit.Station, b: MusicKit.Station) -> Swift.Bool
2169 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2170 public typealias ID = MusicKit.MusicItemID
2171 public func hash(into hasher: inout Swift.Hasher)
2172 public var hashValue: Swift.Int {
2173 get
2174 }
2175}
2176@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2177extension MusicKit.Station : MusicKit.MusicPropertyContainer {
2178 @usableFromInline
2179 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Station, Value>) -> Value? where Value : Swift.Decodable {
2180 get throws
2181 }
2182 @usableFromInline
2183 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Station, Value>) -> Value? where Value : Swift.Decodable {
2184 get throws
2185 }
2186 @usableFromInline
2187 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Station, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
2188 get throws
2189 }
2190}
2191@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2192@available(watchOS, unavailable)
2193extension MusicKit.Station : MusicKit.PlayableMusicItem {
2194}
2195@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2196extension MusicKit.Station : MusicKit.MusicCatalogSearchable {
2197}
2198@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2199public protocol StationFilter {
2200 var id: MusicKit.MusicItemID { get }
2201}
2202@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2203extension MusicKit.Station : MusicKit.FilterableMusicItem {
2204 public typealias FilterType = MusicKit.StationFilter
2205}
2206@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2207extension MusicKit.Station : MusicKit.MusicPersonalRecommendationItem {
2208}
2209@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2210extension MusicKit.Station : MusicKit.MusicRecentlyPlayedRequestable {
2211}
2212@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2213extension MusicKit.Station : Swift.Codable {
2214 public init(from decoder: any Swift.Decoder) throws
2215 public func encode(to encoder: any Swift.Encoder) throws
2216}
2217@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2218extension MusicKit.Station : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2219 public var description: Swift.String {
2220 get
2221 }
2222 public var debugDescription: Swift.String {
2223 get
2224 }
2225}
2226@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2227extension MusicKit.Playlist.Entry {
2228 public enum Item : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2229 case musicVideo(MusicKit.MusicVideo)
2230 case song(MusicKit.Song)
2231 public var id: MusicKit.MusicItemID {
2232 get
2233 }
2234 public var artwork: MusicKit.Artwork? {
2235 get
2236 }
2237 public var albumTitle: Swift.String? {
2238 get
2239 }
2240 public var artistName: Swift.String {
2241 get
2242 }
2243 public var artistURL: Foundation.URL? {
2244 get
2245 }
2246 public var contentRating: MusicKit.ContentRating? {
2247 get
2248 }
2249 public var duration: Foundation.TimeInterval? {
2250 get
2251 }
2252 public var editorialNotes: MusicKit.EditorialNotes? {
2253 get
2254 }
2255 public var genreNames: [Swift.String] {
2256 get
2257 }
2258 @available(macOS 14.0, macCatalyst 17.0, *)
2259 public var lastPlayedDate: Foundation.Date? {
2260 get
2261 }
2262 @available(macOS 14.0, macCatalyst 17.0, *)
2263 public var libraryAddedDate: Foundation.Date? {
2264 get
2265 }
2266 public var isrc: Swift.String? {
2267 get
2268 }
2269 @available(macOS 14.0, macCatalyst 17.0, *)
2270 public var playCount: Swift.Int? {
2271 get
2272 }
2273 public var playParameters: MusicKit.PlayParameters? {
2274 get
2275 }
2276 public var previewAssets: [MusicKit.PreviewAsset]? {
2277 get
2278 }
2279 public var releaseDate: Foundation.Date? {
2280 get
2281 }
2282 public var title: Swift.String {
2283 get
2284 }
2285 public var url: Foundation.URL? {
2286 get
2287 }
2288 public static func == (a: MusicKit.Playlist.Entry.Item, b: MusicKit.Playlist.Entry.Item) -> Swift.Bool
2289 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2290 public typealias ID = MusicKit.MusicItemID
2291 public func hash(into hasher: inout Swift.Hasher)
2292 public var hashValue: Swift.Int {
2293 get
2294 }
2295 }
2296}
2297@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2298extension MusicKit.Playlist.Entry.Item : MusicKit.MusicPropertyContainer {
2299 @usableFromInline
2300 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Playlist.Entry.Item, Value>) -> Value? where Value : Swift.Decodable {
2301 get throws
2302 }
2303 @usableFromInline
2304 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Playlist.Entry.Item, Value>) -> Value? where Value : Swift.Decodable {
2305 get throws
2306 }
2307 @usableFromInline
2308 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Playlist.Entry.Item, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
2309 get throws
2310 }
2311}
2312@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
2313@available(watchOS, unavailable)
2314extension MusicKit.Playlist.Entry.Item : MusicKit.PlayableMusicItem {
2315}
2316@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2317extension MusicKit.Playlist.Entry.Item : Swift.Codable {
2318 public init(from decoder: any Swift.Decoder) throws
2319 public func encode(to encoder: any Swift.Encoder) throws
2320}
2321@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2322extension MusicKit.Playlist.Entry.Item : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2323 public var description: Swift.String {
2324 get
2325 }
2326 public var debugDescription: Swift.String {
2327 get
2328 }
2329}
2330@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2331public enum Track : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2332 case song(MusicKit.Song)
2333 case musicVideo(MusicKit.MusicVideo)
2334 public var id: MusicKit.MusicItemID {
2335 get
2336 }
2337 public var artwork: MusicKit.Artwork? {
2338 get
2339 }
2340 public var albumTitle: Swift.String? {
2341 get
2342 }
2343 public var artistName: Swift.String {
2344 get
2345 }
2346 public var artistURL: Foundation.URL? {
2347 get
2348 }
2349 public var contentRating: MusicKit.ContentRating? {
2350 get
2351 }
2352 @_alwaysEmitIntoClient public var discNumber: Swift.Int? {
2353 get {
2354 let discNumber: Int?
2355 switch self {
449 case addToPlaylistFailed
450 case createPlaylistFailed
451 case editPlaylistFailed
452 public var errorDescription: Swift::String? {
453 get
454 }
455 public var failureReason: Swift::String? {
456 get
457 }
458 public var recoverySuggestion: Swift::String? {
459 get
460 }
461 public var helpAnchor: Swift::String? {
462 get
463 }
464 public var description: Swift::String {
465 get
466 }
467 public init?(rawValue: Swift::String)
468 @available(macOS 14.0, iOS 16.1, tvOS 16.1, watchOS 9.1, macCatalyst 17.0, visionOS 1.0, *)
469 public typealias RawValue = Swift::String
470 public var rawValue: Swift::String {
471 get
472 }
473 }
474}
475@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
476public protocol FilterableMusicItem : MusicKit::MusicItem {
477 associatedtype FilterType
478}
479@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
480public protocol MusicItem : Swift::Sendable {
481 var id: MusicKit::MusicItemID { get }
482}
483@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
484public struct MusicItemCollection<MusicItemType> where MusicItemType : MusicKit::MusicItem {
485 public var title: Swift::String? {
486 get
487 }
488 public static func += (collection: inout MusicKit::MusicItemCollection<MusicItemType>, nextBatchCollection: MusicKit::MusicItemCollection<MusicItemType>)
489}
490@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
491extension MusicKit::MusicItemCollection {
492 public var hasNextBatch: Swift::Bool {
493 get
494 }
495 public func nextBatch(limit: Swift::Int? = nil) async throws -> MusicKit::MusicItemCollection<MusicItemType>?
496 public func nextBatch(limit: Swift::Int? = nil) async throws -> MusicKit::MusicItemCollection<MusicItemType>? where MusicItemType : Swift::Decodable
497}
498@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
499extension MusicKit::MusicItemCollection : Swift::ExpressibleByArrayLiteral {
500 public init(arrayLiteral items: MusicItemType...)
501 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
502 public typealias ArrayLiteralElement = MusicItemType
503}
504@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
505extension MusicKit::MusicItemCollection {
506 public init<S>(_ elements: S) where MusicItemType == S.Element, S : Swift::Sequence
507}
508@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
509extension MusicKit::MusicItemCollection : Swift::RandomAccessCollection {
510 public typealias Element = MusicItemType
511 public typealias Index = Swift::Array<MusicItemType>.Swift::Index
512 public typealias SubSequence = Swift::Array<MusicItemType>.Swift::SubSequence
513 public typealias Indices = Swift::Array<MusicItemType>.Swift::Indices
514 public var indices: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Indices {
515 get
516 }
517 public subscript(bounds: Swift::Range<MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index>) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::SubSequence {
518 get
519 }
520 public subscript(position: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Element {
521 get
522 }
523 public var startIndex: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index {
524 get
525 }
526 public var endIndex: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index {
527 get
528 }
529 public func index(before i: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index
530 public func formIndex(before i: inout MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index)
531 public func index(after i: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index
532 public func formIndex(after i: inout MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index)
533 public func index(_ i: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index, offsetBy distance: Swift::Int) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index
534 public func index(_ i: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index, offsetBy distance: Swift::Int, limitedBy limit: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index) -> MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index?
535 public func distance(from start: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index, to end: MusicKit::MusicItemCollection<MusicItemType>.MusicKit::Index) -> Swift::Int
536 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
537 public typealias Iterator = Swift::IndexingIterator<MusicKit::MusicItemCollection<MusicItemType>>
538}
539@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
540extension MusicKit::MusicItemCollection : Swift::Equatable where MusicItemType : Swift::Equatable {
541 public static func == (left: MusicKit::MusicItemCollection<MusicItemType>, right: MusicKit::MusicItemCollection<MusicItemType>) -> Swift::Bool
542}
543@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
544extension MusicKit::MusicItemCollection : Swift::Hashable where MusicItemType : Swift::Hashable {
545 public func hash(into hasher: inout Swift::Hasher)
546 public var hashValue: Swift::Int {
547 get
548 }
549}
550@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
551extension MusicKit::MusicItemCollection : Swift::Sendable {
552}
553@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
554extension MusicKit::MusicItemCollection : Swift::Decodable where MusicItemType : Swift::Decodable {
555 public init(from decoder: any Swift::Decoder) throws
556}
557@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
558extension MusicKit::MusicItemCollection : Swift::Encodable where MusicItemType : Swift::Encodable {
559 public func encode(to encoder: any Swift::Encoder) throws
560}
561@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
562extension MusicKit::MusicItemCollection : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
563 public var description: Swift::String {
564 get
565 }
566 public var debugDescription: Swift::String {
567 get
568 }
569}
570@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
571@frozen public struct MusicItemID : Swift::Equatable, Swift::Hashable, Swift::Sendable, Swift::RawRepresentable, Swift::ExpressibleByStringLiteral {
572 public init(_ rawValue: Swift::String)
573 public init(rawValue: Swift::String)
574 public init(stringLiteral value: Swift::String)
575 public let rawValue: Swift::String
576 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
577 public typealias ExtendedGraphemeClusterLiteralType = Swift::String
578 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
579 public typealias RawValue = Swift::String
580 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
581 public typealias StringLiteralType = Swift::String
582 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
583 public typealias UnicodeScalarLiteralType = Swift::String
584}
585@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
586extension MusicKit::MusicItemID : Swift::Codable {
587 public init(from decoder: any Swift::Decoder) throws
588 public func encode(to encoder: any Swift::Encoder) throws
589}
590@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
591extension MusicKit::MusicItemID : Swift::CustomStringConvertible {
592 public var description: Swift::String {
593 get
594 }
595}
596@_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
597public class AnyMusicProperty : Swift::Equatable, Swift::Hashable, @unchecked Swift::Sendable {
598 public static func == (left: MusicKit::AnyMusicProperty, right: MusicKit::AnyMusicProperty) -> Swift::Bool
599 public func hash(into hasher: inout Swift::Hasher)
600 @objc deinit
601 public var hashValue: Swift::Int {
602 get
603 }
604}
605@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
606public class PartialMusicProperty<Root> : MusicKit::AnyMusicProperty, @unchecked Swift::Sendable {
607 @objc deinit
608}
609@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
610public class PartialMusicAsyncProperty<Root> : MusicKit::PartialMusicProperty<Root>, @unchecked Swift::Sendable {
611 @objc deinit
612}
613@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
614public class MusicAttributeProperty<Root, Value> : MusicKit::PartialMusicProperty<Root>, Swift::CustomStringConvertible, @unchecked Swift::Sendable where Value : Swift::Decodable {
615 @usableFromInline
616 internal init(_ name: Swift::String)
617 public var description: Swift::String {
618 get
619 }
620 @objc deinit
621}
622@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
623public class MusicExtendedAttributeProperty<Root, Value> : MusicKit::PartialMusicAsyncProperty<Root>, Swift::CustomStringConvertible, @unchecked Swift::Sendable where Value : Swift::Decodable {
624 @usableFromInline
625 internal init(_ name: Swift::String)
626 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
627 @usableFromInline
628 internal init(_ name: Swift::String, supportedSources: [MusicKit::MusicPropertySource])
629 public var description: Swift::String {
630 get
631 }
632 @objc deinit
633}
634@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
635public class MusicRelationshipProperty<Root, RelatedMusicItemType> : MusicKit::PartialMusicAsyncProperty<Root>, Swift::CustomStringConvertible, @unchecked Swift::Sendable where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
636 @usableFromInline
637 internal init(_ name: Swift::String, kind: MusicKit::MusicRelationshipPropertyKind = .model)
638 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
639 @usableFromInline
640 internal init(_ name: Swift::String, kind: MusicKit::MusicRelationshipPropertyKind = .model, supportedSources: [MusicKit::MusicPropertySource])
641 @usableFromInline
642 final internal let kind: MusicKit::MusicRelationshipPropertyKind
643 public var description: Swift::String {
644 get
645 }
646 @objc deinit
647}
648@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
649@usableFromInline
650internal enum MusicRelationshipPropertyKind : Swift::Sendable {
651 case model
652 case association
653 @usableFromInline
654 internal static func == (a: MusicKit::MusicRelationshipPropertyKind, b: MusicKit::MusicRelationshipPropertyKind) -> Swift::Bool
655 @usableFromInline
656 internal func hash(into hasher: inout Swift::Hasher)
657 @usableFromInline
658 internal var hashValue: Swift::Int {
659 @usableFromInline
660 get
661 }
662}
663@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
664public protocol MusicPropertyContainer {
665 func with(_ properties: [MusicKit::PartialMusicAsyncProperty<Self>]) async throws -> Self
666 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
667 func with(_ properties: [MusicKit::PartialMusicAsyncProperty<Self>], preferredSource: MusicKit::MusicPropertySource) async throws -> Self
668 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
669 func with(_ properties: MusicKit::PartialMusicAsyncProperty<Self>..., preferredSource: MusicKit::MusicPropertySource) async throws -> Self
670}
671@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
672extension MusicKit::MusicPropertyContainer {
673 @_alwaysEmitIntoClient public func with(_ properties: MusicKit::PartialMusicAsyncProperty<Self>...) async throws -> Self {
674 let arrayOfProperties: [PartialMusicAsyncProperty<Self>] = properties
675 return try await self.with(arrayOfProperties)
676 }
677}
678@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
679public enum MusicPropertySource : Swift::CaseIterable, Swift::Codable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
680 case catalog
681 @available(macOS 14.0, macCatalyst 17.0, *)
682 case library
683 public static var allCases: [MusicKit::MusicPropertySource] {
684 get
685 }
686 public static func == (a: MusicKit::MusicPropertySource, b: MusicKit::MusicPropertySource) -> Swift::Bool
687 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
688 public typealias AllCases = [MusicKit::MusicPropertySource]
689 public func encode(to encoder: any Swift::Encoder) throws
690 public func hash(into hasher: inout Swift::Hasher)
691 public var hashValue: Swift::Int {
692 get
693 }
694 public init(from decoder: any Swift::Decoder) throws
695}
696@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
697public struct Album : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
698 public let id: MusicKit::MusicItemID
699 public var artwork: MusicKit::Artwork? {
700 get
701 }
702 public var artistName: Swift::String {
703 get
704 }
705 public var artistURL: Foundation::URL? {
706 get
707 }
708 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
709 public var audioVariants: [MusicKit::AudioVariant]? {
710 get
711 }
712 public var contentRating: MusicKit::ContentRating? {
713 get
714 }
715 public var copyright: Swift::String? {
716 get
717 }
718 public var editorialNotes: MusicKit::EditorialNotes? {
719 get
720 }
721 public var genreNames: [Swift::String] {
722 get
723 }
724 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
725 public var isAppleDigitalMaster: Swift::Bool? {
726 get
727 }
728 public var isCompilation: Swift::Bool? {
729 get
730 }
731 public var isComplete: Swift::Bool? {
732 get
733 }
734 public var isSingle: Swift::Bool? {
735 get
736 }
737 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
738 public var lastPlayedDate: Foundation::Date? {
739 get
740 }
741 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
742 public var libraryAddedDate: Foundation::Date? {
743 get
744 }
745 public var playParameters: MusicKit::PlayParameters? {
746 get
747 }
748 public var recordLabelName: Swift::String? {
749 get
750 }
751 public var releaseDate: Foundation::Date? {
752 get
753 }
754 public var title: Swift::String {
755 get
756 }
757 public var trackCount: Swift::Int {
758 get
759 }
760 public var upc: Swift::String? {
761 get
762 }
763 public var url: Foundation::URL? {
764 get
765 }
766 public var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
767 get
768 }
769 public var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? {
770 get
771 }
772 public var tracks: MusicKit::MusicItemCollection<MusicKit::Track>? {
773 get
774 }
775 public var recordLabels: MusicKit::MusicItemCollection<MusicKit::RecordLabel>? {
776 get
777 }
778 public var appearsOn: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
779 get
780 }
781 public var otherVersions: MusicKit::MusicItemCollection<MusicKit::Album>? {
782 get
783 }
784 public var relatedAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
785 get
786 }
787 public var relatedVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
788 get
789 }
790 public static func == (a: MusicKit::Album, b: MusicKit::Album) -> Swift::Bool
791 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
792 public typealias ID = MusicKit::MusicItemID
793 public func hash(into hasher: inout Swift::Hasher)
794 public var hashValue: Swift::Int {
795 get
796 }
797}
798@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
799extension MusicKit::Album : MusicKit::MusicPropertyContainer {
800 @usableFromInline
801 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Album, Value>) -> Value? where Value : Swift::Decodable {
802 get throws
803 }
804 @usableFromInline
805 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Album, Value>) -> Value? where Value : Swift::Decodable {
806 get throws
807 }
808 @usableFromInline
809 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Album, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
810 get throws
811 }
812}
813@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
814extension MusicKit::PartialMusicProperty where Root == MusicKit::Album {
815 @_alwaysEmitIntoClient public static var artistURL: MusicKit::MusicExtendedAttributeProperty<MusicKit::Album, Foundation::URL> {
816 get {
817 MusicExtendedAttributeProperty("artistUrl")
818 }
819 }
820 public static let artists: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Artist>
821 public static let genres: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Genre>
822 public static let tracks: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Track>
823 public static let recordLabels: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::RecordLabel>
824 public static let appearsOn: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Playlist>
825 public static let otherVersions: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Album>
826 public static let relatedAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::Album>
827 public static let relatedVideos: MusicKit::MusicRelationshipProperty<MusicKit::Album, MusicKit::MusicVideo>
828}
829@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
830extension MusicKit::PartialMusicProperty where Root == MusicKit::Album {
831 public static let audioVariants: MusicKit::MusicExtendedAttributeProperty<MusicKit::Album, [MusicKit::AudioVariant]>
832}
833@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
834@available(watchOS, unavailable)
835extension MusicKit::Album : MusicKit::PlayableMusicItem {
836}
837@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
838extension MusicKit::Album : MusicKit::MusicCatalogChartRequestable {
839}
840@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
841extension MusicKit::Album : MusicKit::MusicCatalogSearchable {
842}
843@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
844public protocol AlbumFilter {
845 var id: MusicKit::MusicItemID { get }
846 var upc: Swift::String? { get }
847}
848@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
849extension MusicKit::Album : MusicKit::FilterableMusicItem {
850 public typealias FilterType = MusicKit::AlbumFilter
851}
852@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
853@available(macOS, unavailable)
854@available(macCatalyst, unavailable)
855extension MusicKit::Album : MusicKit::MusicLibraryAddable {
856}
857@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
858@available(macOS, unavailable)
859@available(macCatalyst, unavailable)
860extension MusicKit::Album : MusicKit::MusicPlaylistAddable {
861}
862@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
863extension MusicKit::Album : MusicKit::MusicLibraryRequestable {
864 public typealias LibraryFilter = MusicKit::LibraryAlbumFilter
865 public typealias LibrarySortProperties = MusicKit::LibraryAlbumSortProperties
866}
867@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
868public protocol LibraryAlbumFilter {
869 var id: MusicKit::MusicItemID { get }
870 var isCompilation: Swift::Bool? { get }
871 var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? { get }
872 var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? { get }
873 var title: Swift::String { get }
874 var artistName: Swift::String { get }
875}
876@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
877public protocol LibraryAlbumSortProperties {
878 var artistName: Swift::String { get }
879 var releaseDate: Foundation::Date? { get }
880 var title: Swift::String { get }
881 var trackCount: Swift::Int { get }
882 var lastPlayedDate: Foundation::Date? { get }
883 var libraryAddedDate: Foundation::Date? { get }
884}
885@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
886extension MusicKit::Album : MusicKit::MusicLibrarySectionRequestable {
887}
888@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
889extension MusicKit::Album : MusicKit::MusicLibrarySearchable {
890}
891@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
892extension MusicKit::Album : MusicKit::MusicPersonalRecommendationItem {
893}
894@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
895extension MusicKit::Album : Swift::Codable {
896 public init(from decoder: any Swift::Decoder) throws
897 public func encode(to encoder: any Swift::Encoder) throws
898}
899@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
900extension MusicKit::Album : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
901 public var description: Swift::String {
902 get
903 }
904 public var debugDescription: Swift::String {
905 get
906 }
907}
908@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
909public struct Artist : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
910 public let id: MusicKit::MusicItemID
911 @_alwaysEmitIntoClient public var artwork: MusicKit::Artwork? {
912 get {
913 return try? self[property: .artwork]
914 }
915 }
916 public var editorialNotes: MusicKit::EditorialNotes? {
917 get
918 }
919 public var genreNames: [Swift::String]? {
920 get
921 }
922 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
923 public var libraryAddedDate: Foundation::Date? {
924 get
925 }
926 public var name: Swift::String {
927 get
928 }
929 public var url: Foundation::URL? {
930 get
931 }
932 public var albums: MusicKit::MusicItemCollection<MusicKit::Album>? {
933 get
934 }
935 public var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? {
936 get
937 }
938 public var musicVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
939 get
940 }
941 public var playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
942 get
943 }
944 public var station: MusicKit::Station? {
945 get
946 }
947 public var appearsOnAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
948 get
949 }
950 public var compilationAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
951 get
952 }
953 public var featuredAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
954 get
955 }
956 public var featuredPlaylists: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
957 get
958 }
959 public var fullAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
960 get
961 }
962 public var latestRelease: MusicKit::Album? {
963 get
964 }
965 public var liveAlbums: MusicKit::MusicItemCollection<MusicKit::Album>? {
966 get
967 }
968 public var similarArtists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
969 get
970 }
971 public var singles: MusicKit::MusicItemCollection<MusicKit::Album>? {
972 get
973 }
974 public var topMusicVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
975 get
976 }
977 public var topSongs: MusicKit::MusicItemCollection<MusicKit::Song>? {
978 get
979 }
980 public static func == (a: MusicKit::Artist, b: MusicKit::Artist) -> Swift::Bool
981 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
982 public typealias ID = MusicKit::MusicItemID
983 public func hash(into hasher: inout Swift::Hasher)
984 public var hashValue: Swift::Int {
985 get
986 }
987}
988@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
989extension MusicKit::Artist : MusicKit::MusicPropertyContainer {
990 @usableFromInline
991 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Artist, Value>) -> Value? where Value : Swift::Decodable {
992 get throws
993 }
994 @usableFromInline
995 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Artist, Value>) -> Value? where Value : Swift::Decodable {
996 get throws
997 }
998 @usableFromInline
999 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Artist, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1000 get throws
1001 }
1002}
1003@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1004extension MusicKit::PartialMusicProperty where Root == MusicKit::Artist {
1005 @_alwaysEmitIntoClient internal static var artwork: MusicKit::MusicAttributeProperty<MusicKit::Artist, MusicKit::Artwork> {
1006 get {
1007 MusicAttributeProperty("artwork")
1008 }
1009 }
1010 public static let albums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1011 public static let genres: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Genre>
1012 public static let musicVideos: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::MusicVideo>
1013 public static let playlists: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Playlist>
1014 public static let station: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Station>
1015 public static let appearsOnAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1016 public static let compilationAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1017 public static let featuredAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1018 public static let featuredPlaylists: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Playlist>
1019 public static let fullAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1020 public static let latestRelease: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1021 public static let liveAlbums: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1022 public static let similarArtists: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Artist>
1023 public static let singles: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Album>
1024 public static let topMusicVideos: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::MusicVideo>
1025 public static let topSongs: MusicKit::MusicRelationshipProperty<MusicKit::Artist, MusicKit::Song>
1026}
1027@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1028extension MusicKit::Artist : MusicKit::MusicCatalogSearchable {
1029}
1030@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1031public protocol ArtistFilter {
1032 var id: MusicKit::MusicItemID { get }
1033}
1034@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1035extension MusicKit::Artist : MusicKit::FilterableMusicItem {
1036 public typealias FilterType = MusicKit::ArtistFilter
1037}
1038@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1039extension MusicKit::Artist : MusicKit::MusicLibraryRequestable {
1040 public typealias LibraryFilter = MusicKit::LibraryArtistFilter
1041 public typealias LibrarySortProperties = MusicKit::LibraryArtistSortProperties
1042}
1043@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1044public protocol LibraryArtistFilter {
1045 var id: MusicKit::MusicItemID { get }
1046 var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? { get }
1047 var playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>? { get }
1048 var name: Swift::String { get }
1049}
1050@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1051public protocol LibraryArtistSortProperties {
1052 var albumCount: Swift::Int? { get }
1053 var libraryAddedDate: Foundation::Date? { get }
1054 var name: Swift::String { get }
1055}
1056@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1057extension MusicKit::Artist : MusicKit::MusicLibrarySectionRequestable {
1058}
1059@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1060extension MusicKit::Artist : MusicKit::MusicLibrarySearchable {
1061}
1062@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1063extension MusicKit::Artist : Swift::Codable {
1064 public init(from decoder: any Swift::Decoder) throws
1065 public func encode(to encoder: any Swift::Encoder) throws
1066}
1067@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1068extension MusicKit::Artist : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1069 public var description: Swift::String {
1070 get
1071 }
1072 public var debugDescription: Swift::String {
1073 get
1074 }
1075}
1076@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1077public struct Curator : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1078 public let id: MusicKit::MusicItemID
1079 public var artwork: MusicKit::Artwork? {
1080 get
1081 }
1082 public var editorialNotes: MusicKit::EditorialNotes? {
1083 get
1084 }
1085 public var kind: MusicKit::Curator.MusicKit::Kind {
1086 get
1087 }
1088 public var name: Swift::String {
1089 get
1090 }
1091 public var url: Foundation::URL? {
1092 get
1093 }
1094 public var playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
1095 get
1096 }
1097 public static func == (a: MusicKit::Curator, b: MusicKit::Curator) -> Swift::Bool
1098 @available(macOS 12.3, iOS 15.4, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1099 public typealias ID = MusicKit::MusicItemID
1100 public func hash(into hasher: inout Swift::Hasher)
1101 public var hashValue: Swift::Int {
1102 get
1103 }
1104}
1105@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1106extension MusicKit::Curator : MusicKit::MusicPropertyContainer {
1107 @usableFromInline
1108 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Curator, Value>) -> Value? where Value : Swift::Decodable {
1109 get throws
1110 }
1111 @usableFromInline
1112 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Curator, Value>) -> Value? where Value : Swift::Decodable {
1113 get throws
1114 }
1115 @usableFromInline
1116 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Curator, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1117 get throws
1118 }
1119}
1120@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1121extension MusicKit::PartialMusicProperty where Root == MusicKit::Curator {
1122 public static let playlists: MusicKit::MusicRelationshipProperty<MusicKit::Curator, MusicKit::Playlist>
1123}
1124@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1125extension MusicKit::Curator : MusicKit::MusicCatalogSearchable {
1126}
1127@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1128public protocol CuratorFilter {
1129 var id: MusicKit::MusicItemID { get }
1130}
1131@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1132extension MusicKit::Curator : MusicKit::FilterableMusicItem {
1133 public typealias FilterType = MusicKit::CuratorFilter
1134}
1135@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1136extension MusicKit::Curator : Swift::Codable {
1137 public init(from decoder: any Swift::Decoder) throws
1138 public func encode(to encoder: any Swift::Encoder) throws
1139}
1140@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1141extension MusicKit::Curator : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1142 public var description: Swift::String {
1143 get
1144 }
1145 public var debugDescription: Swift::String {
1146 get
1147 }
1148}
1149@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1150extension MusicKit::Curator {
1151 public enum Kind : Swift::Codable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
1152 case editorial
1153 case external
1154 public static func == (a: MusicKit::Curator.MusicKit::Kind, b: MusicKit::Curator.MusicKit::Kind) -> Swift::Bool
1155 public func encode(to encoder: any Swift::Encoder) throws
1156 public func hash(into hasher: inout Swift::Hasher)
1157 public var hashValue: Swift::Int {
1158 get
1159 }
1160 public init(from decoder: any Swift::Decoder) throws
1161 }
1162}
1163@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1164public struct Genre : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1165 public let id: MusicKit::MusicItemID
1166 public var name: Swift::String {
1167 get
1168 }
1169 public var parent: MusicKit::Genre? {
1170 get
1171 }
1172 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 15.2, macCatalyst 18.2, *)
1173 public var libraryAddedDate: Foundation::Date? {
1174 get
1175 }
1176 public static func == (a: MusicKit::Genre, b: MusicKit::Genre) -> Swift::Bool
1177 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1178 public typealias ID = MusicKit::MusicItemID
1179 public func hash(into hasher: inout Swift::Hasher)
1180 public var hashValue: Swift::Int {
1181 get
1182 }
1183}
1184@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1185extension MusicKit::Genre : MusicKit::MusicPropertyContainer {
1186 @usableFromInline
1187 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Genre, Value>) -> Value? where Value : Swift::Decodable {
1188 get throws
1189 }
1190 @usableFromInline
1191 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Genre, Value>) -> Value? where Value : Swift::Decodable {
1192 get throws
1193 }
1194 @usableFromInline
1195 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Genre, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1196 get throws
1197 }
1198}
1199@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1200public protocol GenreFilter {
1201 var id: MusicKit::MusicItemID { get }
1202}
1203@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1204extension MusicKit::Genre : MusicKit::FilterableMusicItem {
1205 public typealias FilterType = MusicKit::GenreFilter
1206}
1207@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1208extension MusicKit::Genre : MusicKit::MusicCatalogTopLevelResourceRequesting {
1209}
1210@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1211extension MusicKit::Genre : MusicKit::MusicLibraryRequestable {
1212 public typealias LibraryFilter = MusicKit::LibraryGenreFilter
1213 public typealias LibrarySortProperties = MusicKit::LibraryGenreSortProperties
1214}
1215@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1216public protocol LibraryGenreFilter {
1217 var id: MusicKit::MusicItemID { get }
1218 var name: Swift::String { get }
1219}
1220@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1221public protocol LibraryGenreSortProperties {
1222 var libraryAddedDate: Foundation::Date? { get }
1223 var name: Swift::String { get }
1224}
1225@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.2, macCatalyst 17.2, *)
1226extension MusicKit::Genre : MusicKit::MusicLibrarySectionRequestable {
1227}
1228@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1229extension MusicKit::Genre : Swift::Codable {
1230 public init(from decoder: any Swift::Decoder) throws
1231 public func encode(to encoder: any Swift::Encoder) throws
1232}
1233@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1234extension MusicKit::Genre : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1235 public var description: Swift::String {
1236 get
1237 }
1238 public var debugDescription: Swift::String {
1239 get
1240 }
1241}
1242@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1243public struct MusicVideo : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1244 public let id: MusicKit::MusicItemID
1245 public var artwork: MusicKit::Artwork? {
1246 get
1247 }
1248 public var albumTitle: Swift::String? {
1249 get
1250 }
1251 public var artistName: Swift::String {
1252 get
1253 }
1254 public var artistURL: Foundation::URL? {
1255 get
1256 }
1257 public var contentRating: MusicKit::ContentRating? {
1258 get
1259 }
1260 public var duration: Foundation::TimeInterval? {
1261 get
1262 }
1263 public var editorialNotes: MusicKit::EditorialNotes? {
1264 get
1265 }
1266 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1267 public var endTime: Foundation::TimeInterval? {
1268 get
1269 }
1270 public var genreNames: [Swift::String] {
1271 get
1272 }
1273 public var has4K: Swift::Bool? {
1274 get
1275 }
1276 public var hasHDR: Swift::Bool? {
1277 get
1278 }
1279 public var isPreview: Swift::Bool {
1280 get
1281 }
1282 public var isrc: Swift::String? {
1283 get
1284 }
1285 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1286 public var lastPlayedDate: Foundation::Date? {
1287 get
1288 }
1289 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1290 public var libraryAddedDate: Foundation::Date? {
1291 get
1292 }
1293 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1294 public var playCount: Swift::Int? {
1295 get
1296 }
1297 public var playParameters: MusicKit::PlayParameters? {
1298 get
1299 }
1300 public var previewAssets: [MusicKit::PreviewAsset]? {
1301 get
1302 }
1303 public var releaseDate: Foundation::Date? {
1304 get
1305 }
1306 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1307 public var startTime: Foundation::TimeInterval? {
1308 get
1309 }
1310 public var title: Swift::String {
1311 get
1312 }
1313 public var trackNumber: Swift::Int? {
1314 get
1315 }
1316 public var url: Foundation::URL? {
1317 get
1318 }
1319 public var workName: Swift::String? {
1320 get
1321 }
1322 public var albums: MusicKit::MusicItemCollection<MusicKit::Album>? {
1323 get
1324 }
1325 public var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
1326 get
1327 }
1328 public var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? {
1329 get
1330 }
1331 public var songs: MusicKit::MusicItemCollection<MusicKit::Song>? {
1332 get
1333 }
1334 public var moreByArtist: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
1335 get
1336 }
1337 public var moreInGenre: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
1338 get
1339 }
1340 public static func == (a: MusicKit::MusicVideo, b: MusicKit::MusicVideo) -> Swift::Bool
1341 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1342 public typealias ID = MusicKit::MusicItemID
1343 public func hash(into hasher: inout Swift::Hasher)
1344 public var hashValue: Swift::Int {
1345 get
1346 }
1347}
1348@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1349extension MusicKit::MusicVideo : MusicKit::MusicPropertyContainer {
1350 @usableFromInline
1351 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::MusicVideo, Value>) -> Value? where Value : Swift::Decodable {
1352 get throws
1353 }
1354 @usableFromInline
1355 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::MusicVideo, Value>) -> Value? where Value : Swift::Decodable {
1356 get throws
1357 }
1358 @usableFromInline
1359 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1360 get throws
1361 }
1362}
1363@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1364extension MusicKit::PartialMusicProperty where Root == MusicKit::MusicVideo {
1365 @_alwaysEmitIntoClient public static var artistURL: MusicKit::MusicExtendedAttributeProperty<MusicKit::MusicVideo, Foundation::URL> {
1366 get {
1367 MusicExtendedAttributeProperty("artistUrl")
1368 }
1369 }
1370 public static let albums: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::Album>
1371 public static let artists: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::Artist>
1372 public static let genres: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::Genre>
1373 public static let songs: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::Song>
1374 public static let moreByArtist: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::MusicVideo>
1375 public static let moreInGenre: MusicKit::MusicRelationshipProperty<MusicKit::MusicVideo, MusicKit::MusicVideo>
1376}
1377@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1378extension MusicKit::MusicVideo : MusicKit::MusicCatalogChartRequestable {
1379}
1380@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1381extension MusicKit::MusicVideo : MusicKit::MusicCatalogSearchable {
1382}
1383@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1384public protocol MusicVideoFilter {
1385 var id: MusicKit::MusicItemID { get }
1386 var isrc: Swift::String? { get }
1387}
1388@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1389extension MusicKit::MusicVideo : MusicKit::FilterableMusicItem {
1390 public typealias FilterType = MusicKit::MusicVideoFilter
1391}
1392@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1393@available(macOS, unavailable)
1394@available(macCatalyst, unavailable)
1395extension MusicKit::MusicVideo : MusicKit::MusicLibraryAddable {
1396}
1397@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1398@available(macOS, unavailable)
1399@available(macCatalyst, unavailable)
1400extension MusicKit::MusicVideo : MusicKit::MusicPlaylistAddable {
1401}
1402@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1403extension MusicKit::MusicVideo : MusicKit::MusicLibraryRequestable {
1404 public typealias LibraryFilter = MusicKit::LibraryMusicVideoFilter
1405 public typealias LibrarySortProperties = MusicKit::LibraryMusicVideoSortProperties
1406}
1407@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1408public protocol LibraryMusicVideoFilter {
1409 var id: MusicKit::MusicItemID { get }
1410 var albums: MusicKit::MusicItemCollection<MusicKit::Album>? { get }
1411 var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? { get }
1412 var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? { get }
1413 var albumTitle: Swift::String? { get }
1414 var artistName: Swift::String? { get }
1415 var title: Swift::String { get }
1416}
1417@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1418public protocol LibraryMusicVideoSortProperties {
1419 var albumTitle: Swift::String? { get }
1420 var artistName: Swift::String? { get }
1421 var duration: Foundation::TimeInterval? { get }
1422 var lastPlayedDate: Foundation::Date? { get }
1423 var libraryAddedDate: Foundation::Date? { get }
1424 var playCount: Swift::Int? { get }
1425 var title: Swift::String { get }
1426 var trackNumber: Swift::Int? { get }
1427}
1428@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1429extension MusicKit::MusicVideo : MusicKit::MusicLibrarySearchable {
1430}
1431@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1432extension MusicKit::MusicVideo : MusicKit::MusicRecentlyPlayedRequestable {
1433}
1434@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1435extension MusicKit::MusicVideo : Swift::Codable {
1436 public init(from decoder: any Swift::Decoder) throws
1437 public func encode(to encoder: any Swift::Encoder) throws
1438}
1439@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1440extension MusicKit::MusicVideo : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1441 public var description: Swift::String {
1442 get
1443 }
1444 public var debugDescription: Swift::String {
1445 get
1446 }
1447}
1448@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1449public struct Playlist : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1450 public let id: MusicKit::MusicItemID
1451 public var artwork: MusicKit::Artwork? {
1452 get
1453 }
1454 public var curatorName: Swift::String? {
1455 get
1456 }
1457 public var isChart: Swift::Bool? {
1458 get
1459 }
1460 public var kind: MusicKit::Playlist.MusicKit::Kind? {
1461 get
1462 }
1463 public var lastModifiedDate: Foundation::Date? {
1464 get
1465 }
1466 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1467 public var lastPlayedDate: Foundation::Date? {
1468 get
1469 }
1470 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1471 public var libraryAddedDate: Foundation::Date? {
1472 get
1473 }
1474 public var name: Swift::String {
1475 get
1476 }
1477 public var playParameters: MusicKit::PlayParameters? {
1478 get
1479 }
1480 public var shortDescription: Swift::String? {
1481 get
1482 }
1483 public var standardDescription: Swift::String? {
1484 get
1485 }
1486 public var url: Foundation::URL? {
1487 get
1488 }
1489 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1490 public var curator: MusicKit::Curator? {
1491 get
1492 }
1493 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1494 public var entries: MusicKit::MusicItemCollection<MusicKit::Playlist.MusicKit::Entry>? {
1495 get
1496 }
1497 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1498 public var radioShow: MusicKit::RadioShow? {
1499 get
1500 }
1501 public var tracks: MusicKit::MusicItemCollection<MusicKit::Track>? {
1502 get
1503 }
1504 public var featuredArtists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
1505 get
1506 }
1507 public var moreByCurator: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
1508 get
1509 }
1510 public static func == (a: MusicKit::Playlist, b: MusicKit::Playlist) -> Swift::Bool
1511 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1512 public typealias ID = MusicKit::MusicItemID
1513 public func hash(into hasher: inout Swift::Hasher)
1514 public var hashValue: Swift::Int {
1515 get
1516 }
1517}
1518@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1519extension MusicKit::Playlist : MusicKit::MusicPropertyContainer {
1520 @usableFromInline
1521 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Playlist, Value>) -> Value? where Value : Swift::Decodable {
1522 get throws
1523 }
1524 @usableFromInline
1525 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Playlist, Value>) -> Value? where Value : Swift::Decodable {
1526 get throws
1527 }
1528 @usableFromInline
1529 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1530 get throws
1531 }
1532}
1533@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1534extension MusicKit::PartialMusicProperty where Root == MusicKit::Playlist {
1535 public static let tracks: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::Track>
1536 public static let featuredArtists: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::Artist>
1537 public static let moreByCurator: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::Playlist>
1538}
1539@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1540extension MusicKit::PartialMusicProperty where Root == MusicKit::Playlist {
1541 public static let curator: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::Curator>
1542 public static let entries: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::Playlist.MusicKit::Entry>
1543 public static let radioShow: MusicKit::MusicRelationshipProperty<MusicKit::Playlist, MusicKit::RadioShow>
1544}
1545@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
1546@available(watchOS, unavailable)
1547extension MusicKit::Playlist : MusicKit::PlayableMusicItem {
1548}
1549@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1550extension MusicKit::Playlist : MusicKit::MusicCatalogChartRequestable {
1551}
1552@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1553extension MusicKit::Playlist : MusicKit::MusicCatalogSearchable {
1554}
1555@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1556public protocol PlaylistFilter {
1557 var id: MusicKit::MusicItemID { get }
1558}
1559@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1560extension MusicKit::Playlist : MusicKit::FilterableMusicItem {
1561 public typealias FilterType = MusicKit::PlaylistFilter
1562}
1563@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1564@available(macOS, unavailable)
1565@available(macCatalyst, unavailable)
1566extension MusicKit::Playlist : MusicKit::MusicLibraryAddable {
1567}
1568@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1569@available(macOS, unavailable)
1570@available(macCatalyst, unavailable)
1571extension MusicKit::Playlist : MusicKit::MusicPlaylistAddable {
1572}
1573@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1574extension MusicKit::Playlist : MusicKit::MusicLibraryRequestable {
1575 public typealias LibraryFilter = MusicKit::LibraryPlaylistFilter
1576 public typealias LibrarySortProperties = MusicKit::LibraryPlaylistSortProperties
1577}
1578@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1579public protocol LibraryPlaylistFilter {
1580 var id: MusicKit::MusicItemID { get }
1581 var name: Swift::String { get }
1582}
1583@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1584public protocol LibraryPlaylistSortProperties {
1585 var lastPlayedDate: Foundation::Date? { get }
1586 var libraryAddedDate: Foundation::Date? { get }
1587 var name: Swift::String { get }
1588}
1589@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1590extension MusicKit::Playlist : MusicKit::MusicLibrarySectionRequestable {
1591}
1592@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1593extension MusicKit::Playlist : MusicKit::MusicLibrarySearchable {
1594}
1595@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1596extension MusicKit::Playlist : MusicKit::MusicPersonalRecommendationItem {
1597}
1598@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1599extension MusicKit::Playlist : Swift::Codable {
1600 public init(from decoder: any Swift::Decoder) throws
1601 public func encode(to encoder: any Swift::Encoder) throws
1602}
1603@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1604extension MusicKit::Playlist : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1605 public var description: Swift::String {
1606 get
1607 }
1608 public var debugDescription: Swift::String {
1609 get
1610 }
1611}
1612@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1613extension MusicKit::Playlist {
1614 public enum Kind : Swift::Codable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
1615 case editorial
1616 case external
1617 case personalMix
1618 case replay
1619 case userShared
1620 public static func == (a: MusicKit::Playlist.MusicKit::Kind, b: MusicKit::Playlist.MusicKit::Kind) -> Swift::Bool
1621 public func encode(to encoder: any Swift::Encoder) throws
1622 public func hash(into hasher: inout Swift::Hasher)
1623 public var hashValue: Swift::Int {
1624 get
1625 }
1626 public init(from decoder: any Swift::Decoder) throws
1627 }
1628}
1629@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1630extension MusicKit::Playlist {
1631 public struct Entry : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1632 public let id: MusicKit::MusicItemID
1633 public var artwork: MusicKit::Artwork? {
1634 get
1635 }
1636 public var albumTitle: Swift::String? {
1637 get
1638 }
1639 public var artistName: Swift::String {
1640 get
1641 }
1642 public var artistURL: Foundation::URL? {
1643 get
1644 }
1645 public var contentRating: MusicKit::ContentRating? {
1646 get
1647 }
1648 public var duration: Foundation::TimeInterval? {
1649 get
1650 }
1651 public var editorialNotes: MusicKit::EditorialNotes? {
1652 get
1653 }
1654 public var genreNames: [Swift::String] {
1655 get
1656 }
1657 @available(macOS 14.0, macCatalyst 17.0, *)
1658 public var lastPlayedDate: Foundation::Date? {
1659 get
1660 }
1661 @available(macOS 14.0, macCatalyst 17.0, *)
1662 public var libraryAddedDate: Foundation::Date? {
1663 get
1664 }
1665 @available(macOS 14.0, macCatalyst 17.0, *)
1666 public var playCount: Swift::Int? {
1667 get
1668 }
1669 public var isrc: Swift::String? {
1670 get
1671 }
1672 public var item: MusicKit::Playlist.MusicKit::Entry.MusicKit::Item? {
1673 get
1674 }
1675 public var playParameters: MusicKit::PlayParameters? {
1676 get
1677 }
1678 public var position: Swift::Int {
1679 get
1680 }
1681 public var previewAssets: [MusicKit::PreviewAsset]? {
1682 get
1683 }
1684 public var releaseDate: Foundation::Date? {
1685 get
1686 }
1687 public var title: Swift::String {
1688 get
1689 }
1690 public var url: Foundation::URL? {
1691 get
1692 }
1693 public static func == (a: MusicKit::Playlist.MusicKit::Entry, b: MusicKit::Playlist.MusicKit::Entry) -> Swift::Bool
1694 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1695 public typealias ID = MusicKit::MusicItemID
1696 public func hash(into hasher: inout Swift::Hasher)
1697 public var hashValue: Swift::Int {
1698 get
1699 }
1700 }
1701}
1702@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1703extension MusicKit::Playlist.MusicKit::Entry : MusicKit::MusicPropertyContainer {
1704}
1705@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
1706@available(watchOS, unavailable)
1707extension MusicKit::Playlist.MusicKit::Entry : MusicKit::PlayableMusicItem {
1708}
1709@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1710@available(macOS, unavailable)
1711@available(macCatalyst, unavailable)
1712extension MusicKit::Playlist.MusicKit::Entry : MusicKit::MusicLibraryAddable, MusicKit::MusicPlaylistAddable {
1713}
1714@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1715extension MusicKit::Playlist.MusicKit::Entry : Swift::Codable {
1716 public init(from decoder: any Swift::Decoder) throws
1717 public func encode(to encoder: any Swift::Encoder) throws
1718}
1719@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1720extension MusicKit::Playlist.MusicKit::Entry : MusicKit::MusicLibraryRequestable {
1721 public typealias LibraryFilter = MusicKit::LibraryPlaylistEntryFilter
1722 public typealias LibrarySortProperties = MusicKit::LibraryPlaylistEntrySortProperties
1723}
1724@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1725public protocol LibraryPlaylistEntryFilter {
1726 var id: MusicKit::MusicItemID { get }
1727}
1728@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1729public protocol LibraryPlaylistEntrySortProperties {
1730}
1731@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1732extension MusicKit::Playlist.MusicKit::Entry : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1733 public var description: Swift::String {
1734 get
1735 }
1736 public var debugDescription: Swift::String {
1737 get
1738 }
1739}
1740@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1741public struct RadioShow : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1742 public let id: MusicKit::MusicItemID
1743 public var artwork: MusicKit::Artwork? {
1744 get
1745 }
1746 public var editorialNotes: MusicKit::EditorialNotes? {
1747 get
1748 }
1749 public var hostName: Swift::String? {
1750 get
1751 }
1752 public var name: Swift::String {
1753 get
1754 }
1755 public var url: Foundation::URL? {
1756 get
1757 }
1758 public var playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>? {
1759 get
1760 }
1761 public static func == (a: MusicKit::RadioShow, b: MusicKit::RadioShow) -> Swift::Bool
1762 @available(macOS 12.3, iOS 15.4, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1763 public typealias ID = MusicKit::MusicItemID
1764 public func hash(into hasher: inout Swift::Hasher)
1765 public var hashValue: Swift::Int {
1766 get
1767 }
1768}
1769@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1770extension MusicKit::RadioShow : MusicKit::MusicPropertyContainer {
1771 @usableFromInline
1772 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::RadioShow, Value>) -> Value? where Value : Swift::Decodable {
1773 get throws
1774 }
1775 @usableFromInline
1776 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::RadioShow, Value>) -> Value? where Value : Swift::Decodable {
1777 get throws
1778 }
1779 @usableFromInline
1780 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::RadioShow, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1781 get throws
1782 }
1783}
1784@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1785extension MusicKit::PartialMusicProperty where Root == MusicKit::RadioShow {
1786 public static let playlists: MusicKit::MusicRelationshipProperty<MusicKit::RadioShow, MusicKit::Playlist>
1787}
1788@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1789extension MusicKit::RadioShow : MusicKit::MusicCatalogSearchable {
1790}
1791@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1792public protocol RadioShowFilter {
1793 var id: MusicKit::MusicItemID { get }
1794}
1795@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1796extension MusicKit::RadioShow : MusicKit::FilterableMusicItem {
1797 public typealias FilterType = MusicKit::RadioShowFilter
1798}
1799@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1800extension MusicKit::RadioShow : Swift::Codable {
1801 public init(from decoder: any Swift::Decoder) throws
1802 public func encode(to encoder: any Swift::Encoder) throws
1803}
1804@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
1805extension MusicKit::RadioShow : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1806 public var description: Swift::String {
1807 get
1808 }
1809 public var debugDescription: Swift::String {
1810 get
1811 }
1812}
1813@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1814public struct RecordLabel : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1815 public let id: MusicKit::MusicItemID
1816 public var artwork: MusicKit::Artwork? {
1817 get
1818 }
1819 public var shortDescription: Swift::String? {
1820 get
1821 }
1822 public var standardDescription: Swift::String? {
1823 get
1824 }
1825 public var name: Swift::String {
1826 get
1827 }
1828 public var url: Foundation::URL? {
1829 get
1830 }
1831 public var latestReleases: MusicKit::MusicItemCollection<MusicKit::Album>? {
1832 get
1833 }
1834 public var topReleases: MusicKit::MusicItemCollection<MusicKit::Album>? {
1835 get
1836 }
1837 public static func == (a: MusicKit::RecordLabel, b: MusicKit::RecordLabel) -> Swift::Bool
1838 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1839 public typealias ID = MusicKit::MusicItemID
1840 public func hash(into hasher: inout Swift::Hasher)
1841 public var hashValue: Swift::Int {
1842 get
1843 }
1844}
1845@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1846extension MusicKit::RecordLabel : MusicKit::MusicPropertyContainer {
1847 @usableFromInline
1848 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::RecordLabel, Value>) -> Value? where Value : Swift::Decodable {
1849 get throws
1850 }
1851 @usableFromInline
1852 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::RecordLabel, Value>) -> Value? where Value : Swift::Decodable {
1853 get throws
1854 }
1855 @usableFromInline
1856 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::RecordLabel, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
1857 get throws
1858 }
1859}
1860@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1861extension MusicKit::PartialMusicProperty where Root == MusicKit::RecordLabel {
1862 @_alwaysEmitIntoClient public static var latestReleases: MusicKit::MusicRelationshipProperty<MusicKit::RecordLabel, MusicKit::Album> {
1863 get {
1864 MusicRelationshipProperty("latest-releases", kind: .association)
1865 }
1866 }
1867 @_alwaysEmitIntoClient public static var topReleases: MusicKit::MusicRelationshipProperty<MusicKit::RecordLabel, MusicKit::Album> {
1868 get {
1869 MusicRelationshipProperty("top-releases", kind: .association)
1870 }
1871 }
1872}
1873@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1874extension MusicKit::RecordLabel : MusicKit::MusicCatalogSearchable {
1875}
1876@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1877public protocol RecordLabelFilter {
1878 var id: MusicKit::MusicItemID { get }
1879}
1880@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1881extension MusicKit::RecordLabel : MusicKit::FilterableMusicItem {
1882 public typealias FilterType = MusicKit::RecordLabelFilter
1883}
1884@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1885extension MusicKit::RecordLabel : Swift::Codable {
1886 public init(from decoder: any Swift::Decoder) throws
1887 public func encode(to encoder: any Swift::Encoder) throws
1888}
1889@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1890extension MusicKit::RecordLabel : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
1891 public var description: Swift::String {
1892 get
1893 }
1894 public var debugDescription: Swift::String {
1895 get
1896 }
1897}
1898@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1899public struct Song : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
1900 public let id: MusicKit::MusicItemID
1901 public var artwork: MusicKit::Artwork? {
1902 get
1903 }
1904 public var albumTitle: Swift::String? {
1905 get
1906 }
1907 public var artistName: Swift::String {
1908 get
1909 }
1910 public var artistURL: Foundation::URL? {
1911 get
1912 }
1913 public var attribution: Swift::String? {
1914 get
1915 }
1916 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1917 public var audioVariants: [MusicKit::AudioVariant]? {
1918 get
1919 }
1920 public var composerName: Swift::String? {
1921 get
1922 }
1923 public var contentRating: MusicKit::ContentRating? {
1924 get
1925 }
1926 public var discNumber: Swift::Int? {
1927 get
1928 }
1929 public var duration: Foundation::TimeInterval? {
1930 get
1931 }
1932 public var editorialNotes: MusicKit::EditorialNotes? {
1933 get
1934 }
1935 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1936 public var endTime: Foundation::TimeInterval? {
1937 get
1938 }
1939 public var genreNames: [Swift::String] {
1940 get
1941 }
1942 public var hasLyrics: Swift::Bool {
1943 get
1944 }
1945 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1946 public var isAppleDigitalMaster: Swift::Bool? {
1947 get
1948 }
1949 public var isrc: Swift::String? {
1950 get
1951 }
1952 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1953 public var lastPlayedDate: Foundation::Date? {
1954 get
1955 }
1956 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1957 public var libraryAddedDate: Foundation::Date? {
1958 get
1959 }
1960 public var movementCount: Swift::Int? {
1961 get
1962 }
1963 public var movementName: Swift::String? {
1964 get
1965 }
1966 public var movementNumber: Swift::Int? {
1967 get
1968 }
1969 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
1970 public var playCount: Swift::Int? {
1971 get
1972 }
1973 public var playParameters: MusicKit::PlayParameters? {
1974 get
1975 }
1976 public var previewAssets: [MusicKit::PreviewAsset]? {
1977 get
1978 }
1979 public var releaseDate: Foundation::Date? {
1980 get
1981 }
1982 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1983 public var startTime: Foundation::TimeInterval? {
1984 get
1985 }
1986 public var title: Swift::String {
1987 get
1988 }
1989 public var trackNumber: Swift::Int? {
1990 get
1991 }
1992 public var url: Foundation::URL? {
1993 get
1994 }
1995 public var workName: Swift::String? {
1996 get
1997 }
1998 public var albums: MusicKit::MusicItemCollection<MusicKit::Album>? {
1999 get
2000 }
2001 public var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
2002 get
2003 }
2004 public var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? {
2005 get
2006 }
2007 public var station: MusicKit::Station? {
2008 get
2009 }
2010 public var composers: MusicKit::MusicItemCollection<MusicKit::Artist>? {
2011 get
2012 }
2013 public var musicVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>? {
2014 get
2015 }
2016 public static func == (a: MusicKit::Song, b: MusicKit::Song) -> Swift::Bool
2017 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2018 public typealias ID = MusicKit::MusicItemID
2019 public func hash(into hasher: inout Swift::Hasher)
2020 public var hashValue: Swift::Int {
2021 get
2022 }
2023}
2024@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2025extension MusicKit::Song : MusicKit::MusicPropertyContainer {
2026 @usableFromInline
2027 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Song, Value>) -> Value? where Value : Swift::Decodable {
2028 get throws
2029 }
2030 @usableFromInline
2031 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Song, Value>) -> Value? where Value : Swift::Decodable {
2032 get throws
2033 }
2034 @usableFromInline
2035 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Song, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
2036 get throws
2037 }
2038}
2039@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2040extension MusicKit::PartialMusicProperty where Root == MusicKit::Song {
2041 @_alwaysEmitIntoClient public static var artistURL: MusicKit::MusicExtendedAttributeProperty<MusicKit::Song, Foundation::URL> {
2042 get {
2043 MusicExtendedAttributeProperty("artistUrl")
2044 }
2045 }
2046 public static let albums: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::Album>
2047 public static let artists: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::Artist>
2048 public static let genres: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::Genre>
2049 public static let station: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::Station>
2050 public static let composers: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::Artist>
2051 public static let musicVideos: MusicKit::MusicRelationshipProperty<MusicKit::Song, MusicKit::MusicVideo>
2052}
2053@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2054extension MusicKit::PartialMusicProperty where Root == MusicKit::Song {
2055 public static let audioVariants: MusicKit::MusicExtendedAttributeProperty<MusicKit::Song, [MusicKit::AudioVariant]>
2056}
2057@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2058@available(watchOS, unavailable)
2059extension MusicKit::Song : MusicKit::PlayableMusicItem {
2060}
2061@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2062extension MusicKit::Song : MusicKit::MusicCatalogChartRequestable {
2063}
2064@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2065extension MusicKit::Song : MusicKit::MusicCatalogSearchable {
2066}
2067@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2068public protocol SongFilter {
2069 var id: MusicKit::MusicItemID { get }
2070 var isrc: Swift::String? { get }
2071}
2072@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2073extension MusicKit::Song : MusicKit::FilterableMusicItem {
2074 public typealias FilterType = MusicKit::SongFilter
2075}
2076@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2077@available(macOS, unavailable)
2078@available(macCatalyst, unavailable)
2079extension MusicKit::Song : MusicKit::MusicLibraryAddable {
2080}
2081@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2082@available(macOS, unavailable)
2083@available(macCatalyst, unavailable)
2084extension MusicKit::Song : MusicKit::MusicPlaylistAddable {
2085}
2086@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2087extension MusicKit::Song : MusicKit::MusicLibraryRequestable {
2088 public typealias LibraryFilter = MusicKit::LibrarySongFilter
2089 public typealias LibrarySortProperties = MusicKit::LibrarySongSortProperties
2090}
2091@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2092public protocol LibrarySongFilter {
2093 var id: MusicKit::MusicItemID { get }
2094 var albums: MusicKit::MusicItemCollection<MusicKit::Album>? { get }
2095 var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? { get }
2096 var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? { get }
2097 var albumTitle: Swift::String? { get }
2098 var artistName: Swift::String? { get }
2099 var composerName: Swift::String? { get }
2100 var title: Swift::String { get }
2101}
2102@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2103public protocol LibrarySongSortProperties {
2104 var albumTitle: Swift::String? { get }
2105 var artistName: Swift::String? { get }
2106 var composerName: Swift::String? { get }
2107 var discNumber: Swift::Int? { get }
2108 var duration: Foundation::TimeInterval? { get }
2109 var lastPlayedDate: Foundation::Date? { get }
2110 var libraryAddedDate: Foundation::Date? { get }
2111 var playCount: Swift::Int? { get }
2112 var title: Swift::String { get }
2113 var trackNumber: Swift::Int? { get }
2114}
2115@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2116extension MusicKit::Song : MusicKit::MusicLibrarySearchable {
2117}
2118@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2119extension MusicKit::Song : MusicKit::MusicRecentlyPlayedRequestable {
2120}
2121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2122extension MusicKit::Song : Swift::Codable {
2123 public init(from decoder: any Swift::Decoder) throws
2124 public func encode(to encoder: any Swift::Encoder) throws
2125}
2126@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2127extension MusicKit::Song : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2128 public var description: Swift::String {
2129 get
2130 }
2131 public var debugDescription: Swift::String {
2132 get
2133 }
2134}
2135@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2136public struct Station : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2137 public let id: MusicKit::MusicItemID
2138 public var artwork: MusicKit::Artwork? {
2139 get
2140 }
2141 public var contentRating: MusicKit::ContentRating? {
2142 get
2143 }
2144 public var duration: Foundation::TimeInterval? {
2145 get
2146 }
2147 public var editorialNotes: MusicKit::EditorialNotes? {
2148 get
2149 }
2150 public var episodeNumber: Swift::Int? {
2151 get
2152 }
2153 public var isLive: Swift::Bool {
2154 get
2155 }
2156 public var name: Swift::String {
2157 get
2158 }
2159 public var playParameters: MusicKit::PlayParameters? {
2160 get
2161 }
2162 public var stationProviderName: Swift::String? {
2163 get
2164 }
2165 public var url: Foundation::URL? {
2166 get
2167 }
2168 public static func == (a: MusicKit::Station, b: MusicKit::Station) -> Swift::Bool
2169 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2170 public typealias ID = MusicKit::MusicItemID
2171 public func hash(into hasher: inout Swift::Hasher)
2172 public var hashValue: Swift::Int {
2173 get
2174 }
2175}
2176@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2177extension MusicKit::Station : MusicKit::MusicPropertyContainer {
2178 @usableFromInline
2179 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Station, Value>) -> Value? where Value : Swift::Decodable {
2180 get throws
2181 }
2182 @usableFromInline
2183 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Station, Value>) -> Value? where Value : Swift::Decodable {
2184 get throws
2185 }
2186 @usableFromInline
2187 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Station, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
2188 get throws
2189 }
2190}
2191@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2192@available(watchOS, unavailable)
2193extension MusicKit::Station : MusicKit::PlayableMusicItem {
2194}
2195@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2196extension MusicKit::Station : MusicKit::MusicCatalogSearchable {
2197}
2198@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2199public protocol StationFilter {
2200 var id: MusicKit::MusicItemID { get }
2201}
2202@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2203extension MusicKit::Station : MusicKit::FilterableMusicItem {
2204 public typealias FilterType = MusicKit::StationFilter
2205}
2206@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2207extension MusicKit::Station : MusicKit::MusicPersonalRecommendationItem {
2208}
2209@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2210extension MusicKit::Station : MusicKit::MusicRecentlyPlayedRequestable {
2211}
2212@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2213extension MusicKit::Station : Swift::Codable {
2214 public init(from decoder: any Swift::Decoder) throws
2215 public func encode(to encoder: any Swift::Encoder) throws
2216}
2217@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2218extension MusicKit::Station : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2219 public var description: Swift::String {
2220 get
2221 }
2222 public var debugDescription: Swift::String {
2223 get
2224 }
2225}
2226@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2227extension MusicKit::Playlist.MusicKit::Entry {
2228 public enum Item : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2229 case musicVideo(MusicKit::MusicVideo)
2230 case song(MusicKit::Song)
2231 public var id: MusicKit::MusicItemID {
2232 get
2233 }
2234 public var artwork: MusicKit::Artwork? {
2235 get
2236 }
2237 public var albumTitle: Swift::String? {
2238 get
2239 }
2240 public var artistName: Swift::String {
2241 get
2242 }
2243 public var artistURL: Foundation::URL? {
2244 get
2245 }
2246 public var contentRating: MusicKit::ContentRating? {
2247 get
2248 }
2249 public var duration: Foundation::TimeInterval? {
2250 get
2251 }
2252 public var editorialNotes: MusicKit::EditorialNotes? {
2253 get
2254 }
2255 public var genreNames: [Swift::String] {
2256 get
2257 }
2258 @available(macOS 14.0, macCatalyst 17.0, *)
2259 public var lastPlayedDate: Foundation::Date? {
2260 get
2261 }
2262 @available(macOS 14.0, macCatalyst 17.0, *)
2263 public var libraryAddedDate: Foundation::Date? {
2264 get
2265 }
2266 public var isrc: Swift::String? {
2267 get
2268 }
2269 @available(macOS 14.0, macCatalyst 17.0, *)
2270 public var playCount: Swift::Int? {
2271 get
2272 }
2273 public var playParameters: MusicKit::PlayParameters? {
2274 get
2275 }
2276 public var previewAssets: [MusicKit::PreviewAsset]? {
2277 get
2278 }
2279 public var releaseDate: Foundation::Date? {
2280 get
2281 }
2282 public var title: Swift::String {
2283 get
2284 }
2285 public var url: Foundation::URL? {
2286 get
2287 }
2288 public static func == (a: MusicKit::Playlist.MusicKit::Entry.MusicKit::Item, b: MusicKit::Playlist.MusicKit::Entry.MusicKit::Item) -> Swift::Bool
2289 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2290 public typealias ID = MusicKit::MusicItemID
2291 public func hash(into hasher: inout Swift::Hasher)
2292 public var hashValue: Swift::Int {
2293 get
2294 }
2295 }
2296}
2297@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2298extension MusicKit::Playlist.MusicKit::Entry.MusicKit::Item : MusicKit::MusicPropertyContainer {
2299 @usableFromInline
2300 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Playlist.MusicKit::Entry.MusicKit::Item, Value>) -> Value? where Value : Swift::Decodable {
2301 get throws
2302 }
2303 @usableFromInline
2304 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Playlist.MusicKit::Entry.MusicKit::Item, Value>) -> Value? where Value : Swift::Decodable {
2305 get throws
2306 }
2307 @usableFromInline
2308 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Playlist.MusicKit::Entry.MusicKit::Item, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
2309 get throws
2310 }
2311}
2312@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
2313@available(watchOS, unavailable)
2314extension MusicKit::Playlist.MusicKit::Entry.MusicKit::Item : MusicKit::PlayableMusicItem {
2315}
2316@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2317extension MusicKit::Playlist.MusicKit::Entry.MusicKit::Item : Swift::Codable {
2318 public init(from decoder: any Swift::Decoder) throws
2319 public func encode(to encoder: any Swift::Encoder) throws
2320}
2321@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2322extension MusicKit::Playlist.MusicKit::Entry.MusicKit::Item : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2323 public var description: Swift::String {
2324 get
2325 }
2326 public var debugDescription: Swift::String {
2327 get
2328 }
2329}
2330@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2331public enum Track : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2332 case song(MusicKit::Song)
2333 case musicVideo(MusicKit::MusicVideo)
2334 public var id: MusicKit::MusicItemID {
2335 get
2336 }
2337 public var artwork: MusicKit::Artwork? {
2338 get
2339 }
2340 public var albumTitle: Swift::String? {
2341 get
2342 }
2343 public var artistName: Swift::String {
2344 get
2345 }
2346 public var artistURL: Foundation::URL? {
2347 get
2348 }
2349 public var contentRating: MusicKit::ContentRating? {
2350 get
2351 }
2352 @_alwaysEmitIntoClient public var discNumber: Swift::Int? {
2353 get {
2354 let discNumber: Int?
2355 switch self {
… 7 unchanged lines …
2363 return discNumber
2364 }
2365 }
2366 public var duration: Foundation.TimeInterval? {
2367 get
2368 }
2369 public var editorialNotes: MusicKit.EditorialNotes? {
2370 get
2371 }
2372 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2373 public var endTime: Foundation.TimeInterval? {
2374 get
2375 }
2376 public var genreNames: [Swift.String] {
2377 get
2378 }
2379 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2380 public var lastPlayedDate: Foundation.Date? {
2381 get
2382 }
2383 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2384 public var libraryAddedDate: Foundation.Date? {
2385 get
2386 }
2387 public var isrc: Swift.String? {
2388 get
2389 }
2390 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2391 public var playCount: Swift.Int? {
2392 get
2393 }
2394 public var playParameters: MusicKit.PlayParameters? {
2395 get
2396 }
2397 public var previewAssets: [MusicKit.PreviewAsset]? {
2398 get
2399 }
2400 public var releaseDate: Foundation.Date? {
2401 get
2402 }
2403 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2404 public var startTime: Foundation.TimeInterval? {
2405 get
2406 }
2407 public var title: Swift.String {
2408 get
2409 }
2410 public var trackNumber: Swift.Int? {
2411 get
2412 }
2413 public var url: Foundation.URL? {
2414 get
2415 }
2416 public var workName: Swift.String? {
2417 get
2418 }
2419 public var albums: MusicKit.MusicItemCollection<MusicKit.Album>? {
2420 get
2421 }
2422 public var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? {
2423 get
2424 }
2425 public var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? {
2426 get
2427 }
2428 public static func == (a: MusicKit.Track, b: MusicKit.Track) -> Swift.Bool
2429 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2430 public typealias ID = MusicKit.MusicItemID
2431 public func hash(into hasher: inout Swift.Hasher)
2432 public var hashValue: Swift.Int {
2433 get
2434 }
2435}
2436@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2437extension MusicKit.Track : MusicKit.MusicPropertyContainer {
2438 @usableFromInline
2439 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.Track, Value>) -> Value? where Value : Swift.Decodable {
2440 get throws
2441 }
2442 @usableFromInline
2443 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.Track, Value>) -> Value? where Value : Swift.Decodable {
2444 get throws
2445 }
2446 @usableFromInline
2447 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.Track, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
2448 get throws
2449 }
2450}
2451@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2452@available(watchOS, unavailable)
2453extension MusicKit.Track : MusicKit.PlayableMusicItem {
2454}
2455@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2456@available(macOS, unavailable)
2457@available(macCatalyst, unavailable)
2458extension MusicKit.Track : MusicKit.MusicLibraryAddable, MusicKit.MusicPlaylistAddable {
2459}
2460@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2461extension MusicKit.Track : MusicKit.MusicLibraryRequestable {
2462 public typealias LibraryFilter = MusicKit.LibraryTrackFilter
2463 public typealias LibrarySortProperties = MusicKit.LibraryTrackSortProperties
2464}
2465@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2466public protocol LibraryTrackFilter {
2467 var id: MusicKit.MusicItemID { get }
2468 var albums: MusicKit.MusicItemCollection<MusicKit.Album>? { get }
2469 var artists: MusicKit.MusicItemCollection<MusicKit.Artist>? { get }
2470 var genres: MusicKit.MusicItemCollection<MusicKit.Genre>? { get }
2471 var albumTitle: Swift.String? { get }
2472 var artistName: Swift.String? { get }
2473 var title: Swift.String { get }
2474}
2475@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2476public protocol LibraryTrackSortProperties {
2477 var albumTitle: Swift.String? { get }
2478 var artistName: Swift.String? { get }
2479 var discNumber: Swift.Int? { get }
2480 var duration: Foundation.TimeInterval? { get }
2481 var lastPlayedDate: Foundation.Date? { get }
2482 var libraryAddedDate: Foundation.Date? { get }
2483 var playCount: Swift.Int? { get }
2484 var title: Swift.String { get }
2485 var trackNumber: Swift.Int? { get }
2486}
2487@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2488extension MusicKit.Track : MusicKit.MusicRecentlyPlayedRequestable {
2489}
2490@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2491extension MusicKit.Track : Swift.Codable {
2492 public init(from decoder: any Swift.Decoder) throws
2493 public func encode(to encoder: any Swift.Encoder) throws
2494}
2495@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2496extension MusicKit.Track : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2497 public var description: Swift.String {
2498 get
2499 }
2500 public var debugDescription: Swift.String {
2501 get
2502 }
2503}
2504@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2505public enum AudioVariant : Swift.CaseIterable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
2506 case dolbyAtmos
2507 case dolbyAudio
2508 case lossless
2509 case highResolutionLossless
2510 case lossyStereo
2511 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
2512 case spatialAudio
2513 public static var allCases: [MusicKit.AudioVariant] {
2514 get
2515 }
2516 public static func == (a: MusicKit.AudioVariant, b: MusicKit.AudioVariant) -> Swift.Bool
2517 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2518 public typealias AllCases = [MusicKit.AudioVariant]
2519 public func hash(into hasher: inout Swift.Hasher)
2520 public var hashValue: Swift.Int {
2521 get
2522 }
2523}
2524@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2525extension MusicKit.AudioVariant : Swift.Codable {
2526 public init(from decoder: any Swift.Decoder) throws
2527 public func encode(to encoder: any Swift.Encoder) throws
2528}
2529@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2530extension MusicKit.AudioVariant : Swift.CustomStringConvertible {
2531 public var description: Swift.String {
2532 get
2533 }
2534}
2535@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2536public enum ContentRating : Swift.Codable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
2537 case clean
2538 case explicit
2539 public static func == (a: MusicKit.ContentRating, b: MusicKit.ContentRating) -> Swift.Bool
2540 public func encode(to encoder: any Swift.Encoder) throws
2541 public func hash(into hasher: inout Swift.Hasher)
2542 public var hashValue: Swift.Int {
2543 get
2544 }
2545 public init(from decoder: any Swift.Decoder) throws
2546}
2547@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2548public struct EditorialNotes : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2549 public let short: Swift.String?
2550 public let standard: Swift.String?
2551 public let name: Swift.String?
2552 public let tagline: Swift.String?
2553 public static func == (a: MusicKit.EditorialNotes, b: MusicKit.EditorialNotes) -> Swift.Bool
2554 public func hash(into hasher: inout Swift.Hasher)
2555 public var hashValue: Swift.Int {
2556 get
2557 }
2558}
2559@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2560extension MusicKit.EditorialNotes : Swift.Codable {
2561 public init(from decoder: any Swift.Decoder) throws
2562 public func encode(to encoder: any Swift.Encoder) throws
2563}
2564@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2565extension MusicKit.EditorialNotes : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2566 public var description: Swift.String {
2567 get
2568 }
2569 public var debugDescription: Swift.String {
2570 get
2571 }
2572}
2573@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2574public struct PreviewAsset : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2575 public let artwork: MusicKit.Artwork?
2576 public let url: Foundation.URL?
2577 public let hlsURL: Foundation.URL?
2578 public static func == (a: MusicKit.PreviewAsset, b: MusicKit.PreviewAsset) -> Swift.Bool
2579 public func hash(into hasher: inout Swift.Hasher)
2580 public var hashValue: Swift.Int {
2581 get
2582 }
2583}
2584@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2585extension MusicKit.PreviewAsset : Swift.Codable {
2586 public init(from decoder: any Swift.Decoder) throws
2587 public func encode(to encoder: any Swift.Encoder) throws
2588}
2589@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2590extension MusicKit.PreviewAsset : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2591 public var description: Swift.String {
2592 get
2593 }
2594 public var debugDescription: Swift.String {
2595 get
2596 }
2597}
2598@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2599public struct MusicCatalogChart<MusicItemType> : Swift.Identifiable where MusicItemType : MusicKit.MusicCatalogChartRequestable {
2600 public let id: Swift.String
2601 public let kind: MusicKit.MusicCatalogChartKind
2602 public let title: Swift.String
2603 public let items: MusicKit.MusicItemCollection<MusicItemType>
2604 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2605 public typealias ID = Swift.String
2606}
2607@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2608extension MusicKit.MusicCatalogChart : Swift.Equatable where MusicItemType : Swift.Equatable {
2609 public static func == (a: MusicKit.MusicCatalogChart<MusicItemType>, b: MusicKit.MusicCatalogChart<MusicItemType>) -> Swift.Bool
2610}
2611@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2612extension MusicKit.MusicCatalogChart : Swift.Hashable where MusicItemType : Swift.Hashable {
2613 public func hash(into hasher: inout Swift.Hasher)
2614 public var hashValue: Swift.Int {
2615 get
2616 }
2617}
2618@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2619extension MusicKit.MusicCatalogChart : Swift.Sendable {
2620}
2621@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2622extension MusicKit.MusicCatalogChart : Swift.Decodable where MusicItemType : Swift.Decodable {
2623 public init(from decoder: any Swift.Decoder) throws
2624}
2625@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2626extension MusicKit.MusicCatalogChart : Swift.Encodable where MusicItemType : Swift.Encodable {
2627 public func encode(to encoder: any Swift.Encoder) throws
2628}
2629@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2630extension MusicKit.MusicCatalogChart : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2631 public var description: Swift.String {
2632 get
2633 }
2634 public var debugDescription: Swift.String {
2635 get
2636 }
2637}
2638@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2639public enum MusicCatalogChartKind : Swift.CaseIterable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
2640 case mostPlayed
2641 case cityTop
2642 case dailyGlobalTop
2643 public static func == (a: MusicKit.MusicCatalogChartKind, b: MusicKit.MusicCatalogChartKind) -> Swift.Bool
2644 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2645 public typealias AllCases = [MusicKit.MusicCatalogChartKind]
2646 nonisolated public static var allCases: [MusicKit.MusicCatalogChartKind] {
2647 get
2648 }
2649 public func hash(into hasher: inout Swift.Hasher)
2650 public var hashValue: Swift.Int {
2651 get
2652 }
2653}
2654@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2655extension MusicKit.MusicCatalogChartKind : Swift.Codable {
2656 public init(from decoder: any Swift.Decoder) throws
2657 public func encode(to encoder: any Swift.Encoder) throws
2658}
2659@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2660extension MusicKit.MusicCatalogChartKind : Swift.CustomStringConvertible {
2661 public var description: Swift.String {
2662 get
2663 }
2664}
2665@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2666public protocol MusicCatalogChartRequestable : MusicKit.MusicItem {
2667}
2668@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2669public struct MusicCatalogChartsRequest : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2670 public init(genre: MusicKit.Genre? = nil, kinds: [MusicKit.MusicCatalogChartKind] = [.mostPlayed], types: [any MusicKit.MusicCatalogChartRequestable.Type])
2671 public var genre: MusicKit.Genre? {
2672 get
2673 }
2674 public var kinds: [MusicKit.MusicCatalogChartKind] {
2675 get
2676 }
2677 public var types: [any MusicKit.MusicCatalogChartRequestable.Type] {
2678 get
2679 }
2680 public var limit: Swift.Int?
2681 public var offset: Swift.Int?
2682 public func response() async throws -> MusicKit.MusicCatalogChartsResponse
2683 public static func == (a: MusicKit.MusicCatalogChartsRequest, b: MusicKit.MusicCatalogChartsRequest) -> Swift.Bool
2684 public func hash(into hasher: inout Swift.Hasher)
2685 public var hashValue: Swift.Int {
2686 get
2687 }
2688}
2689@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2690public struct MusicCatalogChartsResponse : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2691 public let albumCharts: [MusicKit.MusicCatalogChart<MusicKit.Album>]
2692 public let musicVideoCharts: [MusicKit.MusicCatalogChart<MusicKit.MusicVideo>]
2693 public let playlistCharts: [MusicKit.MusicCatalogChart<MusicKit.Playlist>]
2694 public let songCharts: [MusicKit.MusicCatalogChart<MusicKit.Song>]
2695 public static func == (a: MusicKit.MusicCatalogChartsResponse, b: MusicKit.MusicCatalogChartsResponse) -> Swift.Bool
2696 public func hash(into hasher: inout Swift.Hasher)
2697 public var hashValue: Swift.Int {
2698 get
2699 }
2700}
2701@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2702extension MusicKit.MusicCatalogChartsResponse : Swift.Codable {
2703 public init(from decoder: any Swift.Decoder) throws
2704 public func encode(to encoder: any Swift.Encoder) throws
2705}
2706@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2707extension MusicKit.MusicCatalogChartsResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2708 public var description: Swift.String {
2709 get
2710 }
2711 public var debugDescription: Swift.String {
2712 get
2713 }
2714}
2715@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2716public typealias MusicRecentlyPlayedContainerRequest = MusicKit.MusicRecentlyPlayedRequest<MusicKit.RecentlyPlayedMusicItem>
2717@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2718public typealias MusicRecentlyPlayedContainerResponse = MusicKit.MusicRecentlyPlayedResponse<MusicKit.RecentlyPlayedMusicItem>
2719@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2720public struct MusicRecentlyPlayedRequest<MusicItemType> where MusicItemType : MusicKit.MusicRecentlyPlayedRequestable, MusicItemType : Swift.Decodable {
2721 public init()
2722 public var limit: Swift.Int?
2723 public var offset: Swift.Int?
2724 public func response() async throws -> MusicKit.MusicRecentlyPlayedResponse<MusicItemType>
2725}
2726@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2727public protocol MusicRecentlyPlayedRequestable : MusicKit.MusicItem {
2728}
2729@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2730public struct MusicRecentlyPlayedResponse<MusicItemType> where MusicItemType : MusicKit.MusicRecentlyPlayedRequestable {
2731 public let items: MusicKit.MusicItemCollection<MusicItemType>
2732}
2733@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2734extension MusicKit.MusicRecentlyPlayedResponse : Swift.Equatable where MusicItemType : Swift.Equatable {
2735 public static func == (a: MusicKit.MusicRecentlyPlayedResponse<MusicItemType>, b: MusicKit.MusicRecentlyPlayedResponse<MusicItemType>) -> Swift.Bool
2736}
2737@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2738extension MusicKit.MusicRecentlyPlayedResponse : Swift.Hashable where MusicItemType : Swift.Hashable {
2739 public func hash(into hasher: inout Swift.Hasher)
2740 public var hashValue: Swift.Int {
2741 get
2742 }
2743}
2744@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2745extension MusicKit.MusicRecentlyPlayedResponse : Swift.Sendable {
2746}
2747@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2748extension MusicKit.MusicRecentlyPlayedResponse : Swift.Decodable where MusicItemType : Swift.Decodable {
2749 public init(from decoder: any Swift.Decoder) throws
2750}
2751@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2752extension MusicKit.MusicRecentlyPlayedResponse : Swift.Encodable where MusicItemType : Swift.Encodable {
2753 public func encode(to encoder: any Swift.Encoder) throws
2754}
2755@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2756extension MusicKit.MusicRecentlyPlayedResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2757 public var description: Swift.String {
2758 get
2759 }
2760 public var debugDescription: Swift.String {
2761 get
2762 }
2763}
2764@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2765public enum RecentlyPlayedMusicItem : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2766 case album(MusicKit.Album)
2767 case playlist(MusicKit.Playlist)
2768 case station(MusicKit.Station)
2769 public var id: MusicKit.MusicItemID {
2770 get
2771 }
2772 public var artwork: MusicKit.Artwork? {
2773 get
2774 }
2775 public var playParameters: MusicKit.PlayParameters? {
2776 get
2777 }
2778 public var title: Swift.String {
2779 get
2780 }
2781 public var subtitle: Swift.String? {
2782 get
2783 }
2784 public static func == (a: MusicKit.RecentlyPlayedMusicItem, b: MusicKit.RecentlyPlayedMusicItem) -> Swift.Bool
2785 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2786 public typealias ID = MusicKit.MusicItemID
2787 public func hash(into hasher: inout Swift.Hasher)
2788 public var hashValue: Swift.Int {
2789 get
2790 }
2791}
2792@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2793extension MusicKit.RecentlyPlayedMusicItem : Swift.Codable {
2794 public init(from decoder: any Swift.Decoder) throws
2795 public func encode(to encoder: any Swift.Encoder) throws
2796}
2797@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2798extension MusicKit.RecentlyPlayedMusicItem : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2799 public var description: Swift.String {
2800 get
2801 }
2802 public var debugDescription: Swift.String {
2803 get
2804 }
2805}
2806@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
2807@available(watchOS, unavailable)
2808extension MusicKit.RecentlyPlayedMusicItem : MusicKit.PlayableMusicItem {
2809}
2810@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2811extension MusicKit.RecentlyPlayedMusicItem : MusicKit.MusicRecentlyPlayedRequestable {
2812}
2813@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2814public struct MusicPersonalRecommendation : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2815 public let id: MusicKit.MusicItemID
2816 public let title: Swift.String?
2817 public let reason: Swift.String?
2818 public let nextRefreshDate: Foundation.Date?
2819 public var types: [any MusicKit.MusicPersonalRecommendationItem.Type] {
2820 get
2821 }
2822 public var albums: MusicKit.MusicItemCollection<MusicKit.Album> {
2823 get
2824 }
2825 public var playlists: MusicKit.MusicItemCollection<MusicKit.Playlist> {
2826 get
2827 }
2828 public var stations: MusicKit.MusicItemCollection<MusicKit.Station> {
2829 get
2830 }
2831 public var items: MusicKit.MusicItemCollection<MusicKit.MusicPersonalRecommendation.Item> {
2832 get
2833 }
2834 public static func == (a: MusicKit.MusicPersonalRecommendation, b: MusicKit.MusicPersonalRecommendation) -> Swift.Bool
2835 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2836 public typealias ID = MusicKit.MusicItemID
2837 public func hash(into hasher: inout Swift.Hasher)
2838 public var hashValue: Swift.Int {
2839 get
2840 }
2841}
2842@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2843extension MusicKit.MusicPersonalRecommendation : Swift.Codable {
2844 public init(from decoder: any Swift.Decoder) throws
2845 public func encode(to encoder: any Swift.Encoder) throws
2846}
2847@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2848extension MusicKit.MusicPersonalRecommendation : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2849 public var description: Swift.String {
2850 get
2851 }
2852 public var debugDescription: Swift.String {
2853 get
2854 }
2855}
2856@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2857public protocol MusicPersonalRecommendationItem : MusicKit.MusicItem {
2858}
2859@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2860extension MusicKit.MusicPersonalRecommendation {
2861 public enum Item : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
2862 case album(MusicKit.Album)
2863 case playlist(MusicKit.Playlist)
2864 case station(MusicKit.Station)
2865 public var id: MusicKit.MusicItemID {
2866 get
2867 }
2868 public var artwork: MusicKit.Artwork? {
2869 get
2870 }
2871 public var title: Swift.String {
2872 get
2873 }
2874 public var subtitle: Swift.String? {
2875 get
2876 }
2877 public static func == (a: MusicKit.MusicPersonalRecommendation.Item, b: MusicKit.MusicPersonalRecommendation.Item) -> Swift.Bool
2878 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
2879 public typealias ID = MusicKit.MusicItemID
2880 public func hash(into hasher: inout Swift.Hasher)
2881 public var hashValue: Swift.Int {
2882 get
2883 }
2884 }
2885}
2886@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2887extension MusicKit.MusicPersonalRecommendation.Item : Swift.Codable {
2888 public init(from decoder: any Swift.Decoder) throws
2889 public func encode(to encoder: any Swift.Encoder) throws
2890}
2891@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2892extension MusicKit.MusicPersonalRecommendation.Item : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2893 public var description: Swift.String {
2894 get
2895 }
2896 public var debugDescription: Swift.String {
2897 get
2898 }
2899}
2900@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2901public struct MusicPersonalRecommendationsRequest : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2902 public init()
2903 public init<S>(refreshing recommendations: S) where S : Swift.Sequence, S.Element == MusicKit.MusicPersonalRecommendation
2904 public var limit: Swift.Int?
2905 public var offset: Swift.Int?
2906 public func response() async throws -> MusicKit.MusicPersonalRecommendationsResponse
2907 public static func == (a: MusicKit.MusicPersonalRecommendationsRequest, b: MusicKit.MusicPersonalRecommendationsRequest) -> Swift.Bool
2908 public func hash(into hasher: inout Swift.Hasher)
2909 public var hashValue: Swift.Int {
2910 get
2911 }
2912}
2913@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2914public struct MusicPersonalRecommendationsResponse : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2915 public let recommendations: MusicKit.MusicItemCollection<MusicKit.MusicPersonalRecommendation>
2916 public static func == (a: MusicKit.MusicPersonalRecommendationsResponse, b: MusicKit.MusicPersonalRecommendationsResponse) -> Swift.Bool
2917 public func hash(into hasher: inout Swift.Hasher)
2918 public var hashValue: Swift.Int {
2919 get
2920 }
2921}
2922@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2923extension MusicKit.MusicPersonalRecommendationsResponse : Swift.Codable {
2924 public init(from decoder: any Swift.Decoder) throws
2925 public func encode(to encoder: any Swift.Encoder) throws
2926}
2927@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2928extension MusicKit.MusicPersonalRecommendationsResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
2929 public var description: Swift.String {
2930 get
2931 }
2932 public var debugDescription: Swift.String {
2933 get
2934 }
2935}
2936@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2937public struct MusicCatalogResourceRequest<MusicItemType> : Swift.Sendable where MusicItemType : MusicKit.MusicItem, MusicItemType : Swift.Decodable {
2938 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2939 public init() where MusicItemType : MusicKit.MusicCatalogTopLevelResourceRequesting
2940 public init<Value>(matching keyPath: Swift.KeyPath<MusicItemType.FilterType, Value>, equalTo value: Value) where MusicItemType : MusicKit.FilterableMusicItem
2941 public init<Value>(matching keyPath: Swift.KeyPath<MusicItemType.FilterType, Value>, memberOf values: [Value]) where MusicItemType : MusicKit.FilterableMusicItem
2942 public var limit: Swift.Int?
2943 public var properties: [MusicKit.PartialMusicAsyncProperty<MusicItemType>]
2944 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2945 public var options: [MusicKit.MusicCatalogResourceRequestOption]
2946 public func response() async throws -> MusicKit.MusicCatalogResourceResponse<MusicItemType>
2947}
2948@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2949public protocol MusicCatalogTopLevelResourceRequesting : MusicKit.MusicItem {
2950}
2951@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2952extension MusicKit.MusicItem where Self : MusicKit.MusicPropertyContainer, Self : Swift.Decodable {
2953 public func with(_ properties: [MusicKit.PartialMusicAsyncProperty<Self>]) async throws -> Self
2954 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2955 public func with(_ properties: [MusicKit.PartialMusicAsyncProperty<Self>], preferredSource: MusicKit.MusicPropertySource) async throws -> Self
2956 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2957 public func with(_ properties: MusicKit.PartialMusicAsyncProperty<Self>..., preferredSource: MusicKit.MusicPropertySource) async throws -> Self
2958}
2959@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2960public struct MusicCatalogResourceRequestOption : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2961 public static let findEquivalents: MusicKit.MusicCatalogResourceRequestOption
2962 public static func == (a: MusicKit.MusicCatalogResourceRequestOption, b: MusicKit.MusicCatalogResourceRequestOption) -> Swift.Bool
2963 public func hash(into hasher: inout Swift.Hasher)
2964 public var hashValue: Swift.Int {
2965 get
2966 }
2967}
2968@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2969extension MusicKit.MusicCatalogResourceRequestOption : Swift.CustomStringConvertible {
2970 public var description: Swift.String {
2971 get
2972 }
2973}
2974@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2975public struct MusicCatalogResourceResponse<MusicItemType> where MusicItemType : MusicKit.MusicItem {
2976 public let items: MusicKit.MusicItemCollection<MusicItemType>
2977}
2978@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2979extension MusicKit.MusicCatalogResourceResponse : Swift.Equatable where MusicItemType : Swift.Equatable {
2980 public static func == (a: MusicKit.MusicCatalogResourceResponse<MusicItemType>, b: MusicKit.MusicCatalogResourceResponse<MusicItemType>) -> Swift.Bool
2981}
2982@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2983extension MusicKit.MusicCatalogResourceResponse : Swift.Hashable where MusicItemType : Swift.Hashable {
2984 public func hash(into hasher: inout Swift.Hasher)
2985 public var hashValue: Swift.Int {
2986 get
2987 }
2988}
2989@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2990extension MusicKit.MusicCatalogResourceResponse : Swift.Sendable {
2991}
2992@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2993extension MusicKit.MusicCatalogResourceResponse : Swift.Decodable where MusicItemType : Swift.Decodable {
2994 public init(from decoder: any Swift.Decoder) throws
2995}
2996@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2997extension MusicKit.MusicCatalogResourceResponse : Swift.Encodable where MusicItemType : Swift.Encodable {
2998 public func encode(to encoder: any Swift.Encoder) throws
2999}
3000@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3001extension MusicKit.MusicCatalogResourceResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3002 public var description: Swift.String {
3003 get
3004 }
3005 public var debugDescription: Swift.String {
3006 get
3007 }
3008}
3009@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3010extension MusicKit.MusicCatalogSearchSuggestionsResponse {
3011 public struct Suggestion : Swift.Codable, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
3012 public var id: Swift.String {
3013 get
3014 }
3015 public let displayTerm: Swift.String
3016 public let searchTerm: Swift.String
3017 public static func == (a: MusicKit.MusicCatalogSearchSuggestionsResponse.Suggestion, b: MusicKit.MusicCatalogSearchSuggestionsResponse.Suggestion) -> Swift.Bool
3018 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
3019 public typealias ID = Swift.String
3020 public func encode(to encoder: any Swift.Encoder) throws
3021 public func hash(into hasher: inout Swift.Hasher)
3022 public var hashValue: Swift.Int {
3023 get
3024 }
3025 public init(from decoder: any Swift.Decoder) throws
3026 }
3027}
3028@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3029extension MusicKit.MusicCatalogSearchSuggestionsResponse.Suggestion : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3030 public var description: Swift.String {
3031 get
3032 }
3033 public var debugDescription: Swift.String {
3034 get
3035 }
3036}
3037@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3038public struct MusicCatalogSearchSuggestionsRequest {
3039 public init(term: Swift.String, includingTopResultsOfTypes types: [any MusicKit.MusicCatalogSearchable.Type] = [])
3040 public let term: Swift.String
3041 public var typesForTopResults: [any MusicKit.MusicCatalogSearchable.Type] {
3042 get
3043 }
3044 public var limit: Swift.Int?
3045 public func response() async throws -> MusicKit.MusicCatalogSearchSuggestionsResponse
3046}
3047@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3048public struct MusicCatalogSearchSuggestionsResponse : Swift.Equatable, Swift.Hashable, Swift.Sendable {
3049 public typealias TopResult = MusicKit.MusicCatalogSearchResponse.TopResult
3050 public let suggestions: [MusicKit.MusicCatalogSearchSuggestionsResponse.Suggestion]
3051 public let topResults: MusicKit.MusicItemCollection<MusicKit.MusicCatalogSearchSuggestionsResponse.TopResult>
3052 public static func == (a: MusicKit.MusicCatalogSearchSuggestionsResponse, b: MusicKit.MusicCatalogSearchSuggestionsResponse) -> Swift.Bool
3053 public func hash(into hasher: inout Swift.Hasher)
3054 public var hashValue: Swift.Int {
3055 get
3056 }
3057}
3058@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3059extension MusicKit.MusicCatalogSearchSuggestionsResponse : Swift.Codable {
3060 public init(from decoder: any Swift.Decoder) throws
3061 public func encode(to encoder: any Swift.Encoder) throws
3062}
3063@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3064extension MusicKit.MusicCatalogSearchSuggestionsResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3065 public var description: Swift.String {
3066 get
3067 }
3068 public var debugDescription: Swift.String {
3069 get
3070 }
3071}
3072@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3073public protocol MusicCatalogSearchable : MusicKit.MusicItem {
3074}
3075@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3076public struct MusicCatalogSearchRequest {
3077 public init(term: Swift.String, types: [any MusicKit.MusicCatalogSearchable.Type])
3078 public let term: Swift.String
3079 public var types: [any MusicKit.MusicCatalogSearchable.Type] {
3080 get
3081 }
3082 public var limit: Swift.Int?
3083 public var offset: Swift.Int?
3084 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3085 public var includeTopResults: Swift.Bool
3086 public func response() async throws -> MusicKit.MusicCatalogSearchResponse
3087}
3088@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3089public struct MusicCatalogSearchResponse : Swift.Equatable, Swift.Hashable {
3090 public let albums: MusicKit.MusicItemCollection<MusicKit.Album>
3091 public let artists: MusicKit.MusicItemCollection<MusicKit.Artist>
3092 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3093 public let curators: MusicKit.MusicItemCollection<MusicKit.Curator>
3094 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3095 public let musicVideos: MusicKit.MusicItemCollection<MusicKit.MusicVideo>
3096 public let playlists: MusicKit.MusicItemCollection<MusicKit.Playlist>
3097 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3098 public let radioShows: MusicKit.MusicItemCollection<MusicKit.RadioShow>
3099 public let recordLabels: MusicKit.MusicItemCollection<MusicKit.RecordLabel>
3100 public let songs: MusicKit.MusicItemCollection<MusicKit.Song>
3101 public let stations: MusicKit.MusicItemCollection<MusicKit.Station>
3102 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3103 public let topResults: MusicKit.MusicItemCollection<MusicKit.MusicCatalogSearchResponse.TopResult>
3104 public static func == (a: MusicKit.MusicCatalogSearchResponse, b: MusicKit.MusicCatalogSearchResponse) -> Swift.Bool
3105 public func hash(into hasher: inout Swift.Hasher)
3106 public var hashValue: Swift.Int {
3107 get
3108 }
3109}
3110@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3111extension MusicKit.MusicCatalogSearchResponse : Swift.Codable {
3112 public init(from decoder: any Swift.Decoder) throws
3113 public func encode(to encoder: any Swift.Encoder) throws
3114}
3115@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3116extension MusicKit.MusicCatalogSearchResponse : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3117 public var description: Swift.String {
3118 get
3119 }
3120 public var debugDescription: Swift.String {
3121 get
3122 }
3123}
3124@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3125extension MusicKit.MusicCatalogSearchResponse {
3126 public enum TopResult : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
3127 case album(MusicKit.Album)
3128 case artist(MusicKit.Artist)
3129 case curator(MusicKit.Curator)
3130 case musicVideo(MusicKit.MusicVideo)
3131 case playlist(MusicKit.Playlist)
3132 case radioShow(MusicKit.RadioShow)
3133 case recordLabel(MusicKit.RecordLabel)
3134 case song(MusicKit.Song)
3135 case station(MusicKit.Station)
3136 public var id: MusicKit.MusicItemID {
3137 get
3138 }
3139 public var artwork: MusicKit.Artwork? {
3140 get
3141 }
3142 public var title: Swift.String {
3143 get
3144 }
3145 public static func == (a: MusicKit.MusicCatalogSearchResponse.TopResult, b: MusicKit.MusicCatalogSearchResponse.TopResult) -> Swift.Bool
3146 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
3147 public typealias ID = MusicKit.MusicItemID
3148 public func hash(into hasher: inout Swift.Hasher)
3149 public var hashValue: Swift.Int {
3150 get
3151 }
3152 }
3153}
3154@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3155extension MusicKit.MusicCatalogSearchResponse.TopResult : Swift.Codable {
3156 public init(from decoder: any Swift.Decoder) throws
3157 public func encode(to encoder: any Swift.Encoder) throws
3158}
3159@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3160extension MusicKit.MusicCatalogSearchResponse.TopResult : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3161 public var description: Swift.String {
3162 get
3163 }
3164 public var debugDescription: Swift.String {
3165 get
3166 }
3167}
3168@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3169@available(watchOS, unavailable)
3170public class ApplicationMusicPlayer : MusicKit.MusicPlayer {
3171 public static let shared: MusicKit.ApplicationMusicPlayer
3172 public var queue: MusicKit.ApplicationMusicPlayer.Queue {
3173 get
3174 set
3175 }
2363 return discNumber
2364 }
2365 }
2366 public var duration: Foundation::TimeInterval? {
2367 get
2368 }
2369 public var editorialNotes: MusicKit::EditorialNotes? {
2370 get
2371 }
2372 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2373 public var endTime: Foundation::TimeInterval? {
2374 get
2375 }
2376 public var genreNames: [Swift::String] {
2377 get
2378 }
2379 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2380 public var lastPlayedDate: Foundation::Date? {
2381 get
2382 }
2383 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2384 public var libraryAddedDate: Foundation::Date? {
2385 get
2386 }
2387 public var isrc: Swift::String? {
2388 get
2389 }
2390 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2391 public var playCount: Swift::Int? {
2392 get
2393 }
2394 public var playParameters: MusicKit::PlayParameters? {
2395 get
2396 }
2397 public var previewAssets: [MusicKit::PreviewAsset]? {
2398 get
2399 }
2400 public var releaseDate: Foundation::Date? {
2401 get
2402 }
2403 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2404 public var startTime: Foundation::TimeInterval? {
2405 get
2406 }
2407 public var title: Swift::String {
2408 get
2409 }
2410 public var trackNumber: Swift::Int? {
2411 get
2412 }
2413 public var url: Foundation::URL? {
2414 get
2415 }
2416 public var workName: Swift::String? {
2417 get
2418 }
2419 public var albums: MusicKit::MusicItemCollection<MusicKit::Album>? {
2420 get
2421 }
2422 public var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? {
2423 get
2424 }
2425 public var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? {
2426 get
2427 }
2428 public static func == (a: MusicKit::Track, b: MusicKit::Track) -> Swift::Bool
2429 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2430 public typealias ID = MusicKit::MusicItemID
2431 public func hash(into hasher: inout Swift::Hasher)
2432 public var hashValue: Swift::Int {
2433 get
2434 }
2435}
2436@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2437extension MusicKit::Track : MusicKit::MusicPropertyContainer {
2438 @usableFromInline
2439 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::Track, Value>) -> Value? where Value : Swift::Decodable {
2440 get throws
2441 }
2442 @usableFromInline
2443 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::Track, Value>) -> Value? where Value : Swift::Decodable {
2444 get throws
2445 }
2446 @usableFromInline
2447 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::Track, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
2448 get throws
2449 }
2450}
2451@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
2452@available(watchOS, unavailable)
2453extension MusicKit::Track : MusicKit::PlayableMusicItem {
2454}
2455@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2456@available(macOS, unavailable)
2457@available(macCatalyst, unavailable)
2458extension MusicKit::Track : MusicKit::MusicLibraryAddable, MusicKit::MusicPlaylistAddable {
2459}
2460@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2461extension MusicKit::Track : MusicKit::MusicLibraryRequestable {
2462 public typealias LibraryFilter = MusicKit::LibraryTrackFilter
2463 public typealias LibrarySortProperties = MusicKit::LibraryTrackSortProperties
2464}
2465@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2466public protocol LibraryTrackFilter {
2467 var id: MusicKit::MusicItemID { get }
2468 var albums: MusicKit::MusicItemCollection<MusicKit::Album>? { get }
2469 var artists: MusicKit::MusicItemCollection<MusicKit::Artist>? { get }
2470 var genres: MusicKit::MusicItemCollection<MusicKit::Genre>? { get }
2471 var albumTitle: Swift::String? { get }
2472 var artistName: Swift::String? { get }
2473 var title: Swift::String { get }
2474}
2475@available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
2476public protocol LibraryTrackSortProperties {
2477 var albumTitle: Swift::String? { get }
2478 var artistName: Swift::String? { get }
2479 var discNumber: Swift::Int? { get }
2480 var duration: Foundation::TimeInterval? { get }
2481 var lastPlayedDate: Foundation::Date? { get }
2482 var libraryAddedDate: Foundation::Date? { get }
2483 var playCount: Swift::Int? { get }
2484 var title: Swift::String { get }
2485 var trackNumber: Swift::Int? { get }
2486}
2487@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2488extension MusicKit::Track : MusicKit::MusicRecentlyPlayedRequestable {
2489}
2490@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2491extension MusicKit::Track : Swift::Codable {
2492 public init(from decoder: any Swift::Decoder) throws
2493 public func encode(to encoder: any Swift::Encoder) throws
2494}
2495@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2496extension MusicKit::Track : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2497 public var description: Swift::String {
2498 get
2499 }
2500 public var debugDescription: Swift::String {
2501 get
2502 }
2503}
2504@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2505public enum AudioVariant : Swift::CaseIterable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
2506 case dolbyAtmos
2507 case dolbyAudio
2508 case lossless
2509 case highResolutionLossless
2510 case lossyStereo
2511 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
2512 case spatialAudio
2513 public static var allCases: [MusicKit::AudioVariant] {
2514 get
2515 }
2516 public static func == (a: MusicKit::AudioVariant, b: MusicKit::AudioVariant) -> Swift::Bool
2517 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2518 public typealias AllCases = [MusicKit::AudioVariant]
2519 public func hash(into hasher: inout Swift::Hasher)
2520 public var hashValue: Swift::Int {
2521 get
2522 }
2523}
2524@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2525extension MusicKit::AudioVariant : Swift::Codable {
2526 public init(from decoder: any Swift::Decoder) throws
2527 public func encode(to encoder: any Swift::Encoder) throws
2528}
2529@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2530extension MusicKit::AudioVariant : Swift::CustomStringConvertible {
2531 public var description: Swift::String {
2532 get
2533 }
2534}
2535@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2536public enum ContentRating : Swift::Codable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
2537 case clean
2538 case explicit
2539 public static func == (a: MusicKit::ContentRating, b: MusicKit::ContentRating) -> Swift::Bool
2540 public func encode(to encoder: any Swift::Encoder) throws
2541 public func hash(into hasher: inout Swift::Hasher)
2542 public var hashValue: Swift::Int {
2543 get
2544 }
2545 public init(from decoder: any Swift::Decoder) throws
2546}
2547@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2548public struct EditorialNotes : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2549 public let short: Swift::String?
2550 public let standard: Swift::String?
2551 public let name: Swift::String?
2552 public let tagline: Swift::String?
2553 public static func == (a: MusicKit::EditorialNotes, b: MusicKit::EditorialNotes) -> Swift::Bool
2554 public func hash(into hasher: inout Swift::Hasher)
2555 public var hashValue: Swift::Int {
2556 get
2557 }
2558}
2559@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2560extension MusicKit::EditorialNotes : Swift::Codable {
2561 public init(from decoder: any Swift::Decoder) throws
2562 public func encode(to encoder: any Swift::Encoder) throws
2563}
2564@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2565extension MusicKit::EditorialNotes : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2566 public var description: Swift::String {
2567 get
2568 }
2569 public var debugDescription: Swift::String {
2570 get
2571 }
2572}
2573@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2574public struct PreviewAsset : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2575 public let artwork: MusicKit::Artwork?
2576 public let url: Foundation::URL?
2577 public let hlsURL: Foundation::URL?
2578 public static func == (a: MusicKit::PreviewAsset, b: MusicKit::PreviewAsset) -> Swift::Bool
2579 public func hash(into hasher: inout Swift::Hasher)
2580 public var hashValue: Swift::Int {
2581 get
2582 }
2583}
2584@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2585extension MusicKit::PreviewAsset : Swift::Codable {
2586 public init(from decoder: any Swift::Decoder) throws
2587 public func encode(to encoder: any Swift::Encoder) throws
2588}
2589@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2590extension MusicKit::PreviewAsset : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2591 public var description: Swift::String {
2592 get
2593 }
2594 public var debugDescription: Swift::String {
2595 get
2596 }
2597}
2598@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2599public struct MusicCatalogChart<MusicItemType> : Swift::Identifiable where MusicItemType : MusicKit::MusicCatalogChartRequestable {
2600 public let id: Swift::String
2601 public let kind: MusicKit::MusicCatalogChartKind
2602 public let title: Swift::String
2603 public let items: MusicKit::MusicItemCollection<MusicItemType>
2604 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2605 public typealias ID = Swift::String
2606}
2607@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2608extension MusicKit::MusicCatalogChart : Swift::Equatable where MusicItemType : Swift::Equatable {
2609 public static func == (a: MusicKit::MusicCatalogChart<MusicItemType>, b: MusicKit::MusicCatalogChart<MusicItemType>) -> Swift::Bool
2610}
2611@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2612extension MusicKit::MusicCatalogChart : Swift::Hashable where MusicItemType : Swift::Hashable {
2613 public func hash(into hasher: inout Swift::Hasher)
2614 public var hashValue: Swift::Int {
2615 get
2616 }
2617}
2618@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2619extension MusicKit::MusicCatalogChart : Swift::Sendable {
2620}
2621@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2622extension MusicKit::MusicCatalogChart : Swift::Decodable where MusicItemType : Swift::Decodable {
2623 public init(from decoder: any Swift::Decoder) throws
2624}
2625@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2626extension MusicKit::MusicCatalogChart : Swift::Encodable where MusicItemType : Swift::Encodable {
2627 public func encode(to encoder: any Swift::Encoder) throws
2628}
2629@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2630extension MusicKit::MusicCatalogChart : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2631 public var description: Swift::String {
2632 get
2633 }
2634 public var debugDescription: Swift::String {
2635 get
2636 }
2637}
2638@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2639public enum MusicCatalogChartKind : Swift::CaseIterable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
2640 case mostPlayed
2641 case cityTop
2642 case dailyGlobalTop
2643 public static func == (a: MusicKit::MusicCatalogChartKind, b: MusicKit::MusicCatalogChartKind) -> Swift::Bool
2644 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2645 public typealias AllCases = [MusicKit::MusicCatalogChartKind]
2646 nonisolated public static var allCases: [MusicKit::MusicCatalogChartKind] {
2647 get
2648 }
2649 public func hash(into hasher: inout Swift::Hasher)
2650 public var hashValue: Swift::Int {
2651 get
2652 }
2653}
2654@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2655extension MusicKit::MusicCatalogChartKind : Swift::Codable {
2656 public init(from decoder: any Swift::Decoder) throws
2657 public func encode(to encoder: any Swift::Encoder) throws
2658}
2659@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2660extension MusicKit::MusicCatalogChartKind : Swift::CustomStringConvertible {
2661 public var description: Swift::String {
2662 get
2663 }
2664}
2665@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2666public protocol MusicCatalogChartRequestable : MusicKit::MusicItem {
2667}
2668@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2669public struct MusicCatalogChartsRequest : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2670 public init(genre: MusicKit::Genre? = nil, kinds: [MusicKit::MusicCatalogChartKind] = [.mostPlayed], types: [any MusicKit::MusicCatalogChartRequestable.Type])
2671 public var genre: MusicKit::Genre? {
2672 get
2673 }
2674 public var kinds: [MusicKit::MusicCatalogChartKind] {
2675 get
2676 }
2677 public var types: [any MusicKit::MusicCatalogChartRequestable.Type] {
2678 get
2679 }
2680 public var limit: Swift::Int?
2681 public var offset: Swift::Int?
2682 public func response() async throws -> MusicKit::MusicCatalogChartsResponse
2683 public static func == (a: MusicKit::MusicCatalogChartsRequest, b: MusicKit::MusicCatalogChartsRequest) -> Swift::Bool
2684 public func hash(into hasher: inout Swift::Hasher)
2685 public var hashValue: Swift::Int {
2686 get
2687 }
2688}
2689@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2690public struct MusicCatalogChartsResponse : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2691 public let albumCharts: [MusicKit::MusicCatalogChart<MusicKit::Album>]
2692 public let musicVideoCharts: [MusicKit::MusicCatalogChart<MusicKit::MusicVideo>]
2693 public let playlistCharts: [MusicKit::MusicCatalogChart<MusicKit::Playlist>]
2694 public let songCharts: [MusicKit::MusicCatalogChart<MusicKit::Song>]
2695 public static func == (a: MusicKit::MusicCatalogChartsResponse, b: MusicKit::MusicCatalogChartsResponse) -> Swift::Bool
2696 public func hash(into hasher: inout Swift::Hasher)
2697 public var hashValue: Swift::Int {
2698 get
2699 }
2700}
2701@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2702extension MusicKit::MusicCatalogChartsResponse : Swift::Codable {
2703 public init(from decoder: any Swift::Decoder) throws
2704 public func encode(to encoder: any Swift::Encoder) throws
2705}
2706@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2707extension MusicKit::MusicCatalogChartsResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2708 public var description: Swift::String {
2709 get
2710 }
2711 public var debugDescription: Swift::String {
2712 get
2713 }
2714}
2715@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2716public typealias MusicRecentlyPlayedContainerRequest = MusicKit::MusicRecentlyPlayedRequest<MusicKit::RecentlyPlayedMusicItem>
2717@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2718public typealias MusicRecentlyPlayedContainerResponse = MusicKit::MusicRecentlyPlayedResponse<MusicKit::RecentlyPlayedMusicItem>
2719@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2720public struct MusicRecentlyPlayedRequest<MusicItemType> where MusicItemType : MusicKit::MusicRecentlyPlayedRequestable, MusicItemType : Swift::Decodable {
2721 public init()
2722 public var limit: Swift::Int?
2723 public var offset: Swift::Int?
2724 public func response() async throws -> MusicKit::MusicRecentlyPlayedResponse<MusicItemType>
2725}
2726@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2727public protocol MusicRecentlyPlayedRequestable : MusicKit::MusicItem {
2728}
2729@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2730public struct MusicRecentlyPlayedResponse<MusicItemType> where MusicItemType : MusicKit::MusicRecentlyPlayedRequestable {
2731 public let items: MusicKit::MusicItemCollection<MusicItemType>
2732}
2733@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2734extension MusicKit::MusicRecentlyPlayedResponse : Swift::Equatable where MusicItemType : Swift::Equatable {
2735 public static func == (a: MusicKit::MusicRecentlyPlayedResponse<MusicItemType>, b: MusicKit::MusicRecentlyPlayedResponse<MusicItemType>) -> Swift::Bool
2736}
2737@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2738extension MusicKit::MusicRecentlyPlayedResponse : Swift::Hashable where MusicItemType : Swift::Hashable {
2739 public func hash(into hasher: inout Swift::Hasher)
2740 public var hashValue: Swift::Int {
2741 get
2742 }
2743}
2744@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2745extension MusicKit::MusicRecentlyPlayedResponse : Swift::Sendable {
2746}
2747@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2748extension MusicKit::MusicRecentlyPlayedResponse : Swift::Decodable where MusicItemType : Swift::Decodable {
2749 public init(from decoder: any Swift::Decoder) throws
2750}
2751@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2752extension MusicKit::MusicRecentlyPlayedResponse : Swift::Encodable where MusicItemType : Swift::Encodable {
2753 public func encode(to encoder: any Swift::Encoder) throws
2754}
2755@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2756extension MusicKit::MusicRecentlyPlayedResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2757 public var description: Swift::String {
2758 get
2759 }
2760 public var debugDescription: Swift::String {
2761 get
2762 }
2763}
2764@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2765public enum RecentlyPlayedMusicItem : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2766 case album(MusicKit::Album)
2767 case playlist(MusicKit::Playlist)
2768 case station(MusicKit::Station)
2769 public var id: MusicKit::MusicItemID {
2770 get
2771 }
2772 public var artwork: MusicKit::Artwork? {
2773 get
2774 }
2775 public var playParameters: MusicKit::PlayParameters? {
2776 get
2777 }
2778 public var title: Swift::String {
2779 get
2780 }
2781 public var subtitle: Swift::String? {
2782 get
2783 }
2784 public static func == (a: MusicKit::RecentlyPlayedMusicItem, b: MusicKit::RecentlyPlayedMusicItem) -> Swift::Bool
2785 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2786 public typealias ID = MusicKit::MusicItemID
2787 public func hash(into hasher: inout Swift::Hasher)
2788 public var hashValue: Swift::Int {
2789 get
2790 }
2791}
2792@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2793extension MusicKit::RecentlyPlayedMusicItem : Swift::Codable {
2794 public init(from decoder: any Swift::Decoder) throws
2795 public func encode(to encoder: any Swift::Encoder) throws
2796}
2797@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2798extension MusicKit::RecentlyPlayedMusicItem : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2799 public var description: Swift::String {
2800 get
2801 }
2802 public var debugDescription: Swift::String {
2803 get
2804 }
2805}
2806@available(iOS 16.0, tvOS 16.0, visionOS 1.0, macOS 14.0, *)
2807@available(watchOS, unavailable)
2808extension MusicKit::RecentlyPlayedMusicItem : MusicKit::PlayableMusicItem {
2809}
2810@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2811extension MusicKit::RecentlyPlayedMusicItem : MusicKit::MusicRecentlyPlayedRequestable {
2812}
2813@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2814public struct MusicPersonalRecommendation : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2815 public let id: MusicKit::MusicItemID
2816 public let title: Swift::String?
2817 public let reason: Swift::String?
2818 public let nextRefreshDate: Foundation::Date?
2819 public var types: [any MusicKit::MusicPersonalRecommendationItem.Type] {
2820 get
2821 }
2822 public var albums: MusicKit::MusicItemCollection<MusicKit::Album> {
2823 get
2824 }
2825 public var playlists: MusicKit::MusicItemCollection<MusicKit::Playlist> {
2826 get
2827 }
2828 public var stations: MusicKit::MusicItemCollection<MusicKit::Station> {
2829 get
2830 }
2831 public var items: MusicKit::MusicItemCollection<MusicKit::MusicPersonalRecommendation.MusicKit::Item> {
2832 get
2833 }
2834 public static func == (a: MusicKit::MusicPersonalRecommendation, b: MusicKit::MusicPersonalRecommendation) -> Swift::Bool
2835 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2836 public typealias ID = MusicKit::MusicItemID
2837 public func hash(into hasher: inout Swift::Hasher)
2838 public var hashValue: Swift::Int {
2839 get
2840 }
2841}
2842@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2843extension MusicKit::MusicPersonalRecommendation : Swift::Codable {
2844 public init(from decoder: any Swift::Decoder) throws
2845 public func encode(to encoder: any Swift::Encoder) throws
2846}
2847@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2848extension MusicKit::MusicPersonalRecommendation : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2849 public var description: Swift::String {
2850 get
2851 }
2852 public var debugDescription: Swift::String {
2853 get
2854 }
2855}
2856@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2857public protocol MusicPersonalRecommendationItem : MusicKit::MusicItem {
2858}
2859@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2860extension MusicKit::MusicPersonalRecommendation {
2861 public enum Item : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
2862 case album(MusicKit::Album)
2863 case playlist(MusicKit::Playlist)
2864 case station(MusicKit::Station)
2865 public var id: MusicKit::MusicItemID {
2866 get
2867 }
2868 public var artwork: MusicKit::Artwork? {
2869 get
2870 }
2871 public var title: Swift::String {
2872 get
2873 }
2874 public var subtitle: Swift::String? {
2875 get
2876 }
2877 public static func == (a: MusicKit::MusicPersonalRecommendation.MusicKit::Item, b: MusicKit::MusicPersonalRecommendation.MusicKit::Item) -> Swift::Bool
2878 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2879 public typealias ID = MusicKit::MusicItemID
2880 public func hash(into hasher: inout Swift::Hasher)
2881 public var hashValue: Swift::Int {
2882 get
2883 }
2884 }
2885}
2886@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2887extension MusicKit::MusicPersonalRecommendation.MusicKit::Item : Swift::Codable {
2888 public init(from decoder: any Swift::Decoder) throws
2889 public func encode(to encoder: any Swift::Encoder) throws
2890}
2891@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2892extension MusicKit::MusicPersonalRecommendation.MusicKit::Item : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2893 public var description: Swift::String {
2894 get
2895 }
2896 public var debugDescription: Swift::String {
2897 get
2898 }
2899}
2900@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2901public struct MusicPersonalRecommendationsRequest : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2902 public init()
2903 public init<S>(refreshing recommendations: S) where S : Swift::Sequence, S.Element == MusicKit::MusicPersonalRecommendation
2904 public var limit: Swift::Int?
2905 public var offset: Swift::Int?
2906 public func response() async throws -> MusicKit::MusicPersonalRecommendationsResponse
2907 public static func == (a: MusicKit::MusicPersonalRecommendationsRequest, b: MusicKit::MusicPersonalRecommendationsRequest) -> Swift::Bool
2908 public func hash(into hasher: inout Swift::Hasher)
2909 public var hashValue: Swift::Int {
2910 get
2911 }
2912}
2913@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2914public struct MusicPersonalRecommendationsResponse : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2915 public let recommendations: MusicKit::MusicItemCollection<MusicKit::MusicPersonalRecommendation>
2916 public static func == (a: MusicKit::MusicPersonalRecommendationsResponse, b: MusicKit::MusicPersonalRecommendationsResponse) -> Swift::Bool
2917 public func hash(into hasher: inout Swift::Hasher)
2918 public var hashValue: Swift::Int {
2919 get
2920 }
2921}
2922@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2923extension MusicKit::MusicPersonalRecommendationsResponse : Swift::Codable {
2924 public init(from decoder: any Swift::Decoder) throws
2925 public func encode(to encoder: any Swift::Encoder) throws
2926}
2927@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2928extension MusicKit::MusicPersonalRecommendationsResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
2929 public var description: Swift::String {
2930 get
2931 }
2932 public var debugDescription: Swift::String {
2933 get
2934 }
2935}
2936@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2937public struct MusicCatalogResourceRequest<MusicItemType> : Swift::Sendable where MusicItemType : MusicKit::MusicItem, MusicItemType : Swift::Decodable {
2938 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2939 public init() where MusicItemType : MusicKit::MusicCatalogTopLevelResourceRequesting
2940 public init<Value>(matching keyPath: Swift::KeyPath<MusicItemType.FilterType, Value>, equalTo value: Value) where MusicItemType : MusicKit::FilterableMusicItem
2941 public init<Value>(matching keyPath: Swift::KeyPath<MusicItemType.FilterType, Value>, memberOf values: [Value]) where MusicItemType : MusicKit::FilterableMusicItem
2942 public var limit: Swift::Int?
2943 public var properties: [MusicKit::PartialMusicAsyncProperty<MusicItemType>]
2944 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2945 public var options: [MusicKit::MusicCatalogResourceRequestOption]
2946 public func response() async throws -> MusicKit::MusicCatalogResourceResponse<MusicItemType>
2947}
2948@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2949public protocol MusicCatalogTopLevelResourceRequesting : MusicKit::MusicItem {
2950}
2951@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2952extension MusicKit::MusicItem where Self : MusicKit::MusicPropertyContainer, Self : Swift::Decodable {
2953 public func with(_ properties: [MusicKit::PartialMusicAsyncProperty<Self>]) async throws -> Self
2954 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2955 public func with(_ properties: [MusicKit::PartialMusicAsyncProperty<Self>], preferredSource: MusicKit::MusicPropertySource) async throws -> Self
2956 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2957 public func with(_ properties: MusicKit::PartialMusicAsyncProperty<Self>..., preferredSource: MusicKit::MusicPropertySource) async throws -> Self
2958}
2959@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2960public struct MusicCatalogResourceRequestOption : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2961 public static let findEquivalents: MusicKit::MusicCatalogResourceRequestOption
2962 public static func == (a: MusicKit::MusicCatalogResourceRequestOption, b: MusicKit::MusicCatalogResourceRequestOption) -> Swift::Bool
2963 public func hash(into hasher: inout Swift::Hasher)
2964 public var hashValue: Swift::Int {
2965 get
2966 }
2967}
2968@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2969extension MusicKit::MusicCatalogResourceRequestOption : Swift::CustomStringConvertible {
2970 public var description: Swift::String {
2971 get
2972 }
2973}
2974@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2975public struct MusicCatalogResourceResponse<MusicItemType> where MusicItemType : MusicKit::MusicItem {
2976 public let items: MusicKit::MusicItemCollection<MusicItemType>
2977 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
2978 public func item(for id: MusicKit::MusicItemID) -> MusicItemType?
2979}
2980@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2981extension MusicKit::MusicCatalogResourceResponse : Swift::Equatable where MusicItemType : Swift::Equatable {
2982 public static func == (a: MusicKit::MusicCatalogResourceResponse<MusicItemType>, b: MusicKit::MusicCatalogResourceResponse<MusicItemType>) -> Swift::Bool
2983}
2984@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2985extension MusicKit::MusicCatalogResourceResponse : Swift::Hashable where MusicItemType : Swift::Hashable {
2986 public func hash(into hasher: inout Swift::Hasher)
2987 public var hashValue: Swift::Int {
2988 get
2989 }
2990}
2991@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2992extension MusicKit::MusicCatalogResourceResponse : Swift::Sendable {
2993}
2994@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2995extension MusicKit::MusicCatalogResourceResponse : Swift::Decodable where MusicItemType : Swift::Decodable {
2996 public init(from decoder: any Swift::Decoder) throws
2997}
2998@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2999extension MusicKit::MusicCatalogResourceResponse : Swift::Encodable where MusicItemType : Swift::Encodable {
3000 public func encode(to encoder: any Swift::Encoder) throws
3001}
3002@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3003extension MusicKit::MusicCatalogResourceResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3004 public var description: Swift::String {
3005 get
3006 }
3007 public var debugDescription: Swift::String {
3008 get
3009 }
3010}
3011@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3012extension MusicKit::MusicCatalogSearchSuggestionsResponse {
3013 public struct Suggestion : Swift::Codable, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
3014 public var id: Swift::String {
3015 get
3016 }
3017 public let displayTerm: Swift::String
3018 public let searchTerm: Swift::String
3019 public static func == (a: MusicKit::MusicCatalogSearchSuggestionsResponse.MusicKit::Suggestion, b: MusicKit::MusicCatalogSearchSuggestionsResponse.MusicKit::Suggestion) -> Swift::Bool
3020 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3021 public typealias ID = Swift::String
3022 public func encode(to encoder: any Swift::Encoder) throws
3023 public func hash(into hasher: inout Swift::Hasher)
3024 public var hashValue: Swift::Int {
3025 get
3026 }
3027 public init(from decoder: any Swift::Decoder) throws
3028 }
3029}
3030@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3031extension MusicKit::MusicCatalogSearchSuggestionsResponse.MusicKit::Suggestion : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3032 public var description: Swift::String {
3033 get
3034 }
3035 public var debugDescription: Swift::String {
3036 get
3037 }
3038}
3039@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3040public struct MusicCatalogSearchSuggestionsRequest {
3041 public init(term: Swift::String, includingTopResultsOfTypes types: [any MusicKit::MusicCatalogSearchable.Type] = [])
3042 public let term: Swift::String
3043 public var typesForTopResults: [any MusicKit::MusicCatalogSearchable.Type] {
3044 get
3045 }
3046 public var limit: Swift::Int?
3047 public func response() async throws -> MusicKit::MusicCatalogSearchSuggestionsResponse
3048}
3049@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3050public struct MusicCatalogSearchSuggestionsResponse : Swift::Equatable, Swift::Hashable, Swift::Sendable {
3051 public typealias TopResult = MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult
3052 public let suggestions: [MusicKit::MusicCatalogSearchSuggestionsResponse.MusicKit::Suggestion]
3053 public let topResults: MusicKit::MusicItemCollection<MusicKit::MusicCatalogSearchSuggestionsResponse.MusicKit::TopResult>
3054 public static func == (a: MusicKit::MusicCatalogSearchSuggestionsResponse, b: MusicKit::MusicCatalogSearchSuggestionsResponse) -> Swift::Bool
3055 public func hash(into hasher: inout Swift::Hasher)
3056 public var hashValue: Swift::Int {
3057 get
3058 }
3059}
3060@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3061extension MusicKit::MusicCatalogSearchSuggestionsResponse : Swift::Codable {
3062 public init(from decoder: any Swift::Decoder) throws
3063 public func encode(to encoder: any Swift::Encoder) throws
3064}
3065@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3066extension MusicKit::MusicCatalogSearchSuggestionsResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3067 public var description: Swift::String {
3068 get
3069 }
3070 public var debugDescription: Swift::String {
3071 get
3072 }
3073}
3074@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3075public protocol MusicCatalogSearchable : MusicKit::MusicItem {
3076}
3077@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3078public struct MusicCatalogSearchRequest {
3079 public init(term: Swift::String, types: [any MusicKit::MusicCatalogSearchable.Type])
3080 public let term: Swift::String
3081 public var types: [any MusicKit::MusicCatalogSearchable.Type] {
3082 get
3083 }
3084 public var limit: Swift::Int?
3085 public var offset: Swift::Int?
3086 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3087 public var includeTopResults: Swift::Bool
3088 public func response() async throws -> MusicKit::MusicCatalogSearchResponse
3089}
3090@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3091public struct MusicCatalogSearchResponse : Swift::Equatable, Swift::Hashable {
3092 public let albums: MusicKit::MusicItemCollection<MusicKit::Album>
3093 public let artists: MusicKit::MusicItemCollection<MusicKit::Artist>
3094 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3095 public let curators: MusicKit::MusicItemCollection<MusicKit::Curator>
3096 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3097 public let musicVideos: MusicKit::MusicItemCollection<MusicKit::MusicVideo>
3098 public let playlists: MusicKit::MusicItemCollection<MusicKit::Playlist>
3099 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 9.0, visionOS 1.0, *)
3100 public let radioShows: MusicKit::MusicItemCollection<MusicKit::RadioShow>
3101 public let recordLabels: MusicKit::MusicItemCollection<MusicKit::RecordLabel>
3102 public let songs: MusicKit::MusicItemCollection<MusicKit::Song>
3103 public let stations: MusicKit::MusicItemCollection<MusicKit::Station>
3104 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3105 public let topResults: MusicKit::MusicItemCollection<MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult>
3106 public static func == (a: MusicKit::MusicCatalogSearchResponse, b: MusicKit::MusicCatalogSearchResponse) -> Swift::Bool
3107 public func hash(into hasher: inout Swift::Hasher)
3108 public var hashValue: Swift::Int {
3109 get
3110 }
3111}
3112@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3113extension MusicKit::MusicCatalogSearchResponse : Swift::Codable {
3114 public init(from decoder: any Swift::Decoder) throws
3115 public func encode(to encoder: any Swift::Encoder) throws
3116}
3117@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3118extension MusicKit::MusicCatalogSearchResponse : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3119 public var description: Swift::String {
3120 get
3121 }
3122 public var debugDescription: Swift::String {
3123 get
3124 }
3125}
3126@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3127extension MusicKit::MusicCatalogSearchResponse {
3128 public enum TopResult : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
3129 case album(MusicKit::Album)
3130 case artist(MusicKit::Artist)
3131 case curator(MusicKit::Curator)
3132 case musicVideo(MusicKit::MusicVideo)
3133 case playlist(MusicKit::Playlist)
3134 case radioShow(MusicKit::RadioShow)
3135 case recordLabel(MusicKit::RecordLabel)
3136 case song(MusicKit::Song)
3137 case station(MusicKit::Station)
3138 public var id: MusicKit::MusicItemID {
3139 get
3140 }
3141 public var artwork: MusicKit::Artwork? {
3142 get
3143 }
3144 public var title: Swift::String {
3145 get
3146 }
3147 public static func == (a: MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult, b: MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult) -> Swift::Bool
3148 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3149 public typealias ID = MusicKit::MusicItemID
3150 public func hash(into hasher: inout Swift::Hasher)
3151 public var hashValue: Swift::Int {
3152 get
3153 }
3154 }
3155}
3156@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3157extension MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult : Swift::Codable {
3158 public init(from decoder: any Swift::Decoder) throws
3159 public func encode(to encoder: any Swift::Encoder) throws
3160}
3161@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
3162extension MusicKit::MusicCatalogSearchResponse.MusicKit::TopResult : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3163 public var description: Swift::String {
3164 get
3165 }
3166 public var debugDescription: Swift::String {
3167 get
3168 }
3169}
3170@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3171@available(watchOS, unavailable)
3172public class ApplicationMusicPlayer : MusicKit::MusicPlayer {
3173 public static let shared: MusicKit::ApplicationMusicPlayer
3174 public var queue: MusicKit::ApplicationMusicPlayer.MusicKit::Queue {
3175 get
3176 set
3177 }
… 3 unchanged lines …
3179 @available(tvOS, unavailable)
3180 @available(watchOS, unavailable)
3181 @available(visionOS, unavailable)
3182 public var transition: MusicKit.MusicPlayer.Transition {
3183 get
3184 set
3185 }
3186 @objc deinit
3187}
3188@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3189@available(watchOS, unavailable)
3190extension MusicKit.ApplicationMusicPlayer {
3191 @_inheritsConvenienceInitializers public class Queue : MusicKit.MusicPlayer.Queue {
3192 required public init<S, PlayableMusicItemType>(for playableItems: S, startingAt startPlayableItem: S.Element? = nil) where S : Swift.Sequence, PlayableMusicItemType : MusicKit.PlayableMusicItem, PlayableMusicItemType == S.Element
3193 required public init<S>(_ entries: S, startingAt startEntry: S.Element? = nil) where S : Swift.Sequence, S.Element == MusicKit.MusicPlayer.Queue.Entry
3194 required public init(arrayLiteral elements: any MusicKit.PlayableMusicItem...)
3195 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3196 required public init(album: MusicKit.Album, startingAt startTrack: MusicKit.Track)
3197 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3198 required public init(playlist: MusicKit.Playlist, startingAt startPlaylistEntry: MusicKit.Playlist.Entry)
3199 public var entries: MusicKit.ApplicationMusicPlayer.Queue.Entries {
3200 get
3201 set
3202 }
3203 public struct Entries : Swift.Equatable, Swift.Hashable, Swift.Sequence, Swift.Collection, Swift.BidirectionalCollection, Swift.RandomAccessCollection, Swift.MutableCollection, Swift.RangeReplaceableCollection, Swift.ExpressibleByArrayLiteral {
3204 public init()
3205 public static func == (left: MusicKit.ApplicationMusicPlayer.Queue.Entries, right: MusicKit.ApplicationMusicPlayer.Queue.Entries) -> Swift.Bool
3206 public func hash(into hasher: inout Swift.Hasher)
3207 public __consuming func makeIterator() -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Iterator
3208 public typealias Element = MusicKit.MusicPlayer.Queue.Entry
3209 public typealias Iterator = Swift.Array<MusicKit.MusicPlayer.Queue.Entry>.Iterator
3210 public var startIndex: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index {
3211 get
3212 }
3213 public var endIndex: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index {
3214 get
3215 }
3216 public var indices: MusicKit.ApplicationMusicPlayer.Queue.Entries.Indices {
3217 get
3218 }
3219 public func index(_ i: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index, offsetBy distance: Swift.Int) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Index
3220 public func index(_ i: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index, offsetBy distance: Swift.Int, limitedBy limit: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Index?
3221 public func index(after i: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Index
3222 public func formIndex(after i: inout MusicKit.ApplicationMusicPlayer.Queue.Entries.Index)
3223 public func distance(from start: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index, to end: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index) -> Swift.Int
3224 public subscript(bounds: Swift.Range<MusicKit.ApplicationMusicPlayer.Queue.Entries.Index>) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.SubSequence {
3225 get
3226 set
3227 }
3228 public subscript(position: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Element {
3229 get
3230 set
3231 }
3232 public typealias Index = Swift.Array<MusicKit.MusicPlayer.Queue.Entry>.Index
3233 public typealias Indices = Swift.Array<MusicKit.MusicPlayer.Queue.Entry>.Indices
3234 public typealias SubSequence = Swift.Array<MusicKit.MusicPlayer.Queue.Entry>.SubSequence
3235 public func index(before i: MusicKit.ApplicationMusicPlayer.Queue.Entries.Index) -> MusicKit.ApplicationMusicPlayer.Queue.Entries.Index
3236 public func formIndex(before i: inout MusicKit.ApplicationMusicPlayer.Queue.Entries.Index)
3237 public mutating func replaceSubrange<C>(_ subrange: Swift.Range<MusicKit.ApplicationMusicPlayer.Queue.Entries.Index>, with newElements: C) where C : Swift.Collection, C.Element == MusicKit.MusicPlayer.Queue.Entry
3238 public init(arrayLiteral elements: MusicKit.MusicPlayer.Queue.Entry...)
3239 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3240 @available(watchOS, unavailable)
3241 public typealias ArrayLiteralElement = MusicKit.MusicPlayer.Queue.Entry
3242 public var hashValue: Swift.Int {
3243 get
3244 }
3245 }
3181 @available(tvOS, unavailable)
3182 @available(watchOS, unavailable)
3183 @available(visionOS, unavailable)
3184 public var transition: MusicKit::MusicPlayer.MusicKit::Transition {
3185 get
3186 set
3187 }
3188 @objc deinit
3189}
3190@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3191@available(watchOS, unavailable)
3192extension MusicKit::ApplicationMusicPlayer {
3193 @_inheritsConvenienceInitializers public class Queue : MusicKit::MusicPlayer.MusicKit::Queue {
3194 required public init<S, PlayableMusicItemType>(for playableItems: S, startingAt startPlayableItem: S.Element? = nil) where S : Swift::Sequence, PlayableMusicItemType : MusicKit::PlayableMusicItem, PlayableMusicItemType == S.Element
3195 required public init<S>(_ entries: S, startingAt startEntry: S.Element? = nil) where S : Swift::Sequence, S.Element == MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3196 required public init(arrayLiteral elements: any MusicKit::PlayableMusicItem...)
3197 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3198 required public init(album: MusicKit::Album, startingAt startTrack: MusicKit::Track)
3199 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3200 required public init(playlist: MusicKit::Playlist, startingAt startPlaylistEntry: MusicKit::Playlist.MusicKit::Entry)
3201 public var entries: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries {
3202 get
3203 set
3204 }
3205 public struct Entries : Swift::Equatable, Swift::Hashable, Swift::Sequence, Swift::Collection, Swift::BidirectionalCollection, Swift::RandomAccessCollection, Swift::MutableCollection, Swift::RangeReplaceableCollection, Swift::ExpressibleByArrayLiteral {
3206 public init()
3207 public static func == (left: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries, right: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries) -> Swift::Bool
3208 public func hash(into hasher: inout Swift::Hasher)
3209 public __consuming func makeIterator() -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Iterator
3210 public typealias Element = MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3211 public typealias Iterator = Swift::Array<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry>.Swift::Iterator
3212 public var startIndex: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index {
3213 get
3214 }
3215 public var endIndex: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index {
3216 get
3217 }
3218 public var indices: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Indices {
3219 get
3220 }
3221 public func index(_ i: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index, offsetBy distance: Swift::Int) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index
3222 public func index(_ i: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index, offsetBy distance: Swift::Int, limitedBy limit: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index?
3223 public func index(after i: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index
3224 public func formIndex(after i: inout MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index)
3225 public func distance(from start: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index, to end: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index) -> Swift::Int
3226 public subscript(bounds: Swift::Range<MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index>) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::SubSequence {
3227 get
3228 set
3229 }
3230 public subscript(position: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Element {
3231 get
3232 set
3233 }
3234 public typealias Index = Swift::Array<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry>.Swift::Index
3235 public typealias Indices = Swift::Array<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry>.Swift::Indices
3236 public typealias SubSequence = Swift::Array<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry>.Swift::SubSequence
3237 public func index(before i: MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index) -> MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index
3238 public func formIndex(before i: inout MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index)
3239 public mutating func replaceSubrange<C>(_ subrange: Swift::Range<MusicKit::ApplicationMusicPlayer.MusicKit::Queue.MusicKit::Entries.MusicKit::Index>, with newElements: C) where C : Swift::Collection, C.Element == MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3240 public init(arrayLiteral elements: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry...)
3241 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3242 @available(watchOS, unavailable)
3243 public typealias ArrayLiteralElement = MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3244 public var hashValue: Swift::Int {
3245 get
3246 }
3247 }
… 3 unchanged lines …
3249@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3250@available(watchOS, unavailable)
3251@available(macOS, unavailable)
3252public class SystemMusicPlayer : MusicKit.MusicPlayer {
3253 public static let shared: MusicKit.SystemMusicPlayer
3254 public var queue: MusicKit.MusicPlayer.Queue {
3255 get
3256 set
3257 }
3251@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3252@available(watchOS, unavailable)
3253@available(macOS, unavailable)
3254public class SystemMusicPlayer : MusicKit::MusicPlayer {
3255 public static let shared: MusicKit::SystemMusicPlayer
3256 public var queue: MusicKit::MusicPlayer.MusicKit::Queue {
3257 get
3258 set
3259 }
… 2 unchanged lines …
3260@_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3261@available(watchOS, unavailable)
3262public class MusicPlayer {
3263 final public let state: MusicKit.MusicPlayer.State
3264 public var isPreparedToPlay: Swift.Bool {
3265 get
3266 }
3267 public func prepareToPlay() async throws
3268 public func play() async throws
3269 public func pause()
3270 public func stop()
3271 public var playbackTime: Foundation.TimeInterval {
3272 get
3273 set
3274 }
3262@_hasMissingDesignatedInitializers @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3263@available(watchOS, unavailable)
3264public class MusicPlayer {
3265 final public let state: MusicKit::MusicPlayer.MusicKit::State
3266 public var isPreparedToPlay: Swift::Bool {
3267 get
3268 }
3269 public func prepareToPlay() async throws
3270 public func play() async throws
3271 public func pause()
3272 public func stop()
3273 public var playbackTime: Foundation::TimeInterval {
3274 get
3275 set
3276 }
… 7 unchanged lines …
3282}
3283@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3284@available(watchOS, unavailable)
3285extension MusicKit.MusicPlayer {
3286 public class Queue : Combine.ObservableObject, Swift.ExpressibleByArrayLiteral {
3287 required public init<S, PlayableMusicItemType>(for playableItems: S, startingAt startPlayableItem: S.Element? = nil) where S : Swift.Sequence, PlayableMusicItemType : MusicKit.PlayableMusicItem, PlayableMusicItemType == S.Element
3288 required public init<S>(_ entries: S, startingAt startEntry: S.Element? = nil) where S : Swift.Sequence, S.Element == MusicKit.MusicPlayer.Queue.Entry
3289 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3290 required public init(album: MusicKit.Album, startingAt startTrack: MusicKit.Track)
3291 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3292 required public init(playlist: MusicKit.Playlist, startingAt startPlaylistEntry: MusicKit.Playlist.Entry)
3293 public var currentEntry: MusicKit.MusicPlayer.Queue.Entry? {
3294 get
3295 set
3296 }
3297 @available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3298 public var affectsListeningHistory: Swift.Bool {
3299 get
3300 set
3301 }
3302 public func insert<S, PlayableMusicItemType>(_ playableItems: S, position: MusicKit.MusicPlayer.Queue.EntryInsertionPosition) async throws where S : Swift.Sequence, PlayableMusicItemType : MusicKit.PlayableMusicItem, PlayableMusicItemType == S.Element
3303 public func insert<S>(_ entries: S, position: MusicKit.MusicPlayer.Queue.EntryInsertionPosition) async throws where S : Swift.Sequence, S.Element == MusicKit.MusicPlayer.Queue.Entry
3304 public func insert<PlayableMusicItemType>(_ playableItem: PlayableMusicItemType, position: MusicKit.MusicPlayer.Queue.EntryInsertionPosition) async throws where PlayableMusicItemType : MusicKit.PlayableMusicItem
3305 public func insert(_ entry: MusicKit.MusicPlayer.Queue.Entry, position: MusicKit.MusicPlayer.Queue.EntryInsertionPosition) async throws
3306 public var objectWillChange: Combine.AnyPublisher<Swift.Void, Swift.Never> {
3307 get
3308 }
3309 convenience required public init(arrayLiteral elements: any MusicKit.PlayableMusicItem...)
3310 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3311 @available(watchOS, unavailable)
3312 public typealias ArrayLiteralElement = any MusicKit.PlayableMusicItem
3313 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3314 @available(watchOS, unavailable)
3315 public typealias ObjectWillChangePublisher = Combine.AnyPublisher<Swift.Void, Swift.Never>
3316 @objc deinit
3317 }
3318}
3319@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3320@available(watchOS, unavailable)
3321extension MusicKit.MusicPlayer.Queue : Swift.Equatable {
3322 public static func == (left: MusicKit.MusicPlayer.Queue, right: MusicKit.MusicPlayer.Queue) -> Swift.Bool
3323}
3324@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3325@available(watchOS, unavailable)
3326extension MusicKit.MusicPlayer.Queue : Swift.Hashable {
3327 public func hash(into hasher: inout Swift.Hasher)
3328 public var hashValue: Swift.Int {
3329 get
3330 }
3331}
3332@available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3333@available(watchOS, unavailable)
3334extension MusicKit.MusicPlayer.Queue : Observation.Observable {
3335}
3336@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3337@available(watchOS, unavailable)
3338extension MusicKit.MusicPlayer.Queue {
3339 public enum EntryInsertionPosition : Swift.Sendable {
3340 case afterCurrentEntry
3341 case tail
3342 public static func == (a: MusicKit.MusicPlayer.Queue.EntryInsertionPosition, b: MusicKit.MusicPlayer.Queue.EntryInsertionPosition) -> Swift.Bool
3343 public func hash(into hasher: inout Swift.Hasher)
3344 public var hashValue: Swift.Int {
3345 get
3346 }
3347 }
3348}
3349@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3350@available(watchOS, unavailable)
3351extension MusicKit.MusicPlayer.Queue {
3352 public struct Entry : Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.CustomStringConvertible {
3353 public init(_ playableMusicItem: any MusicKit.PlayableMusicItem, startTime: Foundation.TimeInterval? = nil, endTime: Foundation.TimeInterval? = nil)
3354 public let id: Swift.String
3355 public var title: Swift.String {
3356 get
3357 }
3358 public var subtitle: Swift.String? {
3359 get
3360 }
3361 public var artwork: MusicKit.Artwork? {
3362 get
3363 }
3364 public var item: MusicKit.MusicPlayer.Queue.Entry.Item? {
3365 get
3366 }
3367 public var transientItem: (any MusicKit.PlayableMusicItem)? {
3368 get
3369 }
3370 public var isTransient: Swift.Bool {
3371 get
3372 }
3373 public var startTime: Foundation.TimeInterval? {
3374 get
3375 }
3376 public var endTime: Foundation.TimeInterval? {
3377 get
3378 }
3379 public var description: Swift.String {
3380 get
3381 }
3382 public static func == (a: MusicKit.MusicPlayer.Queue.Entry, b: MusicKit.MusicPlayer.Queue.Entry) -> Swift.Bool
3383 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3384 @available(watchOS, unavailable)
3385 public typealias ID = Swift.String
3386 public func hash(into hasher: inout Swift.Hasher)
3387 public var hashValue: Swift.Int {
3388 get
3389 }
3390 }
3391}
3392@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3393@available(watchOS, unavailable)
3394extension MusicKit.MusicPlayer.Queue.Entry {
3395 public enum Item : MusicKit.MusicItem, Swift.Equatable, Swift.Hashable, Swift.Identifiable, Swift.Sendable {
3396 case song(MusicKit.Song)
3397 case musicVideo(MusicKit.MusicVideo)
3398 public var id: MusicKit.MusicItemID {
3399 get
3400 }
3401 public var playParameters: MusicKit.PlayParameters? {
3402 get
3403 }
3404 public static func == (a: MusicKit.MusicPlayer.Queue.Entry.Item, b: MusicKit.MusicPlayer.Queue.Entry.Item) -> Swift.Bool
3405 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3406 @available(watchOS, unavailable)
3407 public typealias ID = MusicKit.MusicItemID
3408 public func hash(into hasher: inout Swift.Hasher)
3409 public var hashValue: Swift.Int {
3410 get
3411 }
3412 }
3413}
3414@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3415@available(watchOS, unavailable)
3416extension MusicKit.MusicPlayer.Queue.Entry.Item : MusicKit.MusicPropertyContainer {
3417 @usableFromInline
3418 internal subscript<Value>(property property: MusicKit.MusicAttributeProperty<MusicKit.MusicPlayer.Queue.Entry.Item, Value>) -> Value? where Value : Swift.Decodable {
3419 get throws
3420 }
3421 @usableFromInline
3422 internal subscript<Value>(property property: MusicKit.MusicExtendedAttributeProperty<MusicKit.MusicPlayer.Queue.Entry.Item, Value>) -> Value? where Value : Swift.Decodable {
3423 get throws
3424 }
3425 @usableFromInline
3426 internal subscript<RelatedMusicItemType>(property property: MusicKit.MusicRelationshipProperty<MusicKit.MusicPlayer.Queue.Entry.Item, RelatedMusicItemType>) -> MusicKit.MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit.MusicItem, RelatedMusicItemType : Swift.Decodable {
3427 get throws
3428 }
3429}
3430@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3431@available(watchOS, unavailable)
3432extension MusicKit.MusicPlayer.Queue.Entry.Item : MusicKit.PlayableMusicItem {
3433}
3434@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3435@available(watchOS, unavailable)
3436extension MusicKit.MusicPlayer.Queue.Entry.Item : Swift.Codable {
3437 public init(from decoder: any Swift.Decoder) throws
3438 public func encode(to encoder: any Swift.Encoder) throws
3439}
3440@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3441@available(watchOS, unavailable)
3442extension MusicKit.MusicPlayer.Queue.Entry.Item : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3443 public var description: Swift.String {
3444 get
3445 }
3446 public var debugDescription: Swift.String {
3447 get
3448 }
3449}
3450@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3451@available(watchOS, unavailable)
3452extension MusicKit.MusicPlayer {
3453 public enum PlaybackStatus : Swift.Equatable, Swift.Hashable, Swift.Sendable {
3454 case stopped
3455 case playing
3456 case paused
3457 case interrupted
3458 case seekingForward
3459 case seekingBackward
3460 public static func == (a: MusicKit.MusicPlayer.PlaybackStatus, b: MusicKit.MusicPlayer.PlaybackStatus) -> Swift.Bool
3461 public func hash(into hasher: inout Swift.Hasher)
3462 public var hashValue: Swift.Int {
3463 get
3464 }
3465 }
3466}
3467@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3468@available(watchOS, unavailable)
3469extension MusicKit.MusicPlayer {
3470 public enum RepeatMode : Swift.Sendable {
3471 case none
3472 case one
3473 case all
3474 public static func == (a: MusicKit.MusicPlayer.RepeatMode, b: MusicKit.MusicPlayer.RepeatMode) -> Swift.Bool
3475 public func hash(into hasher: inout Swift.Hasher)
3476 public var hashValue: Swift.Int {
3477 get
3478 }
3479 }
3480}
3481@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3482@available(watchOS, unavailable)
3483extension MusicKit.MusicPlayer {
3484 public enum ShuffleMode : Swift.Sendable {
3485 case off
3486 case songs
3487 public static func == (a: MusicKit.MusicPlayer.ShuffleMode, b: MusicKit.MusicPlayer.ShuffleMode) -> Swift.Bool
3488 public func hash(into hasher: inout Swift.Hasher)
3489 public var hashValue: Swift.Int {
3490 get
3491 }
3492 }
3493}
3494@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3495@available(watchOS, unavailable)
3496extension MusicKit.MusicPlayer {
3497 @_hasMissingDesignatedInitializers public class State : Combine.ObservableObject {
3498 public var playbackStatus: MusicKit.MusicPlayer.PlaybackStatus {
3499 get
3500 }
3501 public var playbackRate: Swift.Float {
3502 get
3503 set
3504 }
3505 public var repeatMode: MusicKit.MusicPlayer.RepeatMode? {
3506 get
3507 set
3508 }
3509 public var shuffleMode: MusicKit.MusicPlayer.ShuffleMode? {
3510 get
3511 set
3512 }
3513 @available(iOS 16.0, tvOS 16.0, visionOS 1.0, *)
3514 public var audioVariant: MusicKit.AudioVariant? {
3515 get
3516 }
3517 public var objectWillChange: Combine.AnyPublisher<Swift.Void, Swift.Never> {
3518 get
3519 }
3520 @available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3521 @available(watchOS, unavailable)
3522 public typealias ObjectWillChangePublisher = Combine.AnyPublisher<Swift.Void, Swift.Never>
3523 @objc deinit
3524 }
3525}
3526@available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3527@available(watchOS, unavailable)
3528extension MusicKit.MusicPlayer.State : Observation.Observable {
3529}
3530@available(iOS 18.0, *)
3531@available(macOS, unavailable)
3532@available(macCatalyst, unavailable)
3533@available(tvOS, unavailable)
3534@available(watchOS, unavailable)
3535@available(visionOS, unavailable)
3536extension MusicKit.MusicPlayer {
3537 public enum Transition : Swift.Equatable, Swift.Hashable, Swift.Sendable {
3538 case none
3539 case crossfade(options: MusicKit.MusicPlayer.Transition.CrossfadeOptions)
3540 public static let crossfade: MusicKit.MusicPlayer.Transition
3541 public static func crossfade(duration: Foundation.TimeInterval?) -> MusicKit.MusicPlayer.Transition
3542 public static func == (a: MusicKit.MusicPlayer.Transition, b: MusicKit.MusicPlayer.Transition) -> Swift.Bool
3543 public func hash(into hasher: inout Swift.Hasher)
3544 public var hashValue: Swift.Int {
3545 get
3546 }
3547 }
3284}
3285@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3286@available(watchOS, unavailable)
3287extension MusicKit::MusicPlayer {
3288 public class Queue : Combine::ObservableObject, Swift::ExpressibleByArrayLiteral {
3289 required public init<S, PlayableMusicItemType>(for playableItems: S, startingAt startPlayableItem: S.Element? = nil) where S : Swift::Sequence, PlayableMusicItemType : MusicKit::PlayableMusicItem, PlayableMusicItemType == S.Element
3290 required public init<S>(_ entries: S, startingAt startEntry: S.Element? = nil) where S : Swift::Sequence, S.Element == MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3291 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3292 required public init(album: MusicKit::Album, startingAt startTrack: MusicKit::Track)
3293 @available(iOS 16.4, tvOS 16.4, visionOS 1.0, macOS 14.0, *)
3294 required public init(playlist: MusicKit::Playlist, startingAt startPlaylistEntry: MusicKit::Playlist.MusicKit::Entry)
3295 public var currentEntry: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry? {
3296 get
3297 set
3298 }
3299 @available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3300 public var affectsListeningHistory: Swift::Bool {
3301 get
3302 set
3303 }
3304 public func insert<S, PlayableMusicItemType>(_ playableItems: S, position: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition) async throws where S : Swift::Sequence, PlayableMusicItemType : MusicKit::PlayableMusicItem, PlayableMusicItemType == S.Element
3305 public func insert<S>(_ entries: S, position: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition) async throws where S : Swift::Sequence, S.Element == MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry
3306 public func insert<PlayableMusicItemType>(_ playableItem: PlayableMusicItemType, position: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition) async throws where PlayableMusicItemType : MusicKit::PlayableMusicItem
3307 public func insert(_ entry: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry, position: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition) async throws
3308 public var objectWillChange: Combine::AnyPublisher<Swift::Void, Swift::Never> {
3309 get
3310 }
3311 convenience required public init(arrayLiteral elements: any MusicKit::PlayableMusicItem...)
3312 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3313 @available(watchOS, unavailable)
3314 public typealias ArrayLiteralElement = any MusicKit::PlayableMusicItem
3315 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3316 @available(watchOS, unavailable)
3317 public typealias ObjectWillChangePublisher = Combine::AnyPublisher<Swift::Void, Swift::Never>
3318 @objc deinit
3319 }
3320}
3321@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3322@available(watchOS, unavailable)
3323extension MusicKit::MusicPlayer.MusicKit::Queue : Swift::Equatable {
3324 public static func == (left: MusicKit::MusicPlayer.MusicKit::Queue, right: MusicKit::MusicPlayer.MusicKit::Queue) -> Swift::Bool
3325}
3326@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3327@available(watchOS, unavailable)
3328extension MusicKit::MusicPlayer.MusicKit::Queue : Swift::Hashable {
3329 public func hash(into hasher: inout Swift::Hasher)
3330 public var hashValue: Swift::Int {
3331 get
3332 }
3333}
3334@available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3335@available(watchOS, unavailable)
3336extension MusicKit::MusicPlayer.MusicKit::Queue : Observation::Observable {
3337}
3338@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3339@available(watchOS, unavailable)
3340extension MusicKit::MusicPlayer.MusicKit::Queue {
3341 public enum EntryInsertionPosition : Swift::Sendable {
3342 case afterCurrentEntry
3343 case tail
3344 public static func == (a: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition, b: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition) -> Swift::Bool
3345 public func hash(into hasher: inout Swift::Hasher)
3346 public var hashValue: Swift::Int {
3347 get
3348 }
3349 }
3350}
3351@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3352@available(watchOS, unavailable)
3353extension MusicKit::MusicPlayer.MusicKit::Queue {
3354 public struct Entry : Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::CustomStringConvertible {
3355 public init(_ playableMusicItem: any MusicKit::PlayableMusicItem, startTime: Foundation::TimeInterval? = nil, endTime: Foundation::TimeInterval? = nil)
3356 public let id: Swift::String
3357 public var title: Swift::String {
3358 get
3359 }
3360 public var subtitle: Swift::String? {
3361 get
3362 }
3363 public var artwork: MusicKit::Artwork? {
3364 get
3365 }
3366 public var item: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item? {
3367 get
3368 }
3369 public var transientItem: (any MusicKit::PlayableMusicItem)? {
3370 get
3371 }
3372 public var isTransient: Swift::Bool {
3373 get
3374 }
3375 public var startTime: Foundation::TimeInterval? {
3376 get
3377 }
3378 public var endTime: Foundation::TimeInterval? {
3379 get
3380 }
3381 public var description: Swift::String {
3382 get
3383 }
3384 public static func == (a: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry, b: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry) -> Swift::Bool
3385 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3386 @available(watchOS, unavailable)
3387 public typealias ID = Swift::String
3388 public func hash(into hasher: inout Swift::Hasher)
3389 public var hashValue: Swift::Int {
3390 get
3391 }
3392 }
3393}
3394@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3395@available(watchOS, unavailable)
3396extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry {
3397 public enum Item : MusicKit::MusicItem, Swift::Equatable, Swift::Hashable, Swift::Identifiable, Swift::Sendable {
3398 case song(MusicKit::Song)
3399 case musicVideo(MusicKit::MusicVideo)
3400 public var id: MusicKit::MusicItemID {
3401 get
3402 }
3403 public var playParameters: MusicKit::PlayParameters? {
3404 get
3405 }
3406 public static func == (a: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item, b: MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item) -> Swift::Bool
3407 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3408 @available(watchOS, unavailable)
3409 public typealias ID = MusicKit::MusicItemID
3410 public func hash(into hasher: inout Swift::Hasher)
3411 public var hashValue: Swift::Int {
3412 get
3413 }
3414 }
3415}
3416@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3417@available(watchOS, unavailable)
3418extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item : MusicKit::MusicPropertyContainer {
3419 @usableFromInline
3420 internal subscript<Value>(property property: MusicKit::MusicAttributeProperty<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item, Value>) -> Value? where Value : Swift::Decodable {
3421 get throws
3422 }
3423 @usableFromInline
3424 internal subscript<Value>(property property: MusicKit::MusicExtendedAttributeProperty<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item, Value>) -> Value? where Value : Swift::Decodable {
3425 get throws
3426 }
3427 @usableFromInline
3428 internal subscript<RelatedMusicItemType>(property property: MusicKit::MusicRelationshipProperty<MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item, RelatedMusicItemType>) -> MusicKit::MusicItemCollection<RelatedMusicItemType>? where RelatedMusicItemType : MusicKit::MusicItem, RelatedMusicItemType : Swift::Decodable {
3429 get throws
3430 }
3431}
3432@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3433@available(watchOS, unavailable)
3434extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item : MusicKit::PlayableMusicItem {
3435}
3436@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3437@available(watchOS, unavailable)
3438extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item : Swift::Codable {
3439 public init(from decoder: any Swift::Decoder) throws
3440 public func encode(to encoder: any Swift::Encoder) throws
3441}
3442@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3443@available(watchOS, unavailable)
3444extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::Entry.MusicKit::Item : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3445 public var description: Swift::String {
3446 get
3447 }
3448 public var debugDescription: Swift::String {
3449 get
3450 }
3451}
3452@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3453@available(watchOS, unavailable)
3454extension MusicKit::MusicPlayer {
3455 public enum PlaybackStatus : Swift::Equatable, Swift::Hashable, Swift::Sendable {
3456 case stopped
3457 case playing
3458 case paused
3459 case interrupted
3460 case seekingForward
3461 case seekingBackward
3462 public static func == (a: MusicKit::MusicPlayer.MusicKit::PlaybackStatus, b: MusicKit::MusicPlayer.MusicKit::PlaybackStatus) -> Swift::Bool
3463 public func hash(into hasher: inout Swift::Hasher)
3464 public var hashValue: Swift::Int {
3465 get
3466 }
3467 }
3468}
3469@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3470@available(watchOS, unavailable)
3471extension MusicKit::MusicPlayer {
3472 public enum RepeatMode : Swift::Sendable {
3473 case none
3474 case one
3475 case all
3476 public static func == (a: MusicKit::MusicPlayer.MusicKit::RepeatMode, b: MusicKit::MusicPlayer.MusicKit::RepeatMode) -> Swift::Bool
3477 public func hash(into hasher: inout Swift::Hasher)
3478 public var hashValue: Swift::Int {
3479 get
3480 }
3481 }
3482}
3483@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3484@available(watchOS, unavailable)
3485extension MusicKit::MusicPlayer {
3486 public enum ShuffleMode : Swift::Sendable {
3487 case off
3488 case songs
3489 public static func == (a: MusicKit::MusicPlayer.MusicKit::ShuffleMode, b: MusicKit::MusicPlayer.MusicKit::ShuffleMode) -> Swift::Bool
3490 public func hash(into hasher: inout Swift::Hasher)
3491 public var hashValue: Swift::Int {
3492 get
3493 }
3494 }
3495}
3496@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3497@available(watchOS, unavailable)
3498extension MusicKit::MusicPlayer {
3499 @_hasMissingDesignatedInitializers public class State : Combine::ObservableObject {
3500 public var playbackStatus: MusicKit::MusicPlayer.MusicKit::PlaybackStatus {
3501 get
3502 }
3503 public var playbackRate: Swift::Float {
3504 get
3505 set
3506 }
3507 public var repeatMode: MusicKit::MusicPlayer.MusicKit::RepeatMode? {
3508 get
3509 set
3510 }
3511 public var shuffleMode: MusicKit::MusicPlayer.MusicKit::ShuffleMode? {
3512 get
3513 set
3514 }
3515 @available(iOS 16.0, tvOS 16.0, visionOS 1.0, *)
3516 public var audioVariant: MusicKit::AudioVariant? {
3517 get
3518 }
3519 public var objectWillChange: Combine::AnyPublisher<Swift::Void, Swift::Never> {
3520 get
3521 }
3522 @available(macOS 14.0, iOS 15.0, tvOS 15.0, visionOS 1.0, *)
3523 @available(watchOS, unavailable)
3524 public typealias ObjectWillChangePublisher = Combine::AnyPublisher<Swift::Void, Swift::Never>
3525 @objc deinit
3526 }
3527}
3528@available(iOS 26.4, tvOS 26.4, visionOS 26.4, macOS 26.4, *)
3529@available(watchOS, unavailable)
3530extension MusicKit::MusicPlayer.MusicKit::State : Observation::Observable {
3531}
3532@available(iOS 18.0, *)
3533@available(macOS, unavailable)
3534@available(macCatalyst, unavailable)
3535@available(tvOS, unavailable)
3536@available(watchOS, unavailable)
3537@available(visionOS, unavailable)
3538extension MusicKit::MusicPlayer {
3539 public enum Transition : Swift::Equatable, Swift::Hashable, Swift::Sendable {
3540 case none
3541 case crossfade(options: MusicKit::MusicPlayer.MusicKit::Transition.MusicKit::CrossfadeOptions)
3542 public static let crossfade: MusicKit::MusicPlayer.MusicKit::Transition
3543 public static func crossfade(duration: Foundation::TimeInterval?) -> MusicKit::MusicPlayer.MusicKit::Transition
3544 public static func == (a: MusicKit::MusicPlayer.MusicKit::Transition, b: MusicKit::MusicPlayer.MusicKit::Transition) -> Swift::Bool
3545 public func hash(into hasher: inout Swift::Hasher)
3546 public var hashValue: Swift::Int {
3547 get
3548 }
3549 }
… 4 unchanged lines …
3552@available(tvOS, unavailable)
3553@available(watchOS, unavailable)
3554@available(visionOS, unavailable)
3555extension MusicKit.MusicPlayer.Transition : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3556 public var description: Swift.String {
3557 get
3558 }
3559 public var debugDescription: Swift.String {
3560 get
3561 }
3562}
3554@available(tvOS, unavailable)
3555@available(watchOS, unavailable)
3556@available(visionOS, unavailable)
3557extension MusicKit::MusicPlayer.MusicKit::Transition : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3558 public var description: Swift::String {
3559 get
3560 }
3561 public var debugDescription: Swift::String {
3562 get
3563 }
3564}
… 3 unchanged lines …
3566@available(tvOS, unavailable)
3567@available(watchOS, unavailable)
3568@available(visionOS, unavailable)
3569extension MusicKit.MusicPlayer.Transition {
3570 public struct CrossfadeOptions : Swift.Equatable, Swift.Hashable, Swift.Sendable {
3571 public init(duration: Foundation.TimeInterval? = nil)
3572 public static func == (a: MusicKit.MusicPlayer.Transition.CrossfadeOptions, b: MusicKit.MusicPlayer.Transition.CrossfadeOptions) -> Swift.Bool
3573 public func hash(into hasher: inout Swift.Hasher)
3574 public var hashValue: Swift.Int {
3575 get
3576 }
3577 }
3568@available(tvOS, unavailable)
3569@available(watchOS, unavailable)
3570@available(visionOS, unavailable)
3571extension MusicKit::MusicPlayer.MusicKit::Transition {
3572 public struct CrossfadeOptions : Swift::Equatable, Swift::Hashable, Swift::Sendable {
3573 public init(duration: Foundation::TimeInterval? = nil)
3574 public static func == (a: MusicKit::MusicPlayer.MusicKit::Transition.MusicKit::CrossfadeOptions, b: MusicKit::MusicPlayer.MusicKit::Transition.MusicKit::CrossfadeOptions) -> Swift::Bool
3575 public func hash(into hasher: inout Swift::Hasher)
3576 public var hashValue: Swift::Int {
3577 get
3578 }
3579 }
… 4 unchanged lines …
3582@available(tvOS, unavailable)
3583@available(watchOS, unavailable)
3584@available(visionOS, unavailable)
3585extension MusicKit.MusicPlayer.Transition.CrossfadeOptions : Swift.CustomStringConvertible, Swift.CustomDebugStringConvertible {
3586 public var description: Swift.String {
3587 get
3588 }
3589 public var debugDescription: Swift.String {
3590 get
3591 }
3592}
3593@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3594@available(watchOS, unavailable)
3595public protocol PlayableMusicItem : MusicKit.MusicItem {
3596 var playParameters: MusicKit.PlayParameters? { get }
3597}
3598@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3599public struct PlayParameters : Swift.Equatable, Swift.Hashable, Swift.Sendable {
3600 public static func == (a: MusicKit.PlayParameters, b: MusicKit.PlayParameters) -> Swift.Bool
3601 public func hash(into hasher: inout Swift.Hasher)
3602 public var hashValue: Swift.Int {
3603 get
3604 }
3605}
3606@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3607extension MusicKit.PlayParameters : Swift.Codable {
3608 public init(from decoder: any Swift.Decoder) throws
3609 public func encode(to encoder: any Swift.Encoder) throws
3610}
3611@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3612extension MusicKit.MusicSubscription {
3613 public struct Updates : _Concurrency.AsyncSequence {
3614 public struct Iterator : _Concurrency.AsyncIteratorProtocol {
3615 public mutating func next() async -> MusicKit.MusicSubscription?
3616 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3617 public typealias Element = MusicKit.MusicSubscription
3618 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
3619 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
3620 }
3621 public typealias Element = MusicKit.MusicSubscription
3622 public func makeAsyncIterator() -> MusicKit.MusicSubscription.Updates.Iterator
3623 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3624 public typealias AsyncIterator = MusicKit.MusicSubscription.Updates.Iterator
3625 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
3626 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
3627 }
3628 public static var subscriptionUpdates: MusicKit.MusicSubscription.Updates {
3629 get
3630 }
3631}
3584@available(tvOS, unavailable)
3585@available(watchOS, unavailable)
3586@available(visionOS, unavailable)
3587extension MusicKit::MusicPlayer.MusicKit::Transition.MusicKit::CrossfadeOptions : Swift::CustomStringConvertible, Swift::CustomDebugStringConvertible {
3588 public var description: Swift::String {
3589 get
3590 }
3591 public var debugDescription: Swift::String {
3592 get
3593 }
3594}
3595@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3596@available(watchOS, unavailable)
3597public protocol PlayableMusicItem : MusicKit::MusicItem {
3598 var playParameters: MusicKit::PlayParameters? { get }
3599}
3600@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3601public struct PlayParameters : Swift::Equatable, Swift::Hashable, Swift::Sendable {
3602 public static func == (a: MusicKit::PlayParameters, b: MusicKit::PlayParameters) -> Swift::Bool
3603 public func hash(into hasher: inout Swift::Hasher)
3604 public var hashValue: Swift::Int {
3605 get
3606 }
3607}
3608@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3609extension MusicKit::PlayParameters : Swift::Codable {
3610 public init(from decoder: any Swift::Decoder) throws
3611 public func encode(to encoder: any Swift::Encoder) throws
3612}
3613@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3614extension MusicKit::MusicSubscription {
3615 public struct Updates : _Concurrency::AsyncSequence {
3616 public struct Iterator : _Concurrency::AsyncIteratorProtocol {
3617 public mutating func next() async -> MusicKit::MusicSubscription?
3618 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3619 public typealias Element = MusicKit::MusicSubscription
3620 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
3621 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
3622 }
3623 public typealias Element = MusicKit::MusicSubscription
3624 public func makeAsyncIterator() -> MusicKit::MusicSubscription.MusicKit::Updates.MusicKit::Iterator
3625 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3626 public typealias AsyncIterator = MusicKit::MusicSubscription.MusicKit::Updates.MusicKit::Iterator
3627 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
3628 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
3629 }
3630 public static var subscriptionUpdates: MusicKit::MusicSubscription.MusicKit::Updates {
3631 get
3632 }
3633}
… 3 unchanged lines …
3635@available(macOS, unavailable, introduced: 12.0)
3636@available(iOS, unavailable, introduced: 15.0)
3637@available(*, unavailable)
3638extension MusicKit.MusicSubscription.Updates.Iterator : @unchecked Swift.Sendable {
3639}
3640@available(visionOS, unavailable, introduced: 1.0)
3641@available(watchOS, unavailable, introduced: 8.0)
3642@available(tvOS, unavailable, introduced: 15.0)
3643@available(macOS, unavailable, introduced: 12.0)
3644@available(iOS, unavailable, introduced: 15.0)
3645@available(*, unavailable)
3646extension MusicKit.MusicSubscription.Updates : @unchecked Swift.Sendable {
3647}
3648@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3649public struct MusicSubscription : Swift.Equatable, Swift.Hashable, Swift.Sendable, Swift.CustomStringConvertible {
3650 public let canPlayCatalogContent: Swift.Bool
3651 public let canBecomeSubscriber: Swift.Bool
3652 public let hasCloudLibraryEnabled: Swift.Bool
3653 public static var current: MusicKit.MusicSubscription {
3654 get async throws
3655 }
3656 public var description: Swift.String {
3657 get
3658 }
3659 public static func == (a: MusicKit.MusicSubscription, b: MusicKit.MusicSubscription) -> Swift.Bool
3660 public func hash(into hasher: inout Swift.Hasher)
3661 public var hashValue: Swift.Int {
3662 get
3663 }
3664}
3665@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3666extension MusicKit.MusicSubscription {
3667 public enum Error : Swift.String, Foundation.LocalizedError, Swift.Sendable {
3668 case unknown
3669 case permissionDenied
3670 case privacyAcknowledgementRequired
3671 public var errorDescription: Swift.String? {
3672 get
3673 }
3674 public var failureReason: Swift.String? {
3675 get
3676 }
3677 public var recoverySuggestion: Swift.String? {
3678 get
3679 }
3680 public var helpAnchor: Swift.String? {
3681 get
3682 }
3683 public init?(rawValue: Swift.String)
3684 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3685 public typealias RawValue = Swift.String
3686 public var rawValue: Swift.String {
3687 get
3688 }
3689 }
3690}
3691@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3692extension MusicKit.MusicSubscription.Error : Swift.CustomStringConvertible {
3693 public var description: Swift.String {
3694 get
3695 }
3696}
3697@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3698open class MusicUserTokenProvider {
3699 public init()
3700 public func userToken(for developerToken: Swift.String, options: MusicKit.MusicTokenRequestOptions) async throws -> Swift.String
3701 @objc deinit
3702}
3703@_inheritsConvenienceInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3704public class DefaultMusicTokenProvider : MusicKit.MusicTokenProvider, @unchecked Swift.Sendable {
3705 public func developerToken(options: MusicKit.MusicTokenRequestOptions) async throws -> Swift.String
3706 override public init()
3707 @objc deinit
3708}
3709@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3710public struct MusicTokenRequestOptions : Swift.OptionSet, Swift.Sendable {
3711 public init(rawValue: Swift.Int)
3712 public let rawValue: Swift.Int
3713 public static let ignoreCache: MusicKit.MusicTokenRequestOptions
3714 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3715 public typealias ArrayLiteralElement = MusicKit.MusicTokenRequestOptions
3716 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3717 public typealias Element = MusicKit.MusicTokenRequestOptions
3718 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3719 public typealias RawValue = Swift.Int
3720}
3721@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3722public protocol MusicDeveloperTokenProvider : Swift.Sendable {
3723 func developerToken(options: MusicKit.MusicTokenRequestOptions) async throws -> Swift.String
3724}
3725@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3726public typealias MusicTokenProvider = MusicKit.MusicUserTokenProvider & MusicKit.MusicDeveloperTokenProvider
3727@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3728extension MusicKit.MusicDataRequest {
3729 public static var tokenProvider: any MusicKit.MusicUserTokenProvider & MusicKit.MusicDeveloperTokenProvider
3730}
3731@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3732public enum MusicTokenRequestError : Swift.String, Foundation.LocalizedError, Swift.Sendable, Swift.CustomStringConvertible {
3733 case unknown
3734 case permissionDenied
3735 case userTokenRevoked
3736 case userNotSignedIn
3737 case privacyAcknowledgementRequired
3738 case developerTokenRequestFailed
3739 case userTokenRequestFailed
3740 public var errorDescription: Swift.String? {
3741 get
3742 }
3743 public var failureReason: Swift.String? {
3744 get
3745 }
3746 public var recoverySuggestion: Swift.String? {
3747 get
3748 }
3749 public var helpAnchor: Swift.String? {
3750 get
3751 }
3752 public var description: Swift.String {
3753 get
3754 }
3755 public init?(rawValue: Swift.String)
3756 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
3757 public typealias RawValue = Swift.String
3758 public var rawValue: Swift.String {
3759 get
3760 }
3761}
3762@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3763extension MusicKit.MusicAuthorization.Status : Swift.Equatable {}
3764@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3765extension MusicKit.MusicAuthorization.Status : Swift.Hashable {}
3766@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3767extension MusicKit.MusicAuthorization.Status : Swift.RawRepresentable {}
3768@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3769extension MusicKit.MusicLibrary.Error : Swift.Equatable {}
3770@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3771extension MusicKit.MusicLibrary.Error : Swift.Hashable {}
3772@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3773extension MusicKit.MusicLibrary.Error : Swift.RawRepresentable {}
3774@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3775extension MusicKit.MusicRelationshipPropertyKind : Swift.Equatable {}
3776@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3777extension MusicKit.MusicRelationshipPropertyKind : Swift.Hashable {}
3778@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3779@available(watchOS, unavailable)
3780extension MusicKit.MusicPlayer.Queue.EntryInsertionPosition : Swift.Equatable {}
3781@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3782@available(watchOS, unavailable)
3783extension MusicKit.MusicPlayer.Queue.EntryInsertionPosition : Swift.Hashable {}
3784@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3785@available(watchOS, unavailable)
3786extension MusicKit.MusicPlayer.RepeatMode : Swift.Equatable {}
3787@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3788@available(watchOS, unavailable)
3789extension MusicKit.MusicPlayer.RepeatMode : Swift.Hashable {}
3790@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3791@available(watchOS, unavailable)
3792extension MusicKit.MusicPlayer.ShuffleMode : Swift.Equatable {}
3793@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3794@available(watchOS, unavailable)
3795extension MusicKit.MusicPlayer.ShuffleMode : Swift.Hashable {}
3796@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3797extension MusicKit.MusicSubscription.Error : Swift.Equatable {}
3798@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3799extension MusicKit.MusicSubscription.Error : Swift.Hashable {}
3800@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3801extension MusicKit.MusicSubscription.Error : Swift.RawRepresentable {}
3802@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3803extension MusicKit.MusicTokenRequestError : Swift.Equatable {}
3804@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3805extension MusicKit.MusicTokenRequestError : Swift.Hashable {}
3806@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3807extension MusicKit.MusicTokenRequestError : Swift.RawRepresentable {}
3637@available(macOS, unavailable, introduced: 12.0)
3638@available(iOS, unavailable, introduced: 15.0)
3639@available(*, unavailable)
3640extension MusicKit::MusicSubscription.MusicKit::Updates.MusicKit::Iterator : @unchecked Swift::Sendable {
3641}
3642@available(visionOS, unavailable, introduced: 1.0)
3643@available(watchOS, unavailable, introduced: 8.0)
3644@available(tvOS, unavailable, introduced: 15.0)
3645@available(macOS, unavailable, introduced: 12.0)
3646@available(iOS, unavailable, introduced: 15.0)
3647@available(*, unavailable)
3648extension MusicKit::MusicSubscription.MusicKit::Updates : @unchecked Swift::Sendable {
3649}
3650@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3651public struct MusicSubscription : Swift::Equatable, Swift::Hashable, Swift::Sendable, Swift::CustomStringConvertible {
3652 public let canPlayCatalogContent: Swift::Bool
3653 public let canBecomeSubscriber: Swift::Bool
3654 public let hasCloudLibraryEnabled: Swift::Bool
3655 public static var current: MusicKit::MusicSubscription {
3656 get async throws
3657 }
3658 public var description: Swift::String {
3659 get
3660 }
3661 public static func == (a: MusicKit::MusicSubscription, b: MusicKit::MusicSubscription) -> Swift::Bool
3662 public func hash(into hasher: inout Swift::Hasher)
3663 public var hashValue: Swift::Int {
3664 get
3665 }
3666}
3667@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3668extension MusicKit::MusicSubscription {
3669 public enum Error : Swift::String, Foundation::LocalizedError, Swift::Sendable {
3670 case unknown
3671 case permissionDenied
3672 case privacyAcknowledgementRequired
3673 public var errorDescription: Swift::String? {
3674 get
3675 }
3676 public var failureReason: Swift::String? {
3677 get
3678 }
3679 public var recoverySuggestion: Swift::String? {
3680 get
3681 }
3682 public var helpAnchor: Swift::String? {
3683 get
3684 }
3685 public init?(rawValue: Swift::String)
3686 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3687 public typealias RawValue = Swift::String
3688 public var rawValue: Swift::String {
3689 get
3690 }
3691 }
3692}
3693@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3694extension MusicKit::MusicSubscription.MusicKit::Error : Swift::CustomStringConvertible {
3695 public var description: Swift::String {
3696 get
3697 }
3698}
3699@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3700open class MusicUserTokenProvider {
3701 public init()
3702 public func userToken(for developerToken: Swift::String, options: MusicKit::MusicTokenRequestOptions) async throws -> Swift::String
3703 @objc deinit
3704}
3705@_inheritsConvenienceInitializers @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3706public class DefaultMusicTokenProvider : MusicKit::MusicTokenProvider, @unchecked Swift::Sendable {
3707 public func developerToken(options: MusicKit::MusicTokenRequestOptions) async throws -> Swift::String
3708 override public init()
3709 @objc deinit
3710}
3711@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3712public struct MusicTokenRequestOptions : Swift::OptionSet, Swift::Sendable {
3713 public init(rawValue: Swift::Int)
3714 public let rawValue: Swift::Int
3715 public static let ignoreCache: MusicKit::MusicTokenRequestOptions
3716 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3717 public typealias ArrayLiteralElement = MusicKit::MusicTokenRequestOptions
3718 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3719 public typealias Element = MusicKit::MusicTokenRequestOptions
3720 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3721 public typealias RawValue = Swift::Int
3722}
3723@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3724public protocol MusicDeveloperTokenProvider : Swift::Sendable {
3725 func developerToken(options: MusicKit::MusicTokenRequestOptions) async throws -> Swift::String
3726}
3727@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3728public typealias MusicTokenProvider = MusicKit::MusicUserTokenProvider & MusicKit::MusicDeveloperTokenProvider
3729@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3730extension MusicKit::MusicDataRequest {
3731 public static var tokenProvider: any MusicKit::MusicUserTokenProvider & MusicKit::MusicDeveloperTokenProvider
3732}
3733@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3734public enum MusicTokenRequestError : Swift::String, Foundation::LocalizedError, Swift::Sendable, Swift::CustomStringConvertible {
3735 case unknown
3736 case permissionDenied
3737 case userTokenRevoked
3738 case userNotSignedIn
3739 case privacyAcknowledgementRequired
3740 case developerTokenRequestFailed
3741 case userTokenRequestFailed
3742 public var errorDescription: Swift::String? {
3743 get
3744 }
3745 public var failureReason: Swift::String? {
3746 get
3747 }
3748 public var recoverySuggestion: Swift::String? {
3749 get
3750 }
3751 public var helpAnchor: Swift::String? {
3752 get
3753 }
3754 public var description: Swift::String {
3755 get
3756 }
3757 public init?(rawValue: Swift::String)
3758 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3759 public typealias RawValue = Swift::String
3760 public var rawValue: Swift::String {
3761 get
3762 }
3763}
3764@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3765extension MusicKit::MusicAuthorization.MusicKit::Status : Swift::Equatable {}
3766@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3767extension MusicKit::MusicAuthorization.MusicKit::Status : Swift::Hashable {}
3768@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3769extension MusicKit::MusicAuthorization.MusicKit::Status : Swift::RawRepresentable {}
3770@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3771extension MusicKit::MusicLibrary.MusicKit::Error : Swift::Equatable {}
3772@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3773extension MusicKit::MusicLibrary.MusicKit::Error : Swift::Hashable {}
3774@available(iOS 16.1, tvOS 16.1, watchOS 9.1, visionOS 1.0, macOS 14.0, macCatalyst 17.0, *)
3775extension MusicKit::MusicLibrary.MusicKit::Error : Swift::RawRepresentable {}
3776@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3777extension MusicKit::MusicRelationshipPropertyKind : Swift::Equatable {}
3778@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3779extension MusicKit::MusicRelationshipPropertyKind : Swift::Hashable {}
3780@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3781@available(watchOS, unavailable)
3782extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition : Swift::Equatable {}
3783@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3784@available(watchOS, unavailable)
3785extension MusicKit::MusicPlayer.MusicKit::Queue.MusicKit::EntryInsertionPosition : Swift::Hashable {}
3786@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3787@available(watchOS, unavailable)
3788extension MusicKit::MusicPlayer.MusicKit::RepeatMode : Swift::Equatable {}
3789@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3790@available(watchOS, unavailable)
3791extension MusicKit::MusicPlayer.MusicKit::RepeatMode : Swift::Hashable {}
3792@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3793@available(watchOS, unavailable)
3794extension MusicKit::MusicPlayer.MusicKit::ShuffleMode : Swift::Equatable {}
3795@available(iOS 15.0, tvOS 15.0, visionOS 1.0, macOS 14.0, *)
3796@available(watchOS, unavailable)
3797extension MusicKit::MusicPlayer.MusicKit::ShuffleMode : Swift::Hashable {}
3798@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3799extension MusicKit::MusicSubscription.MusicKit::Error : Swift::Equatable {}
3800@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3801extension MusicKit::MusicSubscription.MusicKit::Error : Swift::Hashable {}
3802@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3803extension MusicKit::MusicSubscription.MusicKit::Error : Swift::RawRepresentable {}
3804@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3805extension MusicKit::MusicTokenRequestError : Swift::Equatable {}
3806@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3807extension MusicKit::MusicTokenRequestError : Swift::Hashable {}
3808@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
3809extension MusicKit::MusicTokenRequestError : Swift::RawRepresentable {}