← Back to report

StoreKit.swiftinterface 2,726 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-feature DebugDescriptionMacro -enable-bare-slash-regex -user-module-version 815.5.6 -module-name StoreKit
4// swift-module-flags-ignorable: -formal-cxx-interoperability-mode=off -interface-compiler-version 6.3.2
5import BackgroundAssets
6import Combine
7import CoreFoundation
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-experimental-feature DebugDescriptionMacro -enable-bare-slash-regex -user-module-version 816.0.30.2.1 -module-name StoreKit
4// swift-module-flags-ignorable: -formal-cxx-interoperability-mode=off -interface-compiler-version 6.4
5import BackgroundAssets
6import Combine
7import CoreFoundation
… 13 unchanged lines …
21import os.log
22@preconcurrency import os
23@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
24public struct InvalidRequestError : Swift.Error {
25 public let code: Swift.Int64
26 public let message: Swift.String
27}
28extension Foundation.Date {
29 @_alwaysEmitIntoClient internal init(unixEpochMS: Swift.Int64) {
30 let timeSince1970InSeconds = Double(unixEpochMS) / 1000.0
31 self = Date(timeIntervalSince1970: timeSince1970InSeconds)
32 }
33}
34@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
35public typealias SubscriptionPeriod = StoreKit.Product.SubscriptionPeriod
36@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
37extension StoreKit.Product {
38 public struct SubscriptionPeriod : Swift.Equatable, Swift.Hashable {
39 public enum Unit : Swift.Equatable, Swift.Hashable {
40 case day
41 case week
42 case month
43 case year
44 public static func == (a: StoreKit.Product.SubscriptionPeriod.Unit, b: StoreKit.Product.SubscriptionPeriod.Unit) -> Swift.Bool
45 public func hash(into hasher: inout Swift.Hasher)
46 public var hashValue: Swift.Int {
47 get
48 }
49 }
50 public let unit: StoreKit.Product.SubscriptionPeriod.Unit
51 public let value: Swift.Int
52 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
53 @usableFromInline
54 internal init(from8601String string: Swift.String) throws
55 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
56 @usableFromInline
57 internal init(unit: StoreKit.Product.SubscriptionPeriod.Unit, value: Swift.Int)
58 public static func == (a: StoreKit.Product.SubscriptionPeriod, b: StoreKit.Product.SubscriptionPeriod) -> Swift.Bool
59 public func hash(into hasher: inout Swift.Hasher)
60 public var hashValue: Swift.Int {
61 get
62 }
63 }
64}
65@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
66extension StoreKit.Product.SubscriptionPeriod : Swift.CustomDebugStringConvertible {
67 public var debugDescription: Swift.String {
68 get
69 }
70}
71@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
72extension StoreKit.Product.SubscriptionPeriod.Unit : Swift.CustomDebugStringConvertible {
73 public var debugDescription: Swift.String {
74 get
75 }
76}
77@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
78extension Foundation.DateComponents {
79 public init(subscriptionPeriod period: StoreKit.Product.SubscriptionPeriod)
80}
81@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
82extension StoreKit.Product.SubscriptionPeriod : Swift.Sendable {
83}
84@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
85extension StoreKit.Product.SubscriptionPeriod.Unit : Swift.Sendable {
86}
87@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
88extension StoreKit.Product.SubscriptionPeriod.Unit {
89 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
90 @usableFromInline
91 internal var dynamicCalendarComponent: Foundation.Calendar.Component {
92 get
93 }
94}
95@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
96extension StoreKit.Product.SubscriptionPeriod.Unit {
97 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
98 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
99 @usableFromInline
100 internal var calendarComponent: Foundation.Calendar.Component {
101 get {
102
103
21import os.log
22@preconcurrency import os
23@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
24public struct InvalidRequestError : Swift::Error {
25 public let code: Swift::Int64
26 public let message: Swift::String
27}
28extension Foundation::Date {
29 @_alwaysEmitIntoClient internal init(unixEpochMS: Swift::Int64) {
30 let timeSince1970InSeconds = Double(unixEpochMS) / 1000.0
31 self = Date(timeIntervalSince1970: timeSince1970InSeconds)
32 }
33}
34@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
35public typealias SubscriptionPeriod = StoreKit::Product.StoreKit::SubscriptionPeriod
36@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
37extension StoreKit::Product {
38 public struct SubscriptionPeriod : Swift::Equatable, Swift::Hashable {
39 public enum Unit : Swift::Equatable, Swift::Hashable {
40 case day
41 case week
42 case month
43 case year
44 public static func == (a: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit, b: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit) -> Swift::Bool
45 public func hash(into hasher: inout Swift::Hasher)
46 public var hashValue: Swift::Int {
47 get
48 }
49 }
50 public let unit: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit
51 public let value: Swift::Int
52 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
53 @usableFromInline
54 internal init(from8601String string: Swift::String) throws
55 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
56 @usableFromInline
57 internal init(unit: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit, value: Swift::Int)
58 public static func == (a: StoreKit::Product.StoreKit::SubscriptionPeriod, b: StoreKit::Product.StoreKit::SubscriptionPeriod) -> Swift::Bool
59 public func hash(into hasher: inout Swift::Hasher)
60 public var hashValue: Swift::Int {
61 get
62 }
63 }
64}
65@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
66extension StoreKit::Product.StoreKit::SubscriptionPeriod : Swift::CustomDebugStringConvertible {
67 public var debugDescription: Swift::String {
68 get
69 }
70}
71@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
72extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit : Swift::CustomDebugStringConvertible {
73 public var debugDescription: Swift::String {
74 get
75 }
76}
77@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
78extension Foundation::DateComponents {
79 public init(subscriptionPeriod period: StoreKit::Product.StoreKit::SubscriptionPeriod)
80}
81@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
82extension StoreKit::Product.StoreKit::SubscriptionPeriod : Swift::Sendable {
83}
84@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
85extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit : Swift::Sendable {
86}
87@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
88extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit {
89 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
90 @usableFromInline
91 internal var dynamicCalendarComponent: Foundation::Calendar.Foundation::Component {
92 get
93 }
94}
95@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
96extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit {
97 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
98 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
99 @usableFromInline
100 internal var calendarComponent: Foundation::Calendar.Foundation::Component {
101 get {
102
103
… 15 unchanged lines …
119 }
120}
121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
122extension StoreKit.Product.SubscriptionPeriod {
123 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
124 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
125 public func dateRange(referenceDate: Foundation.Date = .now) -> Swift.Range<Foundation.Date> {
126 let upperBound: Date! = Calendar(identifier: .gregorian).date(
127 byAdding: unit.calendarComponent,
128 value: value,
119 }
120}
121@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
122extension StoreKit::Product.StoreKit::SubscriptionPeriod {
123 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
124 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
125 public func dateRange(referenceDate: Foundation::Date = .now) -> Swift::Range<Foundation::Date> {
126 let upperBound: Date! = Calendar(identifier: .gregorian).date(
127 byAdding: unit.calendarComponent,
128 value: value,
… 3 unchanged lines …
132 }
133 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
134 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
135 public func formatted<S>(_ format: S, referenceDate: Foundation.Date = .now) -> S.FormatOutput where S : Foundation.FormatStyle, S.FormatInput == Swift.Range<Foundation.Date> {
136 format.format(dateRange(referenceDate: referenceDate))
137 }
138}
139@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
140extension StoreKit.Product.SubscriptionPeriod {
141 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
142 public func formatted<S>(_ format: S, referenceDate: Foundation.Date = .now) -> S.FormatOutput where S : Foundation.FormatStyle, S.FormatInput == Swift.Duration
143}
144extension StoreKit.Product.SubscriptionPeriod {
145 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
146 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
147 public static var weekly: StoreKit.Product.SubscriptionPeriod {
148 get {
149 Self(unit: .week, value: 1)
150 }
151 }
152 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
153 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
154 public static var monthly: StoreKit.Product.SubscriptionPeriod {
155 get {
156 Self(unit: .month, value: 1)
157 }
158 }
159 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
160 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
161 public static var yearly: StoreKit.Product.SubscriptionPeriod {
162 get {
163 Self(unit: .year, value: 1)
164 }
165 }
166 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
167 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
168 public static var everyThreeDays: StoreKit.Product.SubscriptionPeriod {
169 get {
170 Self(unit: .day, value: 3)
171 }
172 }
173 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
174 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
175 public static var everyTwoWeeks: StoreKit.Product.SubscriptionPeriod {
176 get {
177 Self(unit: .week, value: 2)
178 }
179 }
180 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
181 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
182 public static var everyTwoMonths: StoreKit.Product.SubscriptionPeriod {
183 get {
184 Self(unit: .month, value: 2)
185 }
186 }
187 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
188 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
189 public static var everyThreeMonths: StoreKit.Product.SubscriptionPeriod {
190 get {
191 Self(unit: .month, value: 3)
192 }
193 }
194 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
195 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
196 public static var everySixMonths: StoreKit.Product.SubscriptionPeriod {
197 get {
198 Self(unit: .month, value: 6)
199 }
200 }
201}
202@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
203extension StoreKit.Product.SubscriptionPeriod.Unit {
204 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
205 public struct FormatStyle : Foundation.FormatStyle {
206 public func format(_ value: StoreKit.Product.SubscriptionPeriod.Unit) -> Swift.String
207 public func locale(_ locale: Foundation.Locale) -> StoreKit.Product.SubscriptionPeriod.Unit.FormatStyle
208 public func encode(to encoder: any Swift.Encoder) throws
209 public init(from decoder: any Swift.Decoder) throws
210 public static func == (a: StoreKit.Product.SubscriptionPeriod.Unit.FormatStyle, b: StoreKit.Product.SubscriptionPeriod.Unit.FormatStyle) -> Swift.Bool
211 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
212 public typealias FormatInput = StoreKit.Product.SubscriptionPeriod.Unit
213 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
214 public typealias FormatOutput = Swift.String
215 public func hash(into hasher: inout Swift.Hasher)
216 public var hashValue: Swift.Int {
217 get
218 }
219 }
220 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
221 public func formatted<S>(_ format: S) -> S.FormatOutput where S : Foundation.FormatStyle, S.FormatInput == StoreKit.Product.SubscriptionPeriod.Unit
222}
223@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
224extension StoreKit.Product.SubscriptionPeriod.Unit : Swift.Comparable {
225 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
226 public static func < (lhs: StoreKit.Product.SubscriptionPeriod.Unit, rhs: StoreKit.Product.SubscriptionPeriod.Unit) -> Swift.Bool
227}
228@available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
229@available(tvOS, unavailable)
230@available(watchOS, unavailable)
231@available(visionOS, unavailable)
232public struct PurchaseIntent : Swift.Equatable, Swift.Sendable {
233 public let product: StoreKit.Product
234 @available(iOS 18.0, macOS 15.0, *)
235 @available(tvOS, unavailable)
236 @available(watchOS, unavailable)
237 @available(visionOS, unavailable)
238 public let offer: StoreKit.Product.SubscriptionOffer?
239 @available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
240 @backDeployed(before: iOS 18.0, macOS 15.0, macCatalyst 18.0)
241 @available(tvOS, unavailable)
242 @available(watchOS, unavailable)
243 @available(visionOS, unavailable)
244 public var id: StoreKit.Product.ID {
245 get { product.id }
246 }
247 public static func == (a: StoreKit.PurchaseIntent, b: StoreKit.PurchaseIntent) -> Swift.Bool
248}
249@available(iOS 18.0, macOS 15.0, macCatalyst 18.0, *)
250@available(tvOS, unavailable)
251@available(watchOS, unavailable)
252@available(visionOS, unavailable)
253extension StoreKit.PurchaseIntent : Swift.Identifiable {
254 @available(iOS 18.0, macOS 15.0, macCatalyst 18.0, *)
255 @available(tvOS, unavailable)
256 @available(watchOS, unavailable)
257 @available(visionOS, unavailable)
258 public typealias ID = StoreKit.Product.ID
259}
260@available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
261@available(tvOS, unavailable)
262@available(watchOS, unavailable)
263@available(visionOS, unavailable)
264extension StoreKit.PurchaseIntent {
265 public struct PurchaseIntents : _Concurrency.AsyncSequence {
266 public typealias Element = StoreKit.PurchaseIntent
267 public struct AsyncIterator : _Concurrency.AsyncIteratorProtocol {
268 public mutating func next() async -> StoreKit.PurchaseIntent.PurchaseIntents.Element?
269 @available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
270 @available(tvOS, unavailable)
271 @available(watchOS, unavailable)
272 @available(visionOS, unavailable)
273 public typealias Element = StoreKit.PurchaseIntent.PurchaseIntents.Element
274 @available(iOS 18.0, macOS 15.0, macCatalyst 16.4, *)
275 @available(tvOS, unavailable, introduced: 18.0)
276 @available(watchOS, unavailable, introduced: 11.0)
277 @available(visionOS, unavailable, introduced: 2.0)
278 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
279 }
280 public func makeAsyncIterator() -> StoreKit.PurchaseIntent.PurchaseIntents.AsyncIterator
281 @available(iOS 18.0, macOS 15.0, macCatalyst 16.4, *)
282 @available(tvOS, unavailable, introduced: 18.0)
283 @available(watchOS, unavailable, introduced: 11.0)
284 @available(visionOS, unavailable, introduced: 2.0)
285 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
286 }
287 public static var intents: StoreKit.PurchaseIntent.PurchaseIntents {
288 get
289 }
290}
291@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
292extension StoreKit.BackingValue : Swift.Decodable {
293 public init(from decoder: any Swift.Decoder) throws
294}
295@available(iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0, *)
296extension StoreKit.BackingValue : Swift.Encodable {
297 @usableFromInline
298 internal func encode(to encoder: any Swift.Encoder) throws
299}
300@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
301@available(macOS, unavailable)
302@available(tvOS, unavailable)
303@available(watchOS, unavailable)
304public struct Message : Swift.Sendable {
305 public let reason: StoreKit.Message.Reason
306 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
307 @available(macOS, unavailable)
308 @available(tvOS, unavailable)
309 @available(watchOS, unavailable)
310 public struct Reason : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
311 public let rawValue: Swift.Int
312 public init(rawValue: Swift.Int)
313 public static let generic: StoreKit.Message.Reason
314 public static let priceIncreaseConsent: StoreKit.Message.Reason
315 @available(iOS 16.4, macCatalyst 16.4, visionOS 1.0, *)
316 @available(macOS, unavailable)
317 @available(tvOS, unavailable)
318 @available(watchOS, unavailable)
319 public static let billingIssue: StoreKit.Message.Reason
320 @available(iOS 18.0, macCatalyst 18.0, visionOS 2.0, *)
321 @available(macOS, unavailable)
322 @available(tvOS, unavailable)
323 @available(watchOS, unavailable)
324 public static let winBackOffer: StoreKit.Message.Reason
325 @available(iOS 16.0, visionOS 1.0, macCatalyst 16.0, *)
326 @available(tvOS, unavailable)
327 @available(watchOS, unavailable)
328 @available(macOS, unavailable)
329 public typealias RawValue = Swift.Int
330 }
331}
332@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
333@available(macOS, unavailable)
334@available(tvOS, unavailable)
335@available(watchOS, unavailable)
336extension StoreKit.Message : Swift.Equatable {
337 public static func == (lhs: StoreKit.Message, rhs: StoreKit.Message) -> Swift.Bool
338}
339@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
340@available(macOS, unavailable)
341@available(tvOS, unavailable)
342@available(watchOS, unavailable)
343extension StoreKit.Message : Swift.Hashable {
344 public func hash(into hasher: inout Swift.Hasher)
345 public var hashValue: Swift.Int {
346 get
347 }
348}
349@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
350@available(macOS, unavailable)
351@available(tvOS, unavailable)
352@available(watchOS, unavailable)
353extension StoreKit.Message {
354 @_Concurrency.MainActor public func display(in scene: UIKit.UIWindowScene) throws
355}
356@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
357@available(macOS, unavailable)
358@available(tvOS, unavailable)
359@available(watchOS, unavailable)
360extension StoreKit.Message {
361 public struct Messages : _Concurrency.AsyncSequence, Swift.Sendable {
362 public typealias Element = StoreKit.Message
363 public struct AsyncIterator : _Concurrency.AsyncIteratorProtocol {
364 public mutating func next() async -> StoreKit.Message.Messages.Element?
365 @available(iOS 16.0, visionOS 1.0, macCatalyst 16.0, *)
366 @available(tvOS, unavailable)
367 @available(watchOS, unavailable)
368 @available(macOS, unavailable)
369 public typealias Element = StoreKit.Message.Messages.Element
370 @available(iOS 18.0, visionOS 2.0, macCatalyst 16.0, *)
371 @available(tvOS, unavailable, introduced: 18.0)
372 @available(watchOS, unavailable, introduced: 11.0)
373 @available(macOS, unavailable, introduced: 15.0)
374 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
375 }
376 public func makeAsyncIterator() -> StoreKit.Message.Messages.AsyncIterator
377 @available(iOS 18.0, visionOS 2.0, macCatalyst 16.0, *)
378 @available(tvOS, unavailable, introduced: 18.0)
379 @available(watchOS, unavailable, introduced: 11.0)
380 @available(macOS, unavailable, introduced: 15.0)
381 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
382 }
383 public static var messages: StoreKit.Message.Messages {
384 get
385 }
386}
387@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
388@usableFromInline
389internal enum BackingValue : Swift.Equatable, Swift.Hashable {
390 case string(Swift.String)
391 case number(Swift.Double)
392 case bigInt(Swift.Int64)
393 case bool(Swift.Bool)
394 case array([StoreKit.BackingValue])
395 case dictionary([Swift.String : StoreKit.BackingValue])
396 case `nil`
397 public subscript(key: Swift.String) -> StoreKit.BackingValue {
398 get
399 set
400 }
401 public subscript(index: Swift.Int) -> StoreKit.BackingValue {
402 get
403 set
404 }
405 @usableFromInline
406 internal init(foundation: Any) throws
407 @usableFromInline
408 internal init<T>(_ value: T) where T : Swift.BinaryInteger
409 @usableFromInline
410 internal var foundation: Any {
411 get
412 }
413 @usableFromInline
414 internal var xpcAllowed: ObjectiveC.NSObject? {
415 get
416 }
417 @usableFromInline
418 internal var type: any Any.Type {
419 get
420 }
421 @usableFromInline
422 internal var isNil: Swift.Bool {
423 get
424 }
425 @usableFromInline
426 internal static func == (a: StoreKit.BackingValue, b: StoreKit.BackingValue) -> Swift.Bool
427 @usableFromInline
428 internal func hash(into hasher: inout Swift.Hasher)
429 @usableFromInline
430 internal var hashValue: Swift.Int {
431 @usableFromInline
432 get
433 }
434}
435@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
436extension StoreKit.BackingValue : Swift.CustomStringConvertible {
437 public var description: Swift.String {
438 get
439 }
440}
441@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
442extension StoreKit.BackingValue : Swift.CustomDebugStringConvertible {
443 public var debugDescription: Swift.String {
444 get
445 }
446}
447@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
448extension StoreKit.BackingValue : Swift.Sendable {
449}
450@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
451extension StoreKit.BackingValue {
452 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
453 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
454 @usableFromInline
455 internal func value<T>(atKeyPath keyPath: Swift.String..., sentinel: @autoclosure () -> T, transform: (StoreKit.BackingValue) -> T?) -> T {
456 var current = self
457 for key in keyPath {
458 current = current[key]
132 }
133 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
134 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
135 public func formatted<S>(_ format: S, referenceDate: Foundation::Date = .now) -> S.FormatOutput where S : Foundation::FormatStyle, S.FormatInput == Swift::Range<Foundation::Date> {
136 format.format(dateRange(referenceDate: referenceDate))
137 }
138}
139@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
140extension StoreKit::Product.StoreKit::SubscriptionPeriod {
141 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
142 public func formatted<S>(_ format: S, referenceDate: Foundation::Date = .now) -> S.FormatOutput where S : Foundation::FormatStyle, S.FormatInput == Swift::Duration
143}
144extension StoreKit::Product.StoreKit::SubscriptionPeriod {
145 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
146 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
147 public static var weekly: StoreKit::Product.StoreKit::SubscriptionPeriod {
148 get {
149 Self(unit: .week, value: 1)
150 }
151 }
152 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
153 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
154 public static var monthly: StoreKit::Product.StoreKit::SubscriptionPeriod {
155 get {
156 Self(unit: .month, value: 1)
157 }
158 }
159 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
160 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
161 public static var yearly: StoreKit::Product.StoreKit::SubscriptionPeriod {
162 get {
163 Self(unit: .year, value: 1)
164 }
165 }
166 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
167 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
168 public static var everyThreeDays: StoreKit::Product.StoreKit::SubscriptionPeriod {
169 get {
170 Self(unit: .day, value: 3)
171 }
172 }
173 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
174 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
175 public static var everyTwoWeeks: StoreKit::Product.StoreKit::SubscriptionPeriod {
176 get {
177 Self(unit: .week, value: 2)
178 }
179 }
180 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
181 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
182 public static var everyTwoMonths: StoreKit::Product.StoreKit::SubscriptionPeriod {
183 get {
184 Self(unit: .month, value: 2)
185 }
186 }
187 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
188 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
189 public static var everyThreeMonths: StoreKit::Product.StoreKit::SubscriptionPeriod {
190 get {
191 Self(unit: .month, value: 3)
192 }
193 }
194 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
195 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
196 public static var everySixMonths: StoreKit::Product.StoreKit::SubscriptionPeriod {
197 get {
198 Self(unit: .month, value: 6)
199 }
200 }
201}
202@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
203extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit {
204 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
205 public struct FormatStyle : Foundation::FormatStyle {
206 public func format(_ value: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit) -> Swift::String
207 public func locale(_ locale: Foundation::Locale) -> StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit.StoreKit::FormatStyle
208 public func encode(to encoder: any Swift::Encoder) throws
209 public init(from decoder: any Swift::Decoder) throws
210 public static func == (a: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit.StoreKit::FormatStyle, b: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit.StoreKit::FormatStyle) -> Swift::Bool
211 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
212 public typealias FormatInput = StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit
213 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
214 public typealias FormatOutput = Swift::String
215 public func hash(into hasher: inout Swift::Hasher)
216 public var hashValue: Swift::Int {
217 get
218 }
219 }
220 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
221 public func formatted<S>(_ format: S) -> S.FormatOutput where S : Foundation::FormatStyle, S.FormatInput == StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit
222}
223@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
224extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit : Swift::Comparable {
225 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
226 public static func < (lhs: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit, rhs: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit) -> Swift::Bool
227}
228@available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
229@available(tvOS, unavailable)
230@available(watchOS, unavailable)
231@available(visionOS, unavailable)
232public struct PurchaseIntent : Swift::Equatable, Swift::Sendable {
233 public let product: StoreKit::Product
234 @available(iOS 18.0, macOS 15.0, *)
235 @available(tvOS, unavailable)
236 @available(watchOS, unavailable)
237 @available(visionOS, unavailable)
238 public let offer: StoreKit::Product.StoreKit::SubscriptionOffer?
239 @available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
240 @backDeployed(before: iOS 18.0, macOS 15.0, macCatalyst 18.0)
241 @available(tvOS, unavailable)
242 @available(watchOS, unavailable)
243 @available(visionOS, unavailable)
244 public var id: StoreKit::Product.StoreKit::ID {
245 get { product.id }
246 }
247 public static func == (a: StoreKit::PurchaseIntent, b: StoreKit::PurchaseIntent) -> Swift::Bool
248}
249@available(iOS 18.0, macOS 15.0, macCatalyst 18.0, *)
250@available(tvOS, unavailable)
251@available(watchOS, unavailable)
252@available(visionOS, unavailable)
253extension StoreKit::PurchaseIntent : Swift::Identifiable {
254 @available(macOS 15.0, iOS 18.0, macCatalyst 18.0, *)
255 @available(tvOS, unavailable)
256 @available(watchOS, unavailable)
257 @available(visionOS, unavailable)
258 public typealias ID = StoreKit::Product.StoreKit::ID
259}
260@available(iOS 16.4, macOS 14.4, macCatalyst 16.4, *)
261@available(tvOS, unavailable)
262@available(watchOS, unavailable)
263@available(visionOS, unavailable)
264extension StoreKit::PurchaseIntent {
265 public struct PurchaseIntents : _Concurrency::AsyncSequence {
266 public typealias Element = StoreKit::PurchaseIntent
267 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
268 public mutating func next() async -> StoreKit::PurchaseIntent.StoreKit::PurchaseIntents.StoreKit::Element?
269 @available(macOS 14.4, iOS 16.4, macCatalyst 16.4, *)
270 @available(tvOS, unavailable)
271 @available(watchOS, unavailable)
272 @available(visionOS, unavailable)
273 public typealias Element = StoreKit::PurchaseIntent.StoreKit::PurchaseIntents.StoreKit::Element
274 @available(macOS 15.0, iOS 18.0, macCatalyst 16.4, *)
275 @available(tvOS, unavailable, introduced: 18.0)
276 @available(watchOS, unavailable, introduced: 11.0)
277 @available(visionOS, unavailable, introduced: 2.0)
278 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
279 }
280 public func makeAsyncIterator() -> StoreKit::PurchaseIntent.StoreKit::PurchaseIntents.StoreKit::AsyncIterator
281 @available(macOS 15.0, iOS 18.0, macCatalyst 16.4, *)
282 @available(tvOS, unavailable, introduced: 18.0)
283 @available(watchOS, unavailable, introduced: 11.0)
284 @available(visionOS, unavailable, introduced: 2.0)
285 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
286 }
287 public static var intents: StoreKit::PurchaseIntent.StoreKit::PurchaseIntents {
288 get
289 }
290}
291@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
292extension StoreKit::BackingValue : Swift::Decodable {
293 public init(from decoder: any Swift::Decoder) throws
294}
295@available(iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0, *)
296extension StoreKit::BackingValue : Swift::Encodable {
297 @usableFromInline
298 internal func encode(to encoder: any Swift::Encoder) throws
299}
300@available(iOS 27.0, macCatalyst 27.0, macOS 27.0, visionOS 27.0, *)
301@available(watchOS, unavailable)
302@available(tvOS, unavailable)
303public struct RedeemOption : Swift::Equatable, Swift::Hashable, Swift::Sendable {
304 public static func == (a: StoreKit::RedeemOption, b: StoreKit::RedeemOption) -> Swift::Bool
305 public func hash(into hasher: inout Swift::Hasher)
306 public var hashValue: Swift::Int {
307 get
308 }
309}
310extension StoreKit::AppStore {
311 @available(iOS, introduced: 16.0, deprecated: 27.0, message: "Use `presentOfferCodeRedeemSheet(from:options:)` instead.")
312 @available(macCatalyst, introduced: 16.0, deprecated: 27.0, message: "Use `presentOfferCodeRedeemSheet(from:options:)` instead.")
313 @available(visionOS, introduced: 1.0, deprecated: 27.0, message: "Use `presentOfferCodeRedeemSheet(from:options:)` instead.")
314 @available(macOS, unavailable)
315 @available(watchOS, unavailable)
316 @available(tvOS, unavailable)
317 @_Concurrency::MainActor public static func presentOfferCodeRedeemSheet(in scene: UIKit::UIWindowScene) async throws
318 @available(iOS 27.0, macCatalyst 27.0, visionOS 27.0, *)
319 @available(macOS, unavailable)
320 @available(watchOS, unavailable)
321 @available(tvOS, unavailable)
322 @_Concurrency::MainActor public static func presentOfferCodeRedeemSheet(from viewController: UIKit::UIViewController, options: Swift::Set<StoreKit::RedeemOption> = []) async throws -> StoreKit::VerificationResult<StoreKit::Transaction>
323}
324@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
325@available(macOS, unavailable)
326@available(tvOS, unavailable)
327@available(watchOS, unavailable)
328public struct Message : Swift::Sendable {
329 public let reason: StoreKit::Message.StoreKit::Reason
330 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
331 @available(macOS, unavailable)
332 @available(tvOS, unavailable)
333 @available(watchOS, unavailable)
334 public struct Reason : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
335 public let rawValue: Swift::Int
336 public init(rawValue: Swift::Int)
337 public static let generic: StoreKit::Message.StoreKit::Reason
338 public static let priceIncreaseConsent: StoreKit::Message.StoreKit::Reason
339 @available(iOS 16.4, macCatalyst 16.4, visionOS 1.0, *)
340 @available(macOS, unavailable)
341 @available(tvOS, unavailable)
342 @available(watchOS, unavailable)
343 public static let billingIssue: StoreKit::Message.StoreKit::Reason
344 @available(iOS 18.0, macCatalyst 18.0, visionOS 2.0, *)
345 @available(macOS, unavailable)
346 @available(tvOS, unavailable)
347 @available(watchOS, unavailable)
348 public static let winBackOffer: StoreKit::Message.StoreKit::Reason
349 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
350 @available(macOS, unavailable)
351 @available(tvOS, unavailable)
352 @available(watchOS, unavailable)
353 public typealias RawValue = Swift::Int
354 }
355}
356@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
357@available(macOS, unavailable)
358@available(tvOS, unavailable)
359@available(watchOS, unavailable)
360extension StoreKit::Message : Swift::Equatable {
361 public static func == (lhs: StoreKit::Message, rhs: StoreKit::Message) -> Swift::Bool
362}
363@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
364@available(macOS, unavailable)
365@available(tvOS, unavailable)
366@available(watchOS, unavailable)
367extension StoreKit::Message : Swift::Hashable {
368 public func hash(into hasher: inout Swift::Hasher)
369 public var hashValue: Swift::Int {
370 get
371 }
372}
373@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
374@available(macOS, unavailable)
375@available(tvOS, unavailable)
376@available(watchOS, unavailable)
377extension StoreKit::Message {
378 @_Concurrency::MainActor public func display(in scene: UIKit::UIWindowScene) throws
379}
380@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
381@available(macOS, unavailable)
382@available(tvOS, unavailable)
383@available(watchOS, unavailable)
384extension StoreKit::Message {
385 public struct Messages : _Concurrency::AsyncSequence, Swift::Sendable {
386 public typealias Element = StoreKit::Message
387 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
388 public mutating func next() async -> StoreKit::Message.StoreKit::Messages.StoreKit::Element?
389 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
390 @available(macOS, unavailable)
391 @available(tvOS, unavailable)
392 @available(watchOS, unavailable)
393 public typealias Element = StoreKit::Message.StoreKit::Messages.StoreKit::Element
394 @available(iOS 18.0, macCatalyst 16.0, visionOS 2.0, *)
395 @available(macOS, unavailable, introduced: 15.0)
396 @available(tvOS, unavailable, introduced: 18.0)
397 @available(watchOS, unavailable, introduced: 11.0)
398 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
399 }
400 public func makeAsyncIterator() -> StoreKit::Message.StoreKit::Messages.StoreKit::AsyncIterator
401 @available(iOS 18.0, macCatalyst 16.0, visionOS 2.0, *)
402 @available(macOS, unavailable, introduced: 15.0)
403 @available(tvOS, unavailable, introduced: 18.0)
404 @available(watchOS, unavailable, introduced: 11.0)
405 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
406 }
407 public static var messages: StoreKit::Message.StoreKit::Messages {
408 get
409 }
410}
411@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
412@usableFromInline
413internal enum BackingValue : Swift::Equatable, Swift::Hashable {
414 case string(Swift::String)
415 case number(Swift::Double)
416 case bigInt(Swift::Int64)
417 case bool(Swift::Bool)
418 case array([StoreKit::BackingValue])
419 case dictionary([Swift::String : StoreKit::BackingValue])
420 case `nil`
421 public subscript(key: Swift::String) -> StoreKit::BackingValue {
422 get
423 set
424 }
425 public subscript(index: Swift::Int) -> StoreKit::BackingValue {
426 get
427 set
428 }
429 @usableFromInline
430 internal init(foundation: Any) throws
431 @usableFromInline
432 internal init<T>(_ value: T) where T : Swift::BinaryInteger
433 @usableFromInline
434 internal var foundation: Any {
435 get
436 }
437 @usableFromInline
438 internal var xpcAllowed: ObjectiveC::NSObject? {
439 get
440 }
441 @usableFromInline
442 internal var type: any Any.Type {
443 get
444 }
445 @usableFromInline
446 internal var isNil: Swift::Bool {
447 get
448 }
449 @usableFromInline
450 internal static func == (a: StoreKit::BackingValue, b: StoreKit::BackingValue) -> Swift::Bool
451 @usableFromInline
452 internal func hash(into hasher: inout Swift::Hasher)
453 @usableFromInline
454 internal var hashValue: Swift::Int {
455 @usableFromInline
456 get
457 }
458}
459@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
460extension StoreKit::BackingValue : Swift::CustomStringConvertible {
461 public var description: Swift::String {
462 get
463 }
464}
465@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
466extension StoreKit::BackingValue : Swift::CustomDebugStringConvertible {
467 public var debugDescription: Swift::String {
468 get
469 }
470}
471@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
472extension StoreKit::BackingValue : Swift::Sendable {
473}
474@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
475extension StoreKit::BackingValue {
476 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
477 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
478 @usableFromInline
479 internal func value<T>(atKeyPath keyPath: Swift::String..., sentinel: @autoclosure () -> T, transform: (StoreKit::BackingValue) -> T?) -> T {
480 var current = self
481 for key in keyPath {
482 current = current[key]
… 5 unchanged lines …
464 }
465}
466@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
467extension StoreKit.VerificationResult where SignedType == StoreKit.AppTransaction {
468 public var jwsRepresentation: Swift.String {
469 get
470 }
471 public var headerData: Foundation.Data {
472 get
473 }
474 public var payloadData: Foundation.Data {
475 get
476 }
477 public var signatureData: Foundation.Data {
478 get
479 }
480 public var signature: CryptoKit.P256.Signing.ECDSASignature {
481 get
482 }
483 public var signedData: Foundation.Data {
484 get
485 }
486 public var signedDate: Foundation.Date {
487 get
488 }
489 public var deviceVerification: Foundation.Data {
490 get
491 }
492 public var deviceVerificationNonce: Foundation.UUID {
493 get
494 }
495}
496@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
497extension StoreKit.VerificationResult where SignedType == StoreKit.Transaction {
498 public var jwsRepresentation: Swift.String {
499 get
500 }
501 public var headerData: Foundation.Data {
502 get
503 }
504 public var payloadData: Foundation.Data {
505 get
506 }
507 public var signatureData: Foundation.Data {
508 get
509 }
510 public var signature: CryptoKit.P256.Signing.ECDSASignature {
511 get
512 }
513 public var signedData: Foundation.Data {
514 get
515 }
516 public var signedDate: Foundation.Date {
517 get
518 }
519 public var deviceVerification: Foundation.Data {
520 get
521 }
522 public var deviceVerificationNonce: Foundation.UUID {
523 get
524 }
525}
526@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
527extension StoreKit.VerificationResult where SignedType == StoreKit.Product.SubscriptionInfo.RenewalInfo {
528 public var jwsRepresentation: Swift.String {
529 get
530 }
531 public var headerData: Foundation.Data {
532 get
533 }
534 public var payloadData: Foundation.Data {
535 get
536 }
537 public var signatureData: Foundation.Data {
538 get
539 }
540 public var signature: CryptoKit.P256.Signing.ECDSASignature {
541 get
542 }
543 public var signedData: Foundation.Data {
544 get
545 }
546 public var signedDate: Foundation.Date {
547 get
548 }
549 public var deviceVerification: Foundation.Data {
550 get
551 }
552 public var deviceVerificationNonce: Foundation.UUID {
553 get
554 }
555}
556@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
557extension Swift.BinaryInteger {
558 @usableFromInline
559 internal init?(_ value: StoreKit.BackingValue)
560}
561@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
562extension Swift.BinaryFloatingPoint {
563 @usableFromInline
564 internal init?(_ value: StoreKit.BackingValue)
565}
566@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
567extension Foundation.Date {
568 @usableFromInline
569 internal init?(_ value: StoreKit.BackingValue)
570}
571@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
572extension Foundation.Data {
573 @usableFromInline
574 internal init?(_ value: StoreKit.BackingValue)
575}
576@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
577extension Swift.String {
578 @usableFromInline
579 internal init?(_ value: StoreKit.BackingValue)
580}
581@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
582extension Foundation.Decimal {
583 @usableFromInline
584 internal init?(_ value: StoreKit.BackingValue)
585}
586@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
587extension Swift.Bool {
588 @usableFromInline
589 internal init?(_ value: StoreKit.BackingValue)
590}
591@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
592extension Foundation.UUID {
593 @usableFromInline
594 internal init?(_ value: StoreKit.BackingValue)
595}
596@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
597extension Swift.Array where Element == StoreKit.BackingValue {
598 @usableFromInline
599 internal init?(_ value: StoreKit.BackingValue)
600}
601@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
602extension Swift.Dictionary where Key == Swift.String, Value == StoreKit.BackingValue {
603 @usableFromInline
604 internal init?(_ value: StoreKit.BackingValue)
605}
606@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
607extension StoreKit.AppStore.Environment {
608 @usableFromInline
609 internal init?(_ value: StoreKit.BackingValue)
610}
611@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
612extension StoreKit.Transaction.Reason {
613 @usableFromInline
614 internal init?(_ value: StoreKit.BackingValue)
615}
616@available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
617extension StoreKit.Transaction.Offer.PaymentMode {
618 @usableFromInline
619 internal init?(_ value: StoreKit.BackingValue)
620}
621@available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
622extension Foundation.Locale.Currency {
623 @usableFromInline
624 internal init?(_ value: StoreKit.BackingValue)
625}
626@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
627extension StoreKit.Product.SubscriptionPeriod {
628 @usableFromInline
629 internal init?(_ value: StoreKit.BackingValue)
630}
631extension StoreKit.BackingValue {
632 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
633 @usableFromInline
634 internal init?(_ value: StoreKit.BackingValue)
635}
636@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
637extension StoreKit.Product.SubscriptionInfo.RenewalInfo {
638 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
639 public struct AdvancedCommerceInfo : Swift.Equatable, Swift.Hashable, Swift.Sendable {
640 public struct Item : Swift.Equatable, Swift.Hashable, Swift.Sendable {
641 public typealias Details = StoreKit.Transaction.AdvancedCommerceInfo.Item.Details
642 public let details: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.Details
643 @available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
644 public let priceIncreaseInfo: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo?
645 public static func == (a: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item, b: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item) -> Swift.Bool
646 public func hash(into hasher: inout Swift.Hasher)
647 public var hashValue: Swift.Int {
648 get
649 }
650 }
651 public let consistencyToken: Swift.String
652 public let requestReferenceID: Swift.String
653 public let taxCode: Swift.String
654 public let description: Swift.String
655 public let displayName: Swift.String
656 public let period: StoreKit.SubscriptionPeriod
657 public let items: [StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item]
658 public static func == (a: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo, b: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo) -> Swift.Bool
659 public func hash(into hasher: inout Swift.Hasher)
660 public var hashValue: Swift.Int {
661 get
662 }
663 }
664}
665@available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
666extension StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item {
667 public struct PriceIncreaseInfo : Swift.Equatable, Swift.Hashable, Swift.Sendable {
668 public struct Status : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
669 public let rawValue: Swift.String
670 public init(rawValue: Swift.String)
671 public static let pending: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo.Status
672 public static let accepted: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo.Status
673 public static let scheduled: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo.Status
674 @available(iOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, macOS 26.2, *)
675 public typealias RawValue = Swift.String
676 }
677 public let status: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo.Status
678 public let price: Foundation.Decimal
679 public let dependentSKUs: [Swift.String]
680 public static func == (a: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo, b: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo.Item.PriceIncreaseInfo) -> Swift.Bool
681 public func hash(into hasher: inout Swift.Hasher)
682 public var hashValue: Swift.Int {
683 get
684 }
685 }
488 }
489}
490@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
491extension StoreKit::VerificationResult where SignedType == StoreKit::AppTransaction {
492 public var jwsRepresentation: Swift::String {
493 get
494 }
495 public var headerData: Foundation::Data {
496 get
497 }
498 public var payloadData: Foundation::Data {
499 get
500 }
501 public var signatureData: Foundation::Data {
502 get
503 }
504 public var signature: CryptoKit::P256.CryptoKit::Signing.CryptoKit::ECDSASignature {
505 get
506 }
507 public var signedData: Foundation::Data {
508 get
509 }
510 public var signedDate: Foundation::Date {
511 get
512 }
513 public var deviceVerification: Foundation::Data {
514 get
515 }
516 public var deviceVerificationNonce: Foundation::UUID {
517 get
518 }
519}
520@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
521extension StoreKit::VerificationResult where SignedType == StoreKit::Transaction {
522 public var jwsRepresentation: Swift::String {
523 get
524 }
525 public var headerData: Foundation::Data {
526 get
527 }
528 public var payloadData: Foundation::Data {
529 get
530 }
531 public var signatureData: Foundation::Data {
532 get
533 }
534 public var signature: CryptoKit::P256.CryptoKit::Signing.CryptoKit::ECDSASignature {
535 get
536 }
537 public var signedData: Foundation::Data {
538 get
539 }
540 public var signedDate: Foundation::Date {
541 get
542 }
543 public var deviceVerification: Foundation::Data {
544 get
545 }
546 public var deviceVerificationNonce: Foundation::UUID {
547 get
548 }
549}
550@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
551extension StoreKit::VerificationResult where SignedType == StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo {
552 public var jwsRepresentation: Swift::String {
553 get
554 }
555 public var headerData: Foundation::Data {
556 get
557 }
558 public var payloadData: Foundation::Data {
559 get
560 }
561 public var signatureData: Foundation::Data {
562 get
563 }
564 public var signature: CryptoKit::P256.CryptoKit::Signing.CryptoKit::ECDSASignature {
565 get
566 }
567 public var signedData: Foundation::Data {
568 get
569 }
570 public var signedDate: Foundation::Date {
571 get
572 }
573 public var deviceVerification: Foundation::Data {
574 get
575 }
576 public var deviceVerificationNonce: Foundation::UUID {
577 get
578 }
579}
580@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
581extension Swift::BinaryInteger {
582 @usableFromInline
583 internal init?(_ value: StoreKit::BackingValue)
584}
585@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
586extension Swift::BinaryFloatingPoint {
587 @usableFromInline
588 internal init?(_ value: StoreKit::BackingValue)
589}
590@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
591extension Foundation::Date {
592 @usableFromInline
593 internal init?(_ value: StoreKit::BackingValue)
594}
595@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
596extension Foundation::Data {
597 @usableFromInline
598 internal init?(_ value: StoreKit::BackingValue)
599}
600@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
601extension Swift::String {
602 @usableFromInline
603 internal init?(_ value: StoreKit::BackingValue)
604}
605@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
606extension Foundation::Decimal {
607 @usableFromInline
608 internal init?(_ value: StoreKit::BackingValue)
609}
610@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
611extension Swift::Bool {
612 @usableFromInline
613 internal init?(_ value: StoreKit::BackingValue)
614}
615@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
616extension Foundation::UUID {
617 @usableFromInline
618 internal init?(_ value: StoreKit::BackingValue)
619}
620@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
621extension Swift::Array where Element == StoreKit::BackingValue {
622 @usableFromInline
623 internal init?(_ value: StoreKit::BackingValue)
624}
625@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
626extension Swift::Dictionary where Key == Swift::String, Value == StoreKit::BackingValue {
627 @usableFromInline
628 internal init?(_ value: StoreKit::BackingValue)
629}
630@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
631extension StoreKit::AppStore.StoreKit::Environment {
632 @usableFromInline
633 internal init?(_ value: StoreKit::BackingValue)
634}
635@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
636extension StoreKit::Transaction.StoreKit::Reason {
637 @usableFromInline
638 internal init?(_ value: StoreKit::BackingValue)
639}
640@available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
641extension StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode {
642 @usableFromInline
643 internal init?(_ value: StoreKit::BackingValue)
644}
645@available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
646extension Foundation::Locale.Foundation::Currency {
647 @usableFromInline
648 internal init?(_ value: StoreKit::BackingValue)
649}
650@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
651extension StoreKit::Product.StoreKit::SubscriptionPeriod {
652 @usableFromInline
653 internal init?(_ value: StoreKit::BackingValue)
654}
655extension StoreKit::BackingValue {
656 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
657 @usableFromInline
658 internal init?(_ value: StoreKit::BackingValue)
659}
660@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
661extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo {
662 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
663 public struct AdvancedCommerceInfo : Swift::Equatable, Swift::Hashable, Swift::Sendable {
664 public struct Item : Swift::Equatable, Swift::Hashable, Swift::Sendable {
665 public typealias Details = StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::Details
666 public let details: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::Details
667 @available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
668 public let priceIncreaseInfo: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo?
669 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item) -> Swift::Bool
670 public func hash(into hasher: inout Swift::Hasher)
671 public var hashValue: Swift::Int {
672 get
673 }
674 }
675 public let consistencyToken: Swift::String
676 public let requestReferenceID: Swift::String
677 public let taxCode: Swift::String
678 public let description: Swift::String
679 public let displayName: Swift::String
680 public let period: StoreKit::SubscriptionPeriod
681 public let items: [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item]
682 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo) -> Swift::Bool
683 public func hash(into hasher: inout Swift::Hasher)
684 public var hashValue: Swift::Int {
685 get
686 }
687 }
688}
689@available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
690extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item {
691 public struct PriceIncreaseInfo : Swift::Equatable, Swift::Hashable, Swift::Sendable {
692 public struct Status : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
693 public let rawValue: Swift::String
694 public init(rawValue: Swift::String)
695 public static let pending: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo.StoreKit::Status
696 public static let accepted: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo.StoreKit::Status
697 public static let scheduled: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo.StoreKit::Status
698 @available(macOS 26.2, iOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
699 public typealias RawValue = Swift::String
700 }
701 public let status: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo.StoreKit::Status
702 public let price: Foundation::Decimal
703 public let dependentSKUs: [Swift::String]
704 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::PriceIncreaseInfo) -> Swift::Bool
705 public func hash(into hasher: inout Swift::Hasher)
706 public var hashValue: Swift::Int {
707 get
708 }
709 }
… 2 unchanged lines …
688@available(macOS, unavailable)
689@available(watchOS, unavailable)
690@available(visionOS, unavailable)
691public enum ExternalLinkAccount : Swift.Sendable {
692 public static var canOpen: Swift.Bool {
693 get async
694 }
695 public static func open() async throws
696}
697@available(iOS 26.0, macOS 26.0, tvOS 26.0, visionOS 26.0, *)
698@available(watchOS, unavailable)
699public protocol StoreDownloaderExtension : BackgroundAssets.ManagedDownloaderExtension {
700}
701extension StoreKit.Product {
702 @available(iOS 16.4, *)
703 @available(visionOS, unavailable)
704 @available(macOS, unavailable)
705 @available(tvOS, unavailable)
706 @available(watchOS, unavailable)
707 public struct PromotionInfo : Swift.Equatable {
708 public enum Visibility : Swift.Int, Swift.Equatable, Swift.Hashable {
709 case appStoreConnectDefault
710 case visible
711 case hidden
712 public init?(rawValue: Swift.Int)
713 @available(iOS 16.4, *)
714 @available(tvOS, unavailable, introduced: 15.0)
715 @available(watchOS, unavailable, introduced: 8.0)
716 @available(visionOS, unavailable)
717 @available(macOS, unavailable, introduced: 12.0)
718 public typealias RawValue = Swift.Int
719 public var rawValue: Swift.Int {
720 get
721 }
722 }
723 public let productID: StoreKit.Product.ID
724 public var visibility: StoreKit.Product.PromotionInfo.Visibility
725 public func update() async throws
726 public static var currentOrder: [StoreKit.Product.PromotionInfo] {
727 get async throws
728 }
729 public static func updateProductOrder(byID order: some Collection<Product.ID>) async throws
730 public static func updateProductVisibility(_ visibility: StoreKit.Product.PromotionInfo.Visibility, for productID: StoreKit.Product.ID) async throws
731 public static func updateAll(_ promotions: some Collection<PromotionInfo>) async throws
732 public static func == (a: StoreKit.Product.PromotionInfo, b: StoreKit.Product.PromotionInfo) -> Swift.Bool
733 }
734}
735@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
736public typealias SubscriptionInfo = StoreKit.Product.SubscriptionInfo
737@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
738extension StoreKit.Product {
739 public struct SubscriptionInfo : Swift.Equatable, Swift.Hashable {
740 public let introductoryOffer: StoreKit.Product.SubscriptionOffer?
741 public let promotionalOffers: [StoreKit.Product.SubscriptionOffer]
742 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
743 public let winBackOffers: [StoreKit.Product.SubscriptionOffer]
744 public let subscriptionGroupID: Swift.String
745 public let subscriptionPeriod: StoreKit.Product.SubscriptionPeriod
746 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
747 public let pricingTerms: [StoreKit.Product.SubscriptionInfo.PricingTerms]
748 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
749 @usableFromInline
750 internal let backing: StoreKit.BackingValue
751 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
752 @usableFromInline
753 internal let groupLevelStorage: Swift.Int
754 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
755 @usableFromInline
756 internal let groupDisplayNameStorage: Swift.String
757 @inlinable public var isEligibleForIntroOffer: Swift.Bool {
758 get async {
759 await Self.isEligibleForIntroOffer(for: subscriptionGroupID)
760 }
761 }
762 public static func isEligibleForIntroOffer(for groupID: Swift.String) async -> Swift.Bool
763 public static func == (a: StoreKit.Product.SubscriptionInfo, b: StoreKit.Product.SubscriptionInfo) -> Swift.Bool
764 public func hash(into hasher: inout Swift.Hasher)
765 public var hashValue: Swift.Int {
766 get
767 }
768 }
769}
770@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
771extension StoreKit.Product.SubscriptionInfo : Swift.Sendable {
772}
773@available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, *)
774extension StoreKit.Product.SubscriptionInfo {
775 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
776 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
777 public var groupLevel: Swift.Int {
778 get {
779 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
780 return groupLevelStorage
712@available(macOS, unavailable)
713@available(watchOS, unavailable)
714@available(visionOS, unavailable)
715public enum ExternalLinkAccount : Swift::Sendable {
716 public static var canOpen: Swift::Bool {
717 get async
718 }
719 public static func open() async throws
720}
721@available(iOS 26.0, macOS 26.0, tvOS 26.0, visionOS 26.0, *)
722@available(watchOS, unavailable)
723public protocol StoreDownloaderExtension : BackgroundAssets::ManagedDownloaderExtension {
724}
725extension StoreKit::Product {
726 @available(iOS 16.4, *)
727 @available(visionOS, unavailable)
728 @available(macOS, unavailable)
729 @available(tvOS, unavailable)
730 @available(watchOS, unavailable)
731 public struct PromotionInfo : Swift::Equatable {
732 public enum Visibility : Swift::Int, Swift::Equatable, Swift::Hashable {
733 case appStoreConnectDefault
734 case visible
735 case hidden
736 public init?(rawValue: Swift::Int)
737 @available(iOS 16.4, *)
738 @available(macOS, unavailable, introduced: 12.0)
739 @available(tvOS, unavailable, introduced: 15.0)
740 @available(watchOS, unavailable, introduced: 8.0)
741 @available(visionOS, unavailable)
742 public typealias RawValue = Swift::Int
743 public var rawValue: Swift::Int {
744 get
745 }
746 }
747 public let productID: StoreKit::Product.StoreKit::ID
748 public var visibility: StoreKit::Product.StoreKit::PromotionInfo.StoreKit::Visibility
749 public func update() async throws
750 public static var currentOrder: [StoreKit::Product.StoreKit::PromotionInfo] {
751 get async throws
752 }
753 public static func updateProductOrder(byID order: some Collection<Product.ID>) async throws
754 public static func updateProductVisibility(_ visibility: StoreKit::Product.StoreKit::PromotionInfo.StoreKit::Visibility, for productID: StoreKit::Product.StoreKit::ID) async throws
755 public static func updateAll(_ promotions: some Collection<PromotionInfo>) async throws
756 public static func == (a: StoreKit::Product.StoreKit::PromotionInfo, b: StoreKit::Product.StoreKit::PromotionInfo) -> Swift::Bool
757 }
758}
759@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
760public typealias SubscriptionInfo = StoreKit::Product.StoreKit::SubscriptionInfo
761@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
762extension StoreKit::Product {
763 public struct SubscriptionInfo : Swift::Equatable, Swift::Hashable {
764 public let introductoryOffer: StoreKit::Product.StoreKit::SubscriptionOffer?
765 public let promotionalOffers: [StoreKit::Product.StoreKit::SubscriptionOffer]
766 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
767 public let winBackOffers: [StoreKit::Product.StoreKit::SubscriptionOffer]
768 public let subscriptionGroupID: Swift::String
769 public let subscriptionPeriod: StoreKit::Product.StoreKit::SubscriptionPeriod
770 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
771 public let pricingTerms: [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::PricingTerms]
772 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
773 @usableFromInline
774 internal let backing: StoreKit::BackingValue
775 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
776 @usableFromInline
777 internal let groupLevelStorage: Swift::Int
778 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
779 @usableFromInline
780 internal let groupDisplayNameStorage: Swift::String
781 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
782 public let bundledSubscriptions: [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BundledSubscription]
783 @inlinable public var isEligibleForIntroOffer: Swift::Bool {
784 get async {
785 await Self.isEligibleForIntroOffer(for: subscriptionGroupID)
786 }
787 }
788 public static func isEligibleForIntroOffer(for groupID: Swift::String) async -> Swift::Bool
789 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo, b: StoreKit::Product.StoreKit::SubscriptionInfo) -> Swift::Bool
790 public func hash(into hasher: inout Swift::Hasher)
791 public var hashValue: Swift::Int {
792 get
793 }
794 }
795}
796@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
797extension StoreKit::Product.StoreKit::SubscriptionInfo : Swift::Sendable {
798}
799@available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, *)
800extension StoreKit::Product.StoreKit::SubscriptionInfo {
801 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
802 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
803 public var groupLevel: Swift::Int {
804 get {
805 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
806 return groupLevelStorage
… 9 unchanged lines …
790 }
791 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
792 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
793 public var groupDisplayName: Swift.String {
794 get {
795 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
796 return groupDisplayNameStorage
816 }
817 @available(iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4, visionOS 1.0, *)
818 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
819 public var groupDisplayName: Swift::String {
820 get {
821 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
822 return groupDisplayNameStorage
… 9 unchanged lines …
806 }
807}
808@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
809extension StoreKit.Product.SubscriptionInfo {
810 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
811 public typealias BillingPeriod = StoreKit.SubscriptionPeriod
812 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
813 public struct BillingPlanType : Swift.Equatable, Swift.Hashable, Swift.RawRepresentable, Swift.Sendable {
814 public let rawValue: Swift.String
815 public init(rawValue: Swift.String)
816 public static let monthly: StoreKit.Product.SubscriptionInfo.BillingPlanType
817 public static let upFront: StoreKit.Product.SubscriptionInfo.BillingPlanType
818 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, macOS 26.4, *)
819 public typealias RawValue = Swift.String
820 }
821 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
822 public struct CommitmentInfo : Swift.Hashable, Swift.Sendable {
823 public let price: Foundation.Decimal
824 public let displayPrice: Swift.String
825 public let period: StoreKit.SubscriptionPeriod
826 public static func == (a: StoreKit.Product.SubscriptionInfo.CommitmentInfo, b: StoreKit.Product.SubscriptionInfo.CommitmentInfo) -> Swift.Bool
827 public func hash(into hasher: inout Swift.Hasher)
828 public var hashValue: Swift.Int {
829 get
830 }
831 }
832 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
833 public struct PricingTerms : Swift.Hashable, Swift.Sendable {
834 public let billingPrice: Foundation.Decimal
835 public let billingDisplayPrice: Swift.String
836 public let billingPeriod: StoreKit.Product.SubscriptionInfo.BillingPeriod
837 public let billingPlanType: StoreKit.Product.SubscriptionInfo.BillingPlanType
838 public let commitmentInfo: StoreKit.Product.SubscriptionInfo.CommitmentInfo
839 public let subscriptionOffers: [StoreKit.Product.SubscriptionOffer]
840 public subscript(offers type: StoreKit.Product.SubscriptionOffer.OfferType) -> [StoreKit.Product.SubscriptionOffer] {
841 get
842 }
843 public static func == (a: StoreKit.Product.SubscriptionInfo.PricingTerms, b: StoreKit.Product.SubscriptionInfo.PricingTerms) -> Swift.Bool
844 public func hash(into hasher: inout Swift.Hasher)
845 public var hashValue: Swift.Int {
846 get
847 }
848 }
849}
850extension StoreKit.Transaction {
851 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
852 public struct AdvancedCommerceInfo : Swift.Equatable, Swift.Hashable, Swift.Sendable {
853 public struct Item : Swift.Equatable, Swift.Hashable, Swift.Sendable {
854 public struct Details : Swift.Equatable, Swift.Hashable, Swift.Sendable {
855 public let sku: Swift.String
856 public let displayName: Swift.String
857 public let description: Swift.String
858 public let offer: StoreKit.Transaction.AdvancedCommerceInfo.Offer?
859 public let price: Foundation.Decimal
860 public static func == (a: StoreKit.Transaction.AdvancedCommerceInfo.Item.Details, b: StoreKit.Transaction.AdvancedCommerceInfo.Item.Details) -> Swift.Bool
861 public func hash(into hasher: inout Swift.Hasher)
862 public var hashValue: Swift.Int {
863 get
864 }
865 }
866 public let details: StoreKit.Transaction.AdvancedCommerceInfo.Item.Details
867 public let refunds: [StoreKit.Transaction.AdvancedCommerceInfo.Refund]?
868 public let revocationDate: Foundation.Date?
869 public static func == (a: StoreKit.Transaction.AdvancedCommerceInfo.Item, b: StoreKit.Transaction.AdvancedCommerceInfo.Item) -> Swift.Bool
870 public func hash(into hasher: inout Swift.Hasher)
871 public var hashValue: Swift.Int {
872 get
873 }
874 }
875 public struct Offer : Swift.Equatable, Swift.Hashable, Swift.Sendable {
876 public struct Reason : Swift.Equatable, Swift.Hashable, Swift.RawRepresentable, Swift.Sendable {
877 public let rawValue: Swift.String
878 public init(rawValue: Swift.String)
879 public static let acquisition: StoreKit.Transaction.AdvancedCommerceInfo.Offer.Reason
880 public static let retention: StoreKit.Transaction.AdvancedCommerceInfo.Offer.Reason
881 public static let winBack: StoreKit.Transaction.AdvancedCommerceInfo.Offer.Reason
882 @available(iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, macOS 15.4, *)
883 public typealias RawValue = Swift.String
884 }
885 public let price: Foundation.Decimal
886 public let period: StoreKit.SubscriptionPeriod
887 public let periodCount: Swift.Int
888 public let reason: StoreKit.Transaction.AdvancedCommerceInfo.Offer.Reason
889 public static func == (a: StoreKit.Transaction.AdvancedCommerceInfo.Offer, b: StoreKit.Transaction.AdvancedCommerceInfo.Offer) -> Swift.Bool
890 public func hash(into hasher: inout Swift.Hasher)
891 public var hashValue: Swift.Int {
892 get
893 }
894 }
895 public struct Refund : Swift.Equatable, Swift.Hashable, Swift.Sendable {
896 public struct Reason : Swift.Equatable, Swift.Hashable, Swift.RawRepresentable, Swift.Sendable {
897 public let rawValue: Swift.String
898 public init(rawValue: Swift.String)
899 public static let legal: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
900 public static let modifyItems: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
901 public static let unintended: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
902 public static let unfulfilled: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
903 public static let unsatisfied: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
904 public static let other: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
905 @available(iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, macOS 15.4, *)
906 public typealias RawValue = Swift.String
907 }
908 public struct RefundType : Swift.Equatable, Swift.Hashable, Swift.RawRepresentable, Swift.Sendable {
909 public let rawValue: Swift.String
910 public init(rawValue: Swift.String)
911 public static let custom: StoreKit.Transaction.AdvancedCommerceInfo.Refund.RefundType
912 public static let proRated: StoreKit.Transaction.AdvancedCommerceInfo.Refund.RefundType
913 public static let full: StoreKit.Transaction.AdvancedCommerceInfo.Refund.RefundType
914 @available(iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, macOS 15.4, *)
915 public typealias RawValue = Swift.String
916 }
917 public let reason: StoreKit.Transaction.AdvancedCommerceInfo.Refund.Reason
918 public let type: StoreKit.Transaction.AdvancedCommerceInfo.Refund.RefundType
919 public let date: Foundation.Date
920 public let amount: Foundation.Decimal
921 public static func == (a: StoreKit.Transaction.AdvancedCommerceInfo.Refund, b: StoreKit.Transaction.AdvancedCommerceInfo.Refund) -> Swift.Bool
922 public func hash(into hasher: inout Swift.Hasher)
923 public var hashValue: Swift.Int {
924 get
925 }
926 }
927 public let requestReferenceID: Swift.String
928 public let estimatedTax: Foundation.Decimal
929 public let taxRate: Foundation.Decimal
930 public let taxCode: Swift.String
931 public let taxExclusivePrice: Foundation.Decimal
932 public let description: Swift.String?
933 public let displayName: Swift.String?
934 public let period: StoreKit.SubscriptionPeriod?
935 public let items: [StoreKit.Transaction.AdvancedCommerceInfo.Item]
936 public static func == (a: StoreKit.Transaction.AdvancedCommerceInfo, b: StoreKit.Transaction.AdvancedCommerceInfo) -> Swift.Bool
937 public func hash(into hasher: inout Swift.Hasher)
938 public var hashValue: Swift.Int {
939 get
940 }
941 }
942}
943@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
944public struct AppTransaction : Swift.Sendable {
945 @usableFromInline
946 internal let backing: StoreKit.BackingValue
947 public var jsonRepresentation: Foundation.Data {
948 get
949 }
950 public let appID: Swift.UInt64?
951 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
952 @usableFromInline
953 internal let appTransactionIDStorage: Swift.String
954 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
955 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
956 public var appTransactionID: Swift.String {
957 get {
958 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
959 return appTransactionIDStorage
832 }
833}
834@available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
835extension StoreKit::Product.StoreKit::SubscriptionInfo {
836 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
837 public typealias BillingPeriod = StoreKit::SubscriptionPeriod
838 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
839 public struct BillingPlanType : Swift::Equatable, Swift::Hashable, Swift::RawRepresentable, Swift::Sendable {
840 public let rawValue: Swift::String
841 public init(rawValue: Swift::String)
842 public static let monthly: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BillingPlanType
843 public static let upFront: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BillingPlanType
844 @available(macOS 26.4, iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
845 public typealias RawValue = Swift::String
846 }
847 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
848 public struct CommitmentInfo : Swift::Hashable, Swift::Sendable {
849 public let price: Foundation::Decimal
850 public let displayPrice: Swift::String
851 public let period: StoreKit::SubscriptionPeriod
852 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::CommitmentInfo, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::CommitmentInfo) -> Swift::Bool
853 public func hash(into hasher: inout Swift::Hasher)
854 public var hashValue: Swift::Int {
855 get
856 }
857 }
858 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
859 public struct PricingTerms : Swift::Hashable, Swift::Sendable {
860 public let billingPrice: Foundation::Decimal
861 public let billingDisplayPrice: Swift::String
862 public let billingPeriod: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BillingPeriod
863 public let billingPlanType: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BillingPlanType
864 public let commitmentInfo: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::CommitmentInfo
865 public let subscriptionOffers: [StoreKit::Product.StoreKit::SubscriptionOffer]
866 public subscript(offers type: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType) -> [StoreKit::Product.StoreKit::SubscriptionOffer] {
867 get
868 }
869 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::PricingTerms, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::PricingTerms) -> Swift::Bool
870 public func hash(into hasher: inout Swift::Hasher)
871 public var hashValue: Swift::Int {
872 get
873 }
874 }
875}
876extension StoreKit::Transaction {
877 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
878 public struct AdvancedCommerceInfo : Swift::Equatable, Swift::Hashable, Swift::Sendable {
879 public struct Item : Swift::Equatable, Swift::Hashable, Swift::Sendable {
880 public struct Details : Swift::Equatable, Swift::Hashable, Swift::Sendable {
881 public let sku: Swift::String
882 public let displayName: Swift::String
883 public let description: Swift::String
884 public let offer: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer?
885 public let price: Foundation::Decimal
886 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
887 public let partners: [StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Partner]
888 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::Details, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::Details) -> Swift::Bool
889 public func hash(into hasher: inout Swift::Hasher)
890 public var hashValue: Swift::Int {
891 get
892 }
893 }
894 public let details: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item.StoreKit::Details
895 public let refunds: [StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund]?
896 public let revocationDate: Foundation::Date?
897 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item) -> Swift::Bool
898 public func hash(into hasher: inout Swift::Hasher)
899 public var hashValue: Swift::Int {
900 get
901 }
902 }
903 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
904 public struct Partner : Swift::Equatable, Swift::Hashable, Swift::Sendable {
905 public let id: Swift::String
906 public let name: Swift::String?
907 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Partner, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Partner) -> Swift::Bool
908 public func hash(into hasher: inout Swift::Hasher)
909 public var hashValue: Swift::Int {
910 get
911 }
912 }
913 public struct Offer : Swift::Equatable, Swift::Hashable, Swift::Sendable {
914 public struct Reason : Swift::Equatable, Swift::Hashable, Swift::RawRepresentable, Swift::Sendable {
915 public let rawValue: Swift::String
916 public init(rawValue: Swift::String)
917 public static let acquisition: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer.StoreKit::Reason
918 public static let retention: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer.StoreKit::Reason
919 public static let winBack: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer.StoreKit::Reason
920 @available(macOS 15.4, iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
921 public typealias RawValue = Swift::String
922 }
923 public let price: Foundation::Decimal
924 public let period: StoreKit::SubscriptionPeriod
925 public let periodCount: Swift::Int
926 public let reason: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer.StoreKit::Reason
927 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Offer) -> Swift::Bool
928 public func hash(into hasher: inout Swift::Hasher)
929 public var hashValue: Swift::Int {
930 get
931 }
932 }
933 public struct Refund : Swift::Equatable, Swift::Hashable, Swift::Sendable {
934 public struct Reason : Swift::Equatable, Swift::Hashable, Swift::RawRepresentable, Swift::Sendable {
935 public let rawValue: Swift::String
936 public init(rawValue: Swift::String)
937 public static let legal: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
938 public static let modifyItems: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
939 public static let unintended: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
940 public static let unfulfilled: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
941 public static let unsatisfied: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
942 public static let other: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
943 @available(macOS 15.4, iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
944 public typealias RawValue = Swift::String
945 }
946 public struct RefundType : Swift::Equatable, Swift::Hashable, Swift::RawRepresentable, Swift::Sendable {
947 public let rawValue: Swift::String
948 public init(rawValue: Swift::String)
949 public static let custom: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::RefundType
950 public static let proRated: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::RefundType
951 public static let full: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::RefundType
952 @available(macOS 15.4, iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
953 public typealias RawValue = Swift::String
954 }
955 public let reason: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::Reason
956 public let type: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund.StoreKit::RefundType
957 public let date: Foundation::Date
958 public let amount: Foundation::Decimal
959 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Refund) -> Swift::Bool
960 public func hash(into hasher: inout Swift::Hasher)
961 public var hashValue: Swift::Int {
962 get
963 }
964 }
965 public let requestReferenceID: Swift::String
966 public let estimatedTax: Foundation::Decimal
967 public let taxRate: Foundation::Decimal
968 public let taxCode: Swift::String
969 public let taxExclusivePrice: Foundation::Decimal
970 public let description: Swift::String?
971 public let displayName: Swift::String?
972 public let period: StoreKit::SubscriptionPeriod?
973 public let items: [StoreKit::Transaction.StoreKit::AdvancedCommerceInfo.StoreKit::Item]
974 public static func == (a: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo, b: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo) -> Swift::Bool
975 public func hash(into hasher: inout Swift::Hasher)
976 public var hashValue: Swift::Int {
977 get
978 }
979 }
980}
981@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
982public struct AppTransaction : Swift::Sendable {
983 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
984 public struct StoreType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
985 public let rawValue: Swift::String
986 public init(rawValue: Swift::String)
987 public static let consumer: StoreKit::AppTransaction.StoreKit::StoreType
988 public static let education: StoreKit::AppTransaction.StoreKit::StoreType
989 public static let enterprise: StoreKit::AppTransaction.StoreKit::StoreType
990 @available(macOS 27.0, iOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
991 public typealias RawValue = Swift::String
992 }
993 @usableFromInline
994 internal let backing: StoreKit::BackingValue
995 public var jsonRepresentation: Foundation::Data {
996 get
997 }
998 public let appID: Swift::UInt64?
999 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1000 @usableFromInline
1001 internal let appTransactionIDStorage: Swift::String
1002 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1003 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1004 public var appTransactionID: Swift::String {
1005 get {
1006 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
1007 return appTransactionIDStorage
… 7 unchanged lines …
967 }
968 }
969 }
970 public let appVersion: Swift.String
971 public let appVersionID: Swift.UInt64?
972 public let bundleID: Swift.String
973 public let environment: StoreKit.AppStore.Environment
974 public let originalAppVersion: Swift.String
975 public let originalPurchaseDate: Foundation.Date
976 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
977 public let originalPlatform: StoreKit.AppStore.Platform
978 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
979 @available(iOS, introduced: 16.0, deprecated: 18.4, message: "Use the originalPlatform property instead.")
980 @available(macOS, introduced: 13.0, deprecated: 15.4, message: "Use the originalPlatform property instead.")
981 @available(tvOS, introduced: 16.0, deprecated: 18.4, message: "Use the originalPlatform property instead.")
982 @available(watchOS, introduced: 9.0, deprecated: 11.4, message: "Use the originalPlatform property instead.")
983 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the originalPlatform property instead.")
984 public var originalPlatformStringRepresentation: Swift.String {
985 get {
986 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
987 return originalPlatform.rawValue
1015 }
1016 }
1017 }
1018 public let appVersion: Swift::String
1019 public let appVersionID: Swift::UInt64?
1020 public let bundleID: Swift::String
1021 public let environment: StoreKit::AppStore.StoreKit::Environment
1022 public let originalAppVersion: Swift::String
1023 public let originalPurchaseDate: Foundation::Date
1024 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1025 public let originalPlatform: StoreKit::AppStore.StoreKit::Platform
1026 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1027 @available(iOS, introduced: 16.0, deprecated: 18.4, message: "Use the originalPlatform property instead.")
1028 @available(macOS, introduced: 13.0, deprecated: 15.4, message: "Use the originalPlatform property instead.")
1029 @available(tvOS, introduced: 16.0, deprecated: 18.4, message: "Use the originalPlatform property instead.")
1030 @available(watchOS, introduced: 9.0, deprecated: 11.4, message: "Use the originalPlatform property instead.")
1031 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the originalPlatform property instead.")
1032 public var originalPlatformStringRepresentation: Swift::String {
1033 get {
1034 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
1035 return originalPlatform.rawValue
… 7 unchanged lines …
995 }
996 }
997 }
998 public let preorderDate: Foundation.Date?
999 public let deviceVerification: Foundation.Data
1000 public let deviceVerificationNonce: Foundation.UUID
1001 public let signedDate: Foundation.Date
1002 public static var shared: StoreKit.VerificationResult<StoreKit.AppTransaction> {
1003 get async throws
1004 }
1005 public static func refresh() async throws -> StoreKit.VerificationResult<StoreKit.AppTransaction>
1006}
1007@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1008extension StoreKit.AppTransaction : Swift.Equatable {
1009 public static func == (lhs: StoreKit.AppTransaction, rhs: StoreKit.AppTransaction) -> Swift.Bool
1010}
1011@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1012extension StoreKit.AppTransaction : Swift.Hashable {
1013 public func hash(into hasher: inout Swift.Hasher)
1014 public var hashValue: Swift.Int {
1015 get
1016 }
1017}
1018@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1019extension StoreKit.AppTransaction : Swift.CustomDebugStringConvertible {
1020 @inlinable public var debugDescription: Swift.String {
1021 get {
1022 backing.debugDescription
1023 }
1024 }
1025}
1026@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1027@frozen public enum VerificationResult<SignedType> {
1028 case unverified(SignedType, StoreKit.VerificationResult<SignedType>.VerificationError)
1029 case verified(SignedType)
1030 public var payloadValue: SignedType {
1031 get throws
1043 }
1044 }
1045 }
1046 public let preorderDate: Foundation::Date?
1047 public let deviceVerification: Foundation::Data
1048 public let deviceVerificationNonce: Foundation::UUID
1049 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1050 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1051 public var revocationDate: Foundation::Date? {
1052 get {
1053 guard let revocationMS = Int64(backing["appRevocationDate"]) else {
1054 return nil
1055 }
1056 return Date(unixEpochMS: revocationMS)
1057 }
1058 }
1059 public let signedDate: Foundation::Date
1060 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1061 public let storeType: StoreKit::AppTransaction.StoreKit::StoreType
1062 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1063 @available(iOS, introduced: 16.0, deprecated: 27.0, message: "Use the storeType property instead.")
1064 @available(macOS, introduced: 13.0, deprecated: 27.0, message: "Use the storeType property instead.")
1065 @available(tvOS, introduced: 16.0, deprecated: 27.0, message: "Use the storeType property instead.")
1066 @available(watchOS, introduced: 9.0, deprecated: 27.0, message: "Use the storeType property instead.")
1067 @available(visionOS, introduced: 1.0, deprecated: 27.0, message: "Use the storeType property instead.")
1068 public var storeTypeStringRepresentation: Swift::String {
1069 get {
1070 if #available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *) {
1071 return storeType.rawValue
1072 }
1073 else {
1074 return backing.value(
1075 atKeyPath: "storeType",
1076 sentinel: "CONSUMER",
1077 transform: String.init
1078 )
1079 }
1080 }
1081 }
1082 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1083 public static var all: StoreKit::AppTransaction.StoreKit::AppTransactions {
1084 get
1085 }
1086 public static var shared: StoreKit::VerificationResult<StoreKit::AppTransaction> {
1087 get async throws
1088 }
1089 public static func refresh() async throws -> StoreKit::VerificationResult<StoreKit::AppTransaction>
1090}
1091extension StoreKit::AppTransaction {
1092 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1093 public struct AppTransactions : _Concurrency::AsyncSequence, Swift::Sendable {
1094 public typealias Element = StoreKit::VerificationResult<StoreKit::AppTransaction>
1095 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
1096 public mutating func next() async -> StoreKit::VerificationResult<StoreKit::AppTransaction>?
1097 @available(macOS 27.0, iOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1098 public typealias Element = StoreKit::VerificationResult<StoreKit::AppTransaction>
1099 @available(macOS 27.0, iOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1100 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
1101 }
1102 public func makeAsyncIterator() -> StoreKit::AppTransaction.StoreKit::AppTransactions.StoreKit::AsyncIterator
1103 @available(macOS 27.0, iOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1104 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
1105 }
1106}
1107@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1108extension StoreKit::AppTransaction : Swift::Equatable {
1109 public static func == (lhs: StoreKit::AppTransaction, rhs: StoreKit::AppTransaction) -> Swift::Bool
1110}
1111@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1112extension StoreKit::AppTransaction : Swift::Hashable {
1113 public func hash(into hasher: inout Swift::Hasher)
1114 public var hashValue: Swift::Int {
1115 get
1116 }
1117}
1118@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1119extension StoreKit::AppTransaction : Swift::CustomDebugStringConvertible {
1120 @inlinable public var debugDescription: Swift::String {
1121 get {
1122 backing.debugDescription
1123 }
1124 }
1125}
1126@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1127@frozen public enum VerificationResult<SignedType> {
1128 case unverified(SignedType, StoreKit::VerificationResult<SignedType>.StoreKit::VerificationError)
1129 case verified(SignedType)
1130 public var payloadValue: SignedType {
1131 get throws
… 3 unchanged lines …
1035 }
1036}
1037@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1038extension StoreKit.VerificationResult {
1039 public enum VerificationError : Swift.Error {
1040 case revokedCertificate
1041 case invalidCertificateChain
1042 case invalidDeviceVerification
1043 case invalidEncoding
1044 case invalidSignature
1045 case missingRequiredProperties
1046 public static func == (a: StoreKit.VerificationResult<SignedType>.VerificationError, b: StoreKit.VerificationResult<SignedType>.VerificationError) -> Swift.Bool
1047 public func hash(into hasher: inout Swift.Hasher)
1048 public var hashValue: Swift.Int {
1049 get
1050 }
1051 }
1052}
1053@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1054extension StoreKit.VerificationResult : Swift.Equatable where SignedType : Swift.Equatable {
1055 public static func == (a: StoreKit.VerificationResult<SignedType>, b: StoreKit.VerificationResult<SignedType>) -> Swift.Bool
1056}
1057@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1058extension StoreKit.VerificationResult : Swift.Hashable where SignedType : Swift.Hashable {
1059 public func hash(into hasher: inout Swift.Hasher)
1060 public var hashValue: Swift.Int {
1061 get
1062 }
1063}
1064@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1065extension StoreKit.VerificationResult : Swift.CustomDebugStringConvertible where SignedType : Swift.CustomDebugStringConvertible {
1066 public var debugDescription: Swift.String {
1067 get
1068 }
1069}
1070@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1071extension StoreKit.VerificationResult : Swift.Sendable where SignedType : Swift.Sendable {
1072}
1073@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1074public struct Transaction : Swift.Identifiable {
1075 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
1076 public struct Reason : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1077 public let rawValue: Swift.String
1078 public init(rawValue: Swift.String)
1079 public static let purchase: StoreKit.Transaction.Reason
1080 public static let renewal: StoreKit.Transaction.Reason
1081 @available(iOS 17.0, tvOS 17.0, watchOS 10.0, macOS 14.0, *)
1082 public typealias RawValue = Swift.String
1083 }
1084 public struct RevocationReason : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
1085 public let rawValue: Swift.Int
1086 public init(rawValue: Swift.Int)
1087 public static let developerIssue: StoreKit.Transaction.RevocationReason
1088 public static let other: StoreKit.Transaction.RevocationReason
1089 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1090 public typealias RawValue = Swift.Int
1091 }
1092 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1093 public struct RevocationType : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1094 public let rawValue: Swift.String
1095 public init(rawValue: Swift.String)
1096 public static let familyRevocation: StoreKit.Transaction.RevocationType
1097 public static let fullRefund: StoreKit.Transaction.RevocationType
1098 public static let proratedRefund: StoreKit.Transaction.RevocationType
1099 @available(iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, macOS 26.4, *)
1100 public typealias RawValue = Swift.String
1101 }
1102 public struct OfferType : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
1103 public let rawValue: Swift.Int
1104 public init(rawValue: Swift.Int)
1105 public static let introductory: StoreKit.Transaction.OfferType
1106 public static let promotional: StoreKit.Transaction.OfferType
1107 public static let code: StoreKit.Transaction.OfferType
1108 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1109 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
1110 public static var winBack: StoreKit.Transaction.OfferType {
1111 get { .init(rawValue: 4) }
1112 }
1113 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1114 public typealias RawValue = Swift.Int
1115 }
1116 public struct OwnershipType : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
1117 public let rawValue: Swift.String
1118 public init(rawValue: Swift.String)
1119 public static let purchased: StoreKit.Transaction.OwnershipType
1120 public static let familyShared: StoreKit.Transaction.OwnershipType
1121 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1122 public typealias RawValue = Swift.String
1123 }
1124 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1125 public struct Offer : Swift.Equatable, Swift.Hashable, Swift.Sendable {
1126 public struct PaymentMode : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1127 public let rawValue: Swift.String
1128 public init(rawValue: Swift.String)
1129 public static let freeTrial: StoreKit.Transaction.Offer.PaymentMode
1130 public static let payAsYouGo: StoreKit.Transaction.Offer.PaymentMode
1131 public static let payUpFront: StoreKit.Transaction.Offer.PaymentMode
1132 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1133 public static var oneTime: StoreKit.Transaction.Offer.PaymentMode {
1134 get { Self(rawValue: "ONE_TIME") }
1135 }
1136 @available(iOS 17.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, macOS 14.2, *)
1137 public typealias RawValue = Swift.String
1138 }
1139 public let id: Swift.String?
1140 public let type: StoreKit.Transaction.OfferType
1141 public let paymentMode: StoreKit.Transaction.Offer.PaymentMode?
1142 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1143 public let period: StoreKit.Product.SubscriptionPeriod?
1144 public static func == (a: StoreKit.Transaction.Offer, b: StoreKit.Transaction.Offer) -> Swift.Bool
1145 public func hash(into hasher: inout Swift.Hasher)
1146 public var hashValue: Swift.Int {
1147 get
1148 }
1149 }
1150 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1151 public struct CommitmentInfo : Swift.Equatable, Swift.Hashable, Swift.Sendable {
1152 public let billingPeriodNumber: Swift.UInt64
1153 public let totalBillingPeriods: Swift.UInt64
1154 public let expirationDate: Foundation.Date
1155 public let price: Foundation.Decimal
1156 public static func == (a: StoreKit.Transaction.CommitmentInfo, b: StoreKit.Transaction.CommitmentInfo) -> Swift.Bool
1157 public func hash(into hasher: inout Swift.Hasher)
1158 public var hashValue: Swift.Int {
1159 get
1160 }
1161 }
1162 @usableFromInline
1163 internal let backing: StoreKit.BackingValue
1164 public var jsonRepresentation: Foundation.Data {
1165 get
1166 }
1167 public let id: Swift.UInt64
1168 public let originalID: Swift.UInt64
1169 public let webOrderLineItemID: Swift.String?
1170 public let productID: Swift.String
1171 public let subscriptionGroupID: Swift.String?
1172 public let appBundleID: Swift.String
1173 public let purchaseDate: Foundation.Date
1174 public let originalPurchaseDate: Foundation.Date
1175 public let expirationDate: Foundation.Date?
1176 public let purchasedQuantity: Swift.Int
1177 public let isUpgraded: Swift.Bool
1178 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1179 public let offer: StoreKit.Transaction.Offer?
1180 @available(iOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.type", message: "Use the offer property instead.")
1181 @available(macOS, introduced: 12.0, deprecated: 14.2, renamed: "offer.type", message: "Use the offer property instead.")
1182 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.type", message: "Use the offer property instead.")
1183 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.type", message: "Use the offer property instead.")
1184 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.type", message: "Use the offer property instead.")
1185 public var offerType: StoreKit.Transaction.OfferType? {
1186 get
1187 }
1188 @available(iOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.id", message: "Use the offer property instead.")
1189 @available(macOS, introduced: 12.0, deprecated: 14.2, renamed: "offer.id", message: "Use the offer property instead.")
1190 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.id", message: "Use the offer property instead.")
1191 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.id", message: "Use the offer property instead.")
1192 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.id", message: "Use the offer property instead.")
1193 public var offerID: Swift.String? {
1194 get
1195 }
1196 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2)
1135 }
1136}
1137@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1138extension StoreKit::VerificationResult {
1139 public enum VerificationError : Swift::Error {
1140 case revokedCertificate
1141 case invalidCertificateChain
1142 case invalidDeviceVerification
1143 case invalidEncoding
1144 case invalidSignature
1145 case missingRequiredProperties
1146 public static func == (a: StoreKit::VerificationResult<SignedType>.StoreKit::VerificationError, b: StoreKit::VerificationResult<SignedType>.StoreKit::VerificationError) -> Swift::Bool
1147 public func hash(into hasher: inout Swift::Hasher)
1148 public var hashValue: Swift::Int {
1149 get
1150 }
1151 }
1152}
1153@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1154extension StoreKit::VerificationResult : Swift::Equatable where SignedType : Swift::Equatable {
1155 public static func == (a: StoreKit::VerificationResult<SignedType>, b: StoreKit::VerificationResult<SignedType>) -> Swift::Bool
1156}
1157@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1158extension StoreKit::VerificationResult : Swift::Hashable where SignedType : Swift::Hashable {
1159 public func hash(into hasher: inout Swift::Hasher)
1160 public var hashValue: Swift::Int {
1161 get
1162 }
1163}
1164@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1165extension StoreKit::VerificationResult : Swift::CustomDebugStringConvertible where SignedType : Swift::CustomDebugStringConvertible {
1166 public var debugDescription: Swift::String {
1167 get
1168 }
1169}
1170@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1171extension StoreKit::VerificationResult : Swift::Sendable where SignedType : Swift::Sendable {
1172}
1173@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1174public struct Transaction : Swift::Identifiable {
1175 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
1176 public struct Reason : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
1177 public let rawValue: Swift::String
1178 public init(rawValue: Swift::String)
1179 public static let purchase: StoreKit::Transaction.StoreKit::Reason
1180 public static let renewal: StoreKit::Transaction.StoreKit::Reason
1181 @available(macOS 14.0, iOS 17.0, tvOS 17.0, watchOS 10.0, *)
1182 public typealias RawValue = Swift::String
1183 }
1184 public struct RevocationReason : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
1185 public let rawValue: Swift::Int
1186 public init(rawValue: Swift::Int)
1187 public static let developerIssue: StoreKit::Transaction.StoreKit::RevocationReason
1188 public static let other: StoreKit::Transaction.StoreKit::RevocationReason
1189 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1190 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1191 public static var upgradedToBundle: StoreKit::Transaction.StoreKit::RevocationReason {
1192 get { Self(rawValue: 2) }
1193 }
1194 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1195 public typealias RawValue = Swift::Int
1196 }
1197 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1198 public struct RevocationType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
1199 public let rawValue: Swift::String
1200 public init(rawValue: Swift::String)
1201 public static let familyRevocation: StoreKit::Transaction.StoreKit::RevocationType
1202 public static let fullRefund: StoreKit::Transaction.StoreKit::RevocationType
1203 public static let proratedRefund: StoreKit::Transaction.StoreKit::RevocationType
1204 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1205 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1206 public static var assignmentRevocation: StoreKit::Transaction.StoreKit::RevocationType {
1207 get { Self(rawValue: "ASSIGNMENT_REVOKE") }
1208 }
1209 @available(macOS 26.4, iOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1210 public typealias RawValue = Swift::String
1211 }
1212 public struct OfferType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
1213 public let rawValue: Swift::Int
1214 public init(rawValue: Swift::Int)
1215 public static let introductory: StoreKit::Transaction.StoreKit::OfferType
1216 public static let promotional: StoreKit::Transaction.StoreKit::OfferType
1217 public static let code: StoreKit::Transaction.StoreKit::OfferType
1218 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1219 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
1220 public static var winBack: StoreKit::Transaction.StoreKit::OfferType {
1221 get { .init(rawValue: 4) }
1222 }
1223 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1224 public typealias RawValue = Swift::Int
1225 }
1226 public struct OwnershipType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
1227 public let rawValue: Swift::String
1228 public init(rawValue: Swift::String)
1229 public static let purchased: StoreKit::Transaction.StoreKit::OwnershipType
1230 public static let familyShared: StoreKit::Transaction.StoreKit::OwnershipType
1231 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1232 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1233 public static var assigned: StoreKit::Transaction.StoreKit::OwnershipType {
1234 get { Self(rawValue: "ASSIGNED") }
1235 }
1236 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1237 public typealias RawValue = Swift::String
1238 }
1239 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1240 public struct Offer : Swift::Equatable, Swift::Hashable, Swift::Sendable {
1241 public struct PaymentMode : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
1242 public let rawValue: Swift::String
1243 public init(rawValue: Swift::String)
1244 public static let freeTrial: StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode
1245 public static let payAsYouGo: StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode
1246 public static let payUpFront: StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode
1247 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1248 public static var oneTime: StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode {
1249 get { Self(rawValue: "ONE_TIME") }
1250 }
1251 @available(macOS 14.2, iOS 17.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1252 public typealias RawValue = Swift::String
1253 }
1254 public let id: Swift::String?
1255 public let type: StoreKit::Transaction.StoreKit::OfferType
1256 public let paymentMode: StoreKit::Transaction.StoreKit::Offer.StoreKit::PaymentMode?
1257 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1258 public let period: StoreKit::Product.StoreKit::SubscriptionPeriod?
1259 public static func == (a: StoreKit::Transaction.StoreKit::Offer, b: StoreKit::Transaction.StoreKit::Offer) -> Swift::Bool
1260 public func hash(into hasher: inout Swift::Hasher)
1261 public var hashValue: Swift::Int {
1262 get
1263 }
1264 }
1265 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1266 public struct CommitmentInfo : Swift::Equatable, Swift::Hashable, Swift::Sendable {
1267 public let billingPeriodNumber: Swift::UInt64
1268 public let totalBillingPeriods: Swift::UInt64
1269 public let expirationDate: Foundation::Date
1270 public let price: Foundation::Decimal
1271 public static func == (a: StoreKit::Transaction.StoreKit::CommitmentInfo, b: StoreKit::Transaction.StoreKit::CommitmentInfo) -> Swift::Bool
1272 public func hash(into hasher: inout Swift::Hasher)
1273 public var hashValue: Swift::Int {
1274 get
1275 }
1276 }
1277 @usableFromInline
1278 internal let backing: StoreKit::BackingValue
1279 public var jsonRepresentation: Foundation::Data {
1280 get
1281 }
1282 public let id: Swift::UInt64
1283 public let originalID: Swift::UInt64
1284 public let webOrderLineItemID: Swift::String?
1285 public let productID: Swift::String
1286 public let subscriptionGroupID: Swift::String?
1287 public let appBundleID: Swift::String
1288 public let purchaseDate: Foundation::Date
1289 public let originalPurchaseDate: Foundation::Date
1290 public let expirationDate: Foundation::Date?
1291 public let purchasedQuantity: Swift::Int
1292 public let isUpgraded: Swift::Bool
1293 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1294 public let offer: StoreKit::Transaction.StoreKit::Offer?
1295 @available(iOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.type", message: "Use the offer property instead.")
1296 @available(macOS, introduced: 12.0, deprecated: 14.2, renamed: "offer.type", message: "Use the offer property instead.")
1297 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.type", message: "Use the offer property instead.")
1298 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.type", message: "Use the offer property instead.")
1299 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.type", message: "Use the offer property instead.")
1300 public var offerType: StoreKit::Transaction.StoreKit::OfferType? {
1301 get
1302 }
1303 @available(iOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.id", message: "Use the offer property instead.")
1304 @available(macOS, introduced: 12.0, deprecated: 14.2, renamed: "offer.id", message: "Use the offer property instead.")
1305 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.id", message: "Use the offer property instead.")
1306 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.id", message: "Use the offer property instead.")
1307 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.id", message: "Use the offer property instead.")
1308 public var offerID: Swift::String? {
1309 get
1310 }
1311 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2)
… 2 unchanged lines …
1199 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1200 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1201 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1202 public var offerPaymentModeStringRepresentation: Swift.String? {
1203 get {
1204 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, *) {
1205 return offer?.paymentMode?.rawValue
1314 @available(tvOS, introduced: 15.0, deprecated: 17.2, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1315 @available(watchOS, introduced: 8.0, deprecated: 10.2, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1316 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
1317 public var offerPaymentModeStringRepresentation: Swift::String? {
1318 get {
1319 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, *) {
1320 return offer?.paymentMode?.rawValue
… 13 unchanged lines …
1219 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the offer property instead.")
1220 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the offer property instead.")
1221 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the offer property instead.")
1222 public var offerPeriodStringRepresentation: Swift.String? {
1223 get {
1224
1225
1334 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the offer property instead.")
1335 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the offer property instead.")
1336 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the offer property instead.")
1337 public var offerPeriodStringRepresentation: Swift::String? {
1338 get {
1339
1340
… 4 unchanged lines …
1230 )
1231 }
1232 }
1233 public let revocationDate: Foundation.Date?
1234 public let revocationReason: StoreKit.Transaction.RevocationReason?
1235 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1236 public let revocationType: StoreKit.Transaction.RevocationType?
1237 @backDeployed(before: iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4)
1238 @available(iOS, introduced: 15.0, deprecated: 26.4, message: "Use the revocationType property instead")
1239 @available(macOS, introduced: 12.0, deprecated: 26.4, message: "Use the revocationType property instead")
1240 @available(tvOS, introduced: 15.0, deprecated: 26.4, message: "Use the revocationType property instead")
1241 @available(watchOS, introduced: 8.0, deprecated: 26.4, message: "Use the revocationType property instead")
1242 @available(visionOS, introduced: 1.0, deprecated: 26.4, message: "Use the revocationType property instead")
1243 public var revocationTypeStringRepresentation: Swift.String? {
1244 get {
1245 if #available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *) {
1246 return revocationType?.rawValue
1345 )
1346 }
1347 }
1348 public let revocationDate: Foundation::Date?
1349 public let revocationReason: StoreKit::Transaction.StoreKit::RevocationReason?
1350 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1351 public let revocationType: StoreKit::Transaction.StoreKit::RevocationType?
1352 @backDeployed(before: iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4)
1353 @available(iOS, introduced: 15.0, deprecated: 26.4, message: "Use the revocationType property instead")
1354 @available(macOS, introduced: 12.0, deprecated: 26.4, message: "Use the revocationType property instead")
1355 @available(tvOS, introduced: 15.0, deprecated: 26.4, message: "Use the revocationType property instead")
1356 @available(watchOS, introduced: 8.0, deprecated: 26.4, message: "Use the revocationType property instead")
1357 @available(visionOS, introduced: 1.0, deprecated: 26.4, message: "Use the revocationType property instead")
1358 public var revocationTypeStringRepresentation: Swift::String? {
1359 get {
1360 if #available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *) {
1361 return revocationType?.rawValue
… 8 unchanged lines …
1255 }
1256 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1257 @backDeployed(before: iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4)
1258 public var revocationPercentage: Foundation.Decimal? {
1259 get {
1260
1261
1370 }
1371 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1372 @backDeployed(before: iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4)
1373 public var revocationPercentage: Foundation::Decimal? {
1374 get {
1375
1376
… 7 unchanged lines …
1269 )
1270 }
1271 }
1272 public let productType: StoreKit.Product.ProductType
1273 public let appAccountToken: Foundation.UUID?
1274 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1275 public let environment: StoreKit.AppStore.Environment
1276 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1277 @available(iOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1278 @available(macOS, introduced: 12.0, deprecated: 13.0, message: "Use the environment property instead")
1279 @available(tvOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1280 @available(watchOS, introduced: 8.0, deprecated: 9.0, message: "Use the environment property instead")
1281 @available(macCatalyst, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1282 @available(visionOS, unavailable)
1283 public var environmentStringRepresentation: Swift.String {
1284 get {
1285 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
1286 return environment.rawValue
1384 )
1385 }
1386 }
1387 public let productType: StoreKit::Product.StoreKit::ProductType
1388 public let appAccountToken: Foundation::UUID?
1389 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1390 public let environment: StoreKit::AppStore.StoreKit::Environment
1391 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1392 @available(iOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1393 @available(macOS, introduced: 12.0, deprecated: 13.0, message: "Use the environment property instead")
1394 @available(tvOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1395 @available(watchOS, introduced: 8.0, deprecated: 9.0, message: "Use the environment property instead")
1396 @available(macCatalyst, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead")
1397 @available(visionOS, unavailable)
1398 public var environmentStringRepresentation: Swift::String {
1399 get {
1400 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
1401 return environment.rawValue
… 8 unchanged lines …
1295 }
1296 }
1297 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
1298 public let reason: StoreKit.Transaction.Reason
1299 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
1300 @available(iOS, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1301 @available(macOS, introduced: 12.0, deprecated: 14.0, message: "Use the reason property instead")
1302 @available(tvOS, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1303 @available(watchOS, introduced: 8.0, deprecated: 10.0, message: "Use the reason property instead")
1304 @available(macCatalyst, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1305 @available(visionOS, unavailable)
1306 public var reasonStringRepresentation: Swift.String {
1307 get {
1308 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *) {
1309 return reason.rawValue
1410 }
1411 }
1412 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
1413 public let reason: StoreKit::Transaction.StoreKit::Reason
1414 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
1415 @available(iOS, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1416 @available(macOS, introduced: 12.0, deprecated: 14.0, message: "Use the reason property instead")
1417 @available(tvOS, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1418 @available(watchOS, introduced: 8.0, deprecated: 10.0, message: "Use the reason property instead")
1419 @available(macCatalyst, introduced: 15.0, deprecated: 17.0, message: "Use the reason property instead")
1420 @available(visionOS, unavailable)
1421 public var reasonStringRepresentation: Swift::String {
1422 get {
1423 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *) {
1424 return reason.rawValue
… 8 unchanged lines …
1318 }
1319 }
1320 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1321 public let storefront: StoreKit.Storefront
1322 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
1323 @available(macOS, introduced: 12.0, deprecated: 14.0, message: "Use the storefront property instead")
1324 @available(tvOS, introduced: 15.0, deprecated: 17.0, message: "Use the storefront property instead")
1325 @available(watchOS, introduced: 8.0, deprecated: 10.0, message: "Use the storefront property instead")
1326 @available(macCatalyst, introduced: 15.0, deprecated: 17.0, message: "Use the storefront property instead")
1327 @available(visionOS, unavailable)
1328 public var storefrontCountryCode: Swift.String {
1329 get {
1330 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *) {
1331 return storefront.countryCode
1433 }
1434 }
1435 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1436 public let storefront: StoreKit::Storefront
1437 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
1438 @available(macOS, introduced: 12.0, deprecated: 14.0, message: "Use the storefront property instead")
1439 @available(tvOS, introduced: 15.0, deprecated: 17.0, message: "Use the storefront property instead")
1440 @available(watchOS, introduced: 8.0, deprecated: 10.0, message: "Use the storefront property instead")
1441 @available(macCatalyst, introduced: 15.0, deprecated: 17.0, message: "Use the storefront property instead")
1442 @available(visionOS, unavailable)
1443 public var storefrontCountryCode: Swift::String {
1444 get {
1445 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *) {
1446 return storefront.countryCode
… 9 unchanged lines …
1341 }
1342 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1343 @usableFromInline
1344 internal let priceStorage: Foundation.Decimal?
1345 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1346 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1)
1347 public var price: Foundation.Decimal? {
1348 get {
1349 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1350 return priceStorage
1456 }
1457 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1458 @usableFromInline
1459 internal let priceStorage: Foundation::Decimal?
1460 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1461 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1)
1462 public var price: Foundation::Decimal? {
1463 get {
1464 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1465 return priceStorage
… 12 unchanged lines …
1363 }
1364 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1365 @usableFromInline
1366 internal let currencyStorage: Foundation.Locale.Currency?
1367 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1368 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1)
1369 public var currency: Foundation.Locale.Currency? {
1370 get {
1371 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1372 return currencyStorage
1478 }
1479 @available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *)
1480 @usableFromInline
1481 internal let currencyStorage: Foundation::Locale.Foundation::Currency?
1482 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1483 @backDeployed(before: iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1)
1484 public var currency: Foundation::Locale.Foundation::Currency? {
1485 get {
1486 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1487 return currencyStorage
… 13 unchanged lines …
1386 @available(tvOS, introduced: 15.0, deprecated: 16.0, renamed: "currency.identifier", message: "Use the currency property instead")
1387 @available(watchOS, introduced: 8.0, deprecated: 9.0, renamed: "currency.identifier", message: "Use the currency property instead")
1388 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "currency.identifier", message: "Use the currency property instead")
1389 public var currencyCode: Swift.String? {
1390 get {
1391 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1392 return currencyStorage?.identifier
1501 @available(tvOS, introduced: 15.0, deprecated: 16.0, renamed: "currency.identifier", message: "Use the currency property instead")
1502 @available(watchOS, introduced: 8.0, deprecated: 9.0, renamed: "currency.identifier", message: "Use the currency property instead")
1503 @available(visionOS, introduced: 1.0, deprecated: 1.1, renamed: "currency.identifier", message: "Use the currency property instead")
1504 public var currencyCode: Swift::String? {
1505 get {
1506 if #available(iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.1, *) {
1507 return currencyStorage?.identifier
… 7 unchanged lines …
1400 }
1401 }
1402 }
1403 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1404 @usableFromInline
1405 internal let appTransactionIDStorage: Swift.String
1406 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1407 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1408 public var appTransactionID: Swift.String {
1409 get {
1410 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
1411 return appTransactionIDStorage
1515 }
1516 }
1517 }
1518 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1519 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1520 public var bundleProductID: Swift::String? {
1521 get {
1522 backing.value(
1523 atKeyPath: "bundleProductId",
1524 sentinel: nil,
1525 transform: String.init
1526 )
1527 }
1528 }
1529 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1530 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1531 public var bundleSubscriptionGroupID: Swift::String? {
1532 get {
1533 backing.value(
1534 atKeyPath: "bundleSubscriptionGroupIdentifier",
1535 sentinel: nil,
1536 transform: String.init
1537 )
1538 }
1539 }
1540 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1541 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1542 public var previousOriginalTransactionID: Swift::UInt64? {
1543 get {
1544 backing.value(
1545 atKeyPath: "previousOriginalTransactionId",
1546 sentinel: nil,
1547 transform: UInt64.init
1548 )
1549 }
1550 }
1551 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1552 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1553 public var bundleTransactionID: Swift::String? {
1554 get {
1555 backing.value(
1556 atKeyPath: "bundleTransactionId",
1557 sentinel: nil,
1558 transform: String.init
1559 )
1560 }
1561 }
1562 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1563 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
1564 public var bundleOriginalTransactionID: Swift::String? {
1565 get {
1566 backing.value(
1567 atKeyPath: "bundleOriginalTransactionId",
1568 sentinel: nil,
1569 transform: String.init
1570 )
1571 }
1572 }
1573 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1574 @usableFromInline
1575 internal let appTransactionIDStorage: Swift::String
1576 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1577 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1578 public var appTransactionID: Swift::String {
1579 get {
1580 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
1581 return appTransactionIDStorage
… 7 unchanged lines …
1419 }
1420 }
1421 }
1422 public let deviceVerification: Foundation.Data
1423 public let deviceVerificationNonce: Foundation.UUID
1424 public let ownershipType: StoreKit.Transaction.OwnershipType
1425 public let signedDate: Foundation.Date
1426 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1427 public let advancedCommerceInfo: StoreKit.Transaction.AdvancedCommerceInfo?
1428 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1429 public let billingPlanType: StoreKit.SubscriptionInfo.BillingPlanType?
1430 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1431 public let commitmentInfo: StoreKit.Transaction.CommitmentInfo?
1432 public func finish() async
1433 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1434 public typealias ID = Swift.UInt64
1435}
1436@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1437extension StoreKit.Transaction : Swift.Equatable {
1438 public static func == (lhs: StoreKit.Transaction, rhs: StoreKit.Transaction) -> Swift.Bool
1439}
1440@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1441extension StoreKit.Transaction : Swift.Hashable {
1442 public func hash(into hasher: inout Swift.Hasher)
1443 public var hashValue: Swift.Int {
1444 get
1445 }
1446}
1447@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1448extension StoreKit.Transaction : Swift.CustomDebugStringConvertible {
1449 @inlinable public var debugDescription: Swift.String {
1450 get {
1451 backing.debugDescription
1452 }
1453 }
1454}
1455@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1456extension StoreKit.Transaction {
1457 public struct Transactions : _Concurrency.AsyncSequence {
1458 public typealias Element = StoreKit.VerificationResult<StoreKit.Transaction>
1459 public struct AsyncIterator : _Concurrency.AsyncIteratorProtocol {
1460 public mutating func next() async -> StoreKit.VerificationResult<StoreKit.Transaction>?
1461 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1462 public typealias Element = StoreKit.VerificationResult<StoreKit.Transaction>
1463 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
1464 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
1465 }
1466 public func makeAsyncIterator() -> StoreKit.Transaction.Transactions.AsyncIterator
1467 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
1468 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
1469 }
1470 public static var all: StoreKit.Transaction.Transactions {
1471 get
1472 }
1473 public static var currentEntitlements: StoreKit.Transaction.Transactions {
1474 get
1475 }
1476 @available(iOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements(for:) method instead.")
1477 @available(macOS, introduced: 12.0, deprecated: 15.4, message: "Use the currentEntitlements(for:) method instead.")
1478 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements(for:) method instead.")
1479 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the currentEntitlements(for:) method instead.")
1480 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the currentEntitlements(for:) method instead.")
1481 public static func currentEntitlement(for productID: Swift.String) async -> StoreKit.VerificationResult<StoreKit.Transaction>?
1482 public static func latest(for productID: Swift.String) async -> StoreKit.VerificationResult<StoreKit.Transaction>?
1483 public static var unfinished: StoreKit.Transaction.Transactions {
1484 get
1485 }
1486}
1487@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1488extension StoreKit.Transaction {
1489 public static var updates: StoreKit.Transaction.Transactions {
1490 get
1491 }
1492}
1493extension StoreKit.Transaction {
1494 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1495 public static func all(for productID: Swift.String) -> StoreKit.Transaction.Transactions
1496 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1497 public static func currentEntitlements(for productID: Swift.String) -> StoreKit.Transaction.Transactions
1498}
1499@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1500extension StoreKit.Transaction {
1501 @available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1502 public enum RefundRequestError : Swift.Error {
1503 case duplicateRequest
1504 case failed
1505 public static func == (a: StoreKit.Transaction.RefundRequestError, b: StoreKit.Transaction.RefundRequestError) -> Swift.Bool
1506 public func hash(into hasher: inout Swift.Hasher)
1507 public var hashValue: Swift.Int {
1508 get
1509 }
1510 }
1511 @available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1512 public enum RefundRequestStatus {
1513 case success
1514 case userCancelled
1515 public static func == (a: StoreKit.Transaction.RefundRequestStatus, b: StoreKit.Transaction.RefundRequestStatus) -> Swift.Bool
1516 public func hash(into hasher: inout Swift.Hasher)
1517 public var hashValue: Swift.Int {
1518 get
1519 }
1520 }
1521 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1522 @available(watchOS, unavailable)
1523 @available(tvOS, unavailable)
1524 @inlinable public func beginRefundRequest(in scene: UIKit.UIWindowScene) async throws -> StoreKit.Transaction.RefundRequestStatus {
1525 return try await Transaction.beginRefundRequest(for: self.id, in: scene)
1526 }
1527 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1528 @available(watchOS, unavailable)
1529 @available(tvOS, unavailable)
1530 @_Concurrency.MainActor public static func beginRefundRequest(for transactionID: Swift.UInt64, in scene: UIKit.UIWindowScene) async throws -> StoreKit.Transaction.RefundRequestStatus
1531}
1532@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1533extension StoreKit.Transaction {
1534 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1535 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
1536 public var subscriptionStatus: StoreKit.Product.SubscriptionInfo.Status? {
1537 get async {
1538 guard let subscriptionGroupID else {
1539 return nil
1589 }
1590 }
1591 }
1592 public let deviceVerification: Foundation::Data
1593 public let deviceVerificationNonce: Foundation::UUID
1594 public let ownershipType: StoreKit::Transaction.StoreKit::OwnershipType
1595 public let signedDate: Foundation::Date
1596 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1597 public let advancedCommerceInfo: StoreKit::Transaction.StoreKit::AdvancedCommerceInfo?
1598 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1599 public let billingPlanType: StoreKit::SubscriptionInfo.StoreKit::BillingPlanType?
1600 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1601 public let commitmentInfo: StoreKit::Transaction.StoreKit::CommitmentInfo?
1602 public func finish() async
1603 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1604 public typealias ID = Swift::UInt64
1605}
1606@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1607extension StoreKit::Transaction : Swift::Equatable {
1608 public static func == (lhs: StoreKit::Transaction, rhs: StoreKit::Transaction) -> Swift::Bool
1609}
1610@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1611extension StoreKit::Transaction : Swift::Hashable {
1612 public func hash(into hasher: inout Swift::Hasher)
1613 public var hashValue: Swift::Int {
1614 get
1615 }
1616}
1617@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1618extension StoreKit::Transaction : Swift::CustomDebugStringConvertible {
1619 @inlinable public var debugDescription: Swift::String {
1620 get {
1621 backing.debugDescription
1622 }
1623 }
1624}
1625@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1626extension StoreKit::Transaction {
1627 public struct Transactions : _Concurrency::AsyncSequence {
1628 public typealias Element = StoreKit::VerificationResult<StoreKit::Transaction>
1629 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
1630 public mutating func next() async -> StoreKit::VerificationResult<StoreKit::Transaction>?
1631 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1632 public typealias Element = StoreKit::VerificationResult<StoreKit::Transaction>
1633 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1634 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
1635 }
1636 public func makeAsyncIterator() -> StoreKit::Transaction.StoreKit::Transactions.StoreKit::AsyncIterator
1637 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1638 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
1639 }
1640 public static var all: StoreKit::Transaction.StoreKit::Transactions {
1641 get
1642 }
1643 public static var currentEntitlements: StoreKit::Transaction.StoreKit::Transactions {
1644 get
1645 }
1646 @available(iOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements(for:) method instead.")
1647 @available(macOS, introduced: 12.0, deprecated: 15.4, message: "Use the currentEntitlements(for:) method instead.")
1648 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements(for:) method instead.")
1649 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the currentEntitlements(for:) method instead.")
1650 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the currentEntitlements(for:) method instead.")
1651 public static func currentEntitlement(for productID: Swift::String) async -> StoreKit::VerificationResult<StoreKit::Transaction>?
1652 public static func latest(for productID: Swift::String) async -> StoreKit::VerificationResult<StoreKit::Transaction>?
1653 public static var unfinished: StoreKit::Transaction.StoreKit::Transactions {
1654 get
1655 }
1656}
1657@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1658extension StoreKit::Transaction {
1659 public static var updates: StoreKit::Transaction.StoreKit::Transactions {
1660 get
1661 }
1662}
1663extension StoreKit::Transaction {
1664 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1665 public static func all(for productID: Swift::String) -> StoreKit::Transaction.StoreKit::Transactions
1666 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1667 public static func currentEntitlements(for productID: Swift::String) -> StoreKit::Transaction.StoreKit::Transactions
1668}
1669@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1670extension StoreKit::Transaction {
1671 @available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1672 public enum RefundRequestError : Swift::Error {
1673 case duplicateRequest
1674 case failed
1675 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1676 case ineligible
1677 public static func == (a: StoreKit::Transaction.StoreKit::RefundRequestError, b: StoreKit::Transaction.StoreKit::RefundRequestError) -> Swift::Bool
1678 public func hash(into hasher: inout Swift::Hasher)
1679 public var hashValue: Swift::Int {
1680 get
1681 }
1682 }
1683 @available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
1684 public enum RefundRequestStatus {
1685 case success
1686 case userCancelled
1687 public static func == (a: StoreKit::Transaction.StoreKit::RefundRequestStatus, b: StoreKit::Transaction.StoreKit::RefundRequestStatus) -> Swift::Bool
1688 public func hash(into hasher: inout Swift::Hasher)
1689 public var hashValue: Swift::Int {
1690 get
1691 }
1692 }
1693 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1694 @available(watchOS, unavailable)
1695 @available(tvOS, unavailable)
1696 @inlinable public func beginRefundRequest(in scene: UIKit::UIWindowScene) async throws -> StoreKit::Transaction.StoreKit::RefundRequestStatus {
1697 return try await Transaction.beginRefundRequest(for: self.id, in: scene)
1698 }
1699 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1700 @available(watchOS, unavailable)
1701 @available(tvOS, unavailable)
1702 @_Concurrency::MainActor public static func beginRefundRequest(for transactionID: Swift::UInt64, in scene: UIKit::UIWindowScene) async throws -> StoreKit::Transaction.StoreKit::RefundRequestStatus
1703}
1704@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1705extension StoreKit::Transaction {
1706 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1707 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0)
1708 public var subscriptionStatus: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status? {
1709 get async {
1710 guard let subscriptionGroupID else {
1711 return nil
… 6 unchanged lines …
1546 }
1547}
1548@available(iOS 15.0, macCatalyst 15.0, tvOS 17.0, macOS 12.0, watchOS 10.0, visionOS 1.0, *)
1549extension StoreKit.Transaction.RefundRequestError : Swift.Sendable {
1550}
1551@available(iOS 15.0, macCatalyst 15.0, tvOS 17.0, macOS 12.0, watchOS 10.0, visionOS 1.0, *)
1552extension StoreKit.Transaction.RefundRequestStatus : Swift.Sendable {
1553}
1554@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1555extension StoreKit.Transaction : Swift.Sendable {
1556}
1557@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1558extension StoreKit.Transaction.RevocationReason : Swift.Sendable {
1559}
1560@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1561extension StoreKit.Transaction.OfferType : Swift.Sendable {
1562}
1563@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1564extension StoreKit.Transaction.OwnershipType : Swift.Sendable {
1565}
1566@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1567extension StoreKit.Transaction.Transactions : Swift.Sendable {
1568}
1569@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1570public struct Storefront : Swift.Identifiable, Swift.Sendable {
1571 public let countryCode: Swift.String
1572 public let id: Swift.String
1573 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, *)
1574 @usableFromInline
1575 internal let localeStorage: Foundation.Locale
1576 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, visionOS 1.0, *)
1577 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1578 public var currency: Foundation.Locale.Currency? {
1579 get { localeStorage.currency }
1580 }
1581 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, *)
1582 @usableFromInline
1583 internal init(iso3ACountryCode countryCode: Swift.String, id: Swift.String, locale: Foundation.Locale)
1584 public static var current: StoreKit.Storefront? {
1585 get async
1586 }
1587 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1588 public typealias ID = Swift.String
1589}
1590@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1591extension StoreKit.Storefront {
1592 public struct Storefronts : _Concurrency.AsyncSequence, Swift.Sendable {
1593 public typealias Element = StoreKit.Storefront
1594 public struct AsyncIterator : _Concurrency.AsyncIteratorProtocol {
1595 public mutating func next() async -> StoreKit.Storefront?
1596 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1597 public typealias Element = StoreKit.Storefront
1598 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
1599 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
1600 }
1601 public func makeAsyncIterator() -> StoreKit.Storefront.Storefronts.AsyncIterator
1602 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
1603 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
1604 }
1605 public static var updates: StoreKit.Storefront.Storefronts {
1606 get
1607 }
1608}
1609@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1610extension StoreKit.Product {
1611 public struct PurchaseOption : Swift.Equatable, Swift.Hashable, Swift.Sendable {
1612 public static func appAccountToken(_ token: Foundation.UUID) -> StoreKit.Product.PurchaseOption
1613 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1614 public static func billingPlanType(_ type: StoreKit.Product.SubscriptionInfo.BillingPlanType) -> StoreKit.Product.PurchaseOption
1615 @usableFromInline
1616 internal static func custom(key: Swift.String, value: StoreKit.BackingValue) -> StoreKit.Product.PurchaseOption
1617 public static func custom(key: Swift.String, value: Swift.String) -> StoreKit.Product.PurchaseOption
1618 public static func custom(key: Swift.String, value: Swift.Double) -> StoreKit.Product.PurchaseOption
1619 public static func custom(key: Swift.String, value: Swift.Bool) -> StoreKit.Product.PurchaseOption
1620 public static func custom(key: Swift.String, value: Foundation.Data) -> StoreKit.Product.PurchaseOption
1621 @preconcurrency public static func onStorefrontChange(shouldContinuePurchase: @escaping @Sendable (StoreKit.Storefront) -> Swift.Bool) -> StoreKit.Product.PurchaseOption
1622 @available(iOS, introduced: 15.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1623 @available(macOS, introduced: 12.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1624 @available(tvOS, introduced: 15.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1625 @available(watchOS, introduced: 8.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1626 @available(visionOS, introduced: 1.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1627 public static func promotionalOffer(offerID: Swift.String, keyID: Swift.String, nonce: Foundation.UUID, signature: Foundation.Data, timestamp: Swift.Int) -> StoreKit.Product.PurchaseOption
1628 @available(iOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1629 @available(macOS, introduced: 14.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1630 @available(tvOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1631 @available(watchOS, introduced: 10.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1632 @available(visionOS, introduced: 1.1, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1633 public static func promotionalOffer(offerID: Swift.String, signature: StoreKit.Product.SubscriptionOffer.Signature) -> StoreKit.Product.PurchaseOption
1634 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1635 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1636 public static func promotionalOffer(_ offerID: Swift.String, compactJWS: Swift.String) -> [StoreKit.Product.PurchaseOption] {
1637 return [
1638 .custom(key: "adHocOfferId", value: offerID),
1639
1640 .custom(key: "adHocSignature", value: Data(compactJWS.utf8).base64EncodedString())
1641 ]
1642 }
1643 public static func quantity(_ quantity: Swift.Int) -> StoreKit.Product.PurchaseOption
1644 public static func simulatesAskToBuyInSandbox(_ simulateAskToBuy: Swift.Bool) -> StoreKit.Product.PurchaseOption
1645 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1646 public static func winBackOffer(_ offer: StoreKit.Product.SubscriptionOffer) -> StoreKit.Product.PurchaseOption
1647 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1648 public static func introductoryOfferEligibility(compactJWS: Swift.String) -> StoreKit.Product.PurchaseOption {
1649 Self.custom(key: "introOfferEligibilityParam", value: compactJWS)
1650 }
1651 public static func == (a: StoreKit.Product.PurchaseOption, b: StoreKit.Product.PurchaseOption) -> Swift.Bool
1652 public func hash(into hasher: inout Swift.Hasher)
1653 public var hashValue: Swift.Int {
1654 get
1655 }
1656 }
1657}
1658@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1659extension StoreKit.Product.PurchaseOption : Swift.CustomDebugStringConvertible {
1660 public var debugDescription: Swift.String {
1661 get
1662 }
1663}
1664@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1665extension StoreKit.Product {
1666 public enum PurchaseResult {
1667 case success(StoreKit.VerificationResult<StoreKit.Transaction>)
1668 case userCancelled
1669 case pending
1670 }
1671 public enum PurchaseError : Swift.Error {
1672 case invalidQuantity
1673 case productUnavailable
1674 case purchaseNotAllowed
1718 }
1719}
1720@available(iOS 15.0, macCatalyst 15.0, tvOS 17.0, macOS 12.0, watchOS 10.0, visionOS 1.0, *)
1721extension StoreKit::Transaction.StoreKit::RefundRequestError : Swift::Sendable {
1722}
1723@available(iOS 15.0, macCatalyst 15.0, tvOS 17.0, macOS 12.0, watchOS 10.0, visionOS 1.0, *)
1724extension StoreKit::Transaction.StoreKit::RefundRequestStatus : Swift::Sendable {
1725}
1726@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1727extension StoreKit::Transaction : Swift::Sendable {
1728}
1729@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1730extension StoreKit::Transaction.StoreKit::RevocationReason : Swift::Sendable {
1731}
1732@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1733extension StoreKit::Transaction.StoreKit::OfferType : Swift::Sendable {
1734}
1735@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1736extension StoreKit::Transaction.StoreKit::OwnershipType : Swift::Sendable {
1737}
1738@available(iOS 15.0, macCatalyst 15.0, tvOS 15.0, macOS 12.0, watchOS 8.0, visionOS 1.0, *)
1739extension StoreKit::Transaction.StoreKit::Transactions : Swift::Sendable {
1740}
1741@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1742public struct Storefront : Swift::Identifiable, Swift::Sendable {
1743 public let countryCode: Swift::String
1744 public let id: Swift::String
1745 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, *)
1746 @usableFromInline
1747 internal let localeStorage: Foundation::Locale
1748 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, visionOS 1.0, *)
1749 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1750 public var currency: Foundation::Locale.Foundation::Currency? {
1751 get { localeStorage.currency }
1752 }
1753 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0, *)
1754 @usableFromInline
1755 internal init(iso3ACountryCode countryCode: Swift::String, id: Swift::String, locale: Foundation::Locale)
1756 public static var current: StoreKit::Storefront? {
1757 get async
1758 }
1759 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1760 public typealias ID = Swift::String
1761}
1762@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1763extension StoreKit::Storefront {
1764 public struct Storefronts : _Concurrency::AsyncSequence, Swift::Sendable {
1765 public typealias Element = StoreKit::Storefront
1766 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
1767 public mutating func next() async -> StoreKit::Storefront?
1768 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1769 public typealias Element = StoreKit::Storefront
1770 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1771 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
1772 }
1773 public func makeAsyncIterator() -> StoreKit::Storefront.StoreKit::Storefronts.StoreKit::AsyncIterator
1774 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1775 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
1776 }
1777 public static var updates: StoreKit::Storefront.StoreKit::Storefronts {
1778 get
1779 }
1780}
1781@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1782extension StoreKit::Product {
1783 public struct PurchaseOption : Swift::Equatable, Swift::Hashable, Swift::Sendable {
1784 public static func appAccountToken(_ token: Foundation::UUID) -> StoreKit::Product.StoreKit::PurchaseOption
1785 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
1786 public static func billingPlanType(_ type: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BillingPlanType) -> StoreKit::Product.StoreKit::PurchaseOption
1787 @usableFromInline
1788 internal static func custom(key: Swift::String, value: StoreKit::BackingValue) -> StoreKit::Product.StoreKit::PurchaseOption
1789 public static func custom(key: Swift::String, value: Swift::String) -> StoreKit::Product.StoreKit::PurchaseOption
1790 public static func custom(key: Swift::String, value: Swift::Double) -> StoreKit::Product.StoreKit::PurchaseOption
1791 public static func custom(key: Swift::String, value: Swift::Bool) -> StoreKit::Product.StoreKit::PurchaseOption
1792 public static func custom(key: Swift::String, value: Foundation::Data) -> StoreKit::Product.StoreKit::PurchaseOption
1793 @preconcurrency public static func onStorefrontChange(shouldContinuePurchase: @escaping @Sendable (StoreKit::Storefront) -> Swift::Bool) -> StoreKit::Product.StoreKit::PurchaseOption
1794 @available(iOS, introduced: 15.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1795 @available(macOS, introduced: 12.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1796 @available(tvOS, introduced: 15.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1797 @available(watchOS, introduced: 8.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1798 @available(visionOS, introduced: 1.0, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1799 public static func promotionalOffer(offerID: Swift::String, keyID: Swift::String, nonce: Foundation::UUID, signature: Foundation::Data, timestamp: Swift::Int) -> StoreKit::Product.StoreKit::PurchaseOption
1800 @available(iOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1801 @available(macOS, introduced: 14.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1802 @available(tvOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1803 @available(watchOS, introduced: 10.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1804 @available(visionOS, introduced: 1.1, deprecated: 26.0, message: "Sign promotional offers with JWS and use promotionalOffer(_:compactJWS:) instead")
1805 public static func promotionalOffer(offerID: Swift::String, signature: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::Signature) -> StoreKit::Product.StoreKit::PurchaseOption
1806 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1807 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1808 public static func promotionalOffer(_ offerID: Swift::String, compactJWS: Swift::String) -> [StoreKit::Product.StoreKit::PurchaseOption] {
1809 return [
1810 .custom(key: "adHocOfferId", value: offerID),
1811
1812 .custom(key: "adHocSignature", value: Data(compactJWS.utf8).base64EncodedString())
1813 ]
1814 }
1815 public static func quantity(_ quantity: Swift::Int) -> StoreKit::Product.StoreKit::PurchaseOption
1816 public static func simulatesAskToBuyInSandbox(_ simulateAskToBuy: Swift::Bool) -> StoreKit::Product.StoreKit::PurchaseOption
1817 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
1818 public static func winBackOffer(_ offer: StoreKit::Product.StoreKit::SubscriptionOffer) -> StoreKit::Product.StoreKit::PurchaseOption
1819 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
1820 public static func introductoryOfferEligibility(compactJWS: Swift::String) -> StoreKit::Product.StoreKit::PurchaseOption {
1821 Self.custom(key: "introOfferEligibilityParam", value: compactJWS)
1822 }
1823 public static func == (a: StoreKit::Product.StoreKit::PurchaseOption, b: StoreKit::Product.StoreKit::PurchaseOption) -> Swift::Bool
1824 public func hash(into hasher: inout Swift::Hasher)
1825 public var hashValue: Swift::Int {
1826 get
1827 }
1828 }
1829}
1830@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1831extension StoreKit::Product.StoreKit::PurchaseOption : Swift::CustomDebugStringConvertible {
1832 public var debugDescription: Swift::String {
1833 get
1834 }
1835}
1836@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1837extension StoreKit::Product {
1838 public enum PurchaseResult : Swift::Sendable {
1839 case success(StoreKit::VerificationResult<StoreKit::Transaction>)
1840 case userCancelled
1841 case pending
1842 }
1843 public enum PurchaseError : Swift::Error {
1844 case invalidQuantity
1845 case productUnavailable
1846 case purchaseNotAllowed
… 4 unchanged lines …
1679 case missingOfferParameters
1680 @available(iOS 26.5, macOS 26.5, tvOS 26.5, watchOS 26.5, visionOS 26.5, *)
1681 case paymentMethodBindingConfigurationRequired
1682 public static func == (a: StoreKit.Product.PurchaseError, b: StoreKit.Product.PurchaseError) -> Swift.Bool
1683 public func hash(into hasher: inout Swift.Hasher)
1684 public var hashValue: Swift.Int {
1685 get
1686 }
1687 }
1688 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, *)
1689 @available(visionOS, unavailable)
1690 @_Concurrency.MainActor public func purchase(options: Swift.Set<StoreKit.Product.PurchaseOption> = []) async throws -> StoreKit.Product.PurchaseResult
1691 @available(iOS 17.0, tvOS 17.0, macCatalyst 17.0, visionOS 1.0, *)
1692 @available(macOS, unavailable)
1693 @available(watchOS, unavailable)
1694 @_Concurrency.MainActor public func purchase(confirmIn scene: some UIScene, options: Swift.Set<StoreKit.Product.PurchaseOption> = []) async throws -> StoreKit.Product.PurchaseResult
1695 @available(iOS 18.2, tvOS 18.2, macCatalyst 18.2, visionOS 2.2, *)
1696 @available(macOS, unavailable)
1697 @available(watchOS, unavailable)
1698 public func purchase(confirmIn viewController: UIKit.UIViewController, options: Swift.Set<StoreKit.Product.PurchaseOption> = []) async throws -> StoreKit.Product.PurchaseResult
1699}
1700@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1701public struct Product : Swift.Identifiable {
1702 public struct ProductType : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
1703 public let rawValue: Swift.String
1704 public init(rawValue: Swift.String)
1705 public static let consumable: StoreKit.Product.ProductType
1706 public static let nonConsumable: StoreKit.Product.ProductType
1707 public static let nonRenewable: StoreKit.Product.ProductType
1708 public static let autoRenewable: StoreKit.Product.ProductType
1709 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1710 public typealias RawValue = Swift.String
1711 }
1712 @usableFromInline
1713 internal let backing: StoreKit.BackingValue
1714 public var jsonRepresentation: Foundation.Data {
1715 get
1716 }
1717 public let id: Swift.String
1718 public let type: StoreKit.Product.ProductType
1719 public let displayName: Swift.String
1720 public let description: Swift.String
1721 public let price: Foundation.Decimal
1722 public let displayPrice: Swift.String
1723 public let isFamilyShareable: Swift.Bool
1724 public let subscription: StoreKit.Product.SubscriptionInfo?
1725 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1726 @usableFromInline
1727 internal let priceLocaleStorage: Foundation.Locale
1728 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
1729 public typealias ID = Swift.String
1730}
1731@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1732extension StoreKit.Product : Swift.Equatable {
1733 @inlinable public static func == (lhs: StoreKit.Product, rhs: StoreKit.Product) -> Swift.Bool {
1734 lhs.backing == rhs.backing
1735 }
1736}
1737@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1738extension StoreKit.Product : Swift.Hashable {
1739 @inlinable public func hash(into hasher: inout Swift.Hasher) {
1740 hasher.combine(backing)
1741 }
1742 public var hashValue: Swift.Int {
1743 get
1744 }
1745}
1746@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1747extension StoreKit.Product : Swift.CustomDebugStringConvertible {
1748 @inlinable public var debugDescription: Swift.String {
1749 get {
1750 backing.debugDescription
1751 }
1752 }
1753}
1754@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1755extension StoreKit.Product {
1756 public static func products<Identifiers>(for identifiers: Identifiers) async throws -> [StoreKit.Product] where Identifiers : Swift.Collection, Identifiers.Element == Swift.String
1757}
1758@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1759extension StoreKit.Product {
1760 @inlinable public var latestTransaction: StoreKit.VerificationResult<StoreKit.Transaction>? {
1761 get async {
1762 await Transaction.latest(for: id)
1763 }
1851 case missingOfferParameters
1852 @available(iOS 26.5, macOS 26.5, tvOS 26.5, watchOS 26.5, visionOS 26.5, *)
1853 case paymentMethodBindingConfigurationRequired
1854 public static func == (a: StoreKit::Product.StoreKit::PurchaseError, b: StoreKit::Product.StoreKit::PurchaseError) -> Swift::Bool
1855 public func hash(into hasher: inout Swift::Hasher)
1856 public var hashValue: Swift::Int {
1857 get
1858 }
1859 }
1860 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, *)
1861 @available(visionOS, unavailable)
1862 @_Concurrency::MainActor public func purchase(options: Swift::Set<StoreKit::Product.StoreKit::PurchaseOption> = []) async throws -> StoreKit::Product.StoreKit::PurchaseResult
1863 @available(iOS 17.0, tvOS 17.0, macCatalyst 17.0, visionOS 1.0, *)
1864 @available(macOS, unavailable)
1865 @available(watchOS, unavailable)
1866 @_Concurrency::MainActor public func purchase(confirmIn scene: some UIScene, options: Swift::Set<StoreKit::Product.StoreKit::PurchaseOption> = []) async throws -> StoreKit::Product.StoreKit::PurchaseResult
1867 @available(iOS 18.2, tvOS 18.2, macCatalyst 18.2, visionOS 2.2, *)
1868 @available(macOS, unavailable)
1869 @available(watchOS, unavailable)
1870 public func purchase(confirmIn viewController: UIKit::UIViewController, options: Swift::Set<StoreKit::Product.StoreKit::PurchaseOption> = []) async throws -> StoreKit::Product.StoreKit::PurchaseResult
1871}
1872@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1873public struct Product : Swift::Identifiable {
1874 public struct ProductType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
1875 public let rawValue: Swift::String
1876 public init(rawValue: Swift::String)
1877 public static let consumable: StoreKit::Product.StoreKit::ProductType
1878 public static let nonConsumable: StoreKit::Product.StoreKit::ProductType
1879 public static let nonRenewable: StoreKit::Product.StoreKit::ProductType
1880 public static let autoRenewable: StoreKit::Product.StoreKit::ProductType
1881 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1882 public static let subscriptionBundle: StoreKit::Product.StoreKit::ProductType
1883 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
1884 public static let subscriptionSuite: StoreKit::Product.StoreKit::ProductType
1885 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1886 public typealias RawValue = Swift::String
1887 }
1888 @usableFromInline
1889 internal let backing: StoreKit::BackingValue
1890 public var jsonRepresentation: Foundation::Data {
1891 get
1892 }
1893 public let id: Swift::String
1894 public let type: StoreKit::Product.StoreKit::ProductType
1895 public let displayName: Swift::String
1896 public let description: Swift::String
1897 public let price: Foundation::Decimal
1898 public let displayPrice: Swift::String
1899 public let isFamilyShareable: Swift::Bool
1900 public let subscription: StoreKit::Product.StoreKit::SubscriptionInfo?
1901 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1902 @usableFromInline
1903 internal let priceLocaleStorage: Foundation::Locale
1904 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1905 public typealias ID = Swift::String
1906}
1907@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1908extension StoreKit::Product : Swift::Equatable {
1909 @inlinable public static func == (lhs: StoreKit::Product, rhs: StoreKit::Product) -> Swift::Bool {
1910 lhs.backing == rhs.backing
1911 }
1912}
1913@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1914extension StoreKit::Product : Swift::Hashable {
1915 @inlinable public func hash(into hasher: inout Swift::Hasher) {
1916 hasher.combine(backing)
1917 }
1918 public var hashValue: Swift::Int {
1919 get
1920 }
1921}
1922@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1923extension StoreKit::Product : Swift::CustomDebugStringConvertible {
1924 @inlinable public var debugDescription: Swift::String {
1925 get {
1926 backing.debugDescription
1927 }
1928 }
1929}
1930@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1931extension StoreKit::Product {
1932 public static func products<Identifiers>(for identifiers: Identifiers) async throws -> [StoreKit::Product] where Identifiers : Swift::Collection, Identifiers.Element == Swift::String
1933}
1934@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1935extension StoreKit::Product {
1936 @inlinable public var latestTransaction: StoreKit::VerificationResult<StoreKit::Transaction>? {
1937 get async {
1938 await Transaction.latest(for: id)
1939 }
… 3 unchanged lines …
1767 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements property instead.")
1768 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the currentEntitlements property instead.")
1769 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the currentEntitlements property instead.")
1770 @inlinable public var currentEntitlement: StoreKit.VerificationResult<StoreKit.Transaction>? {
1771 get async {
1772 await Transaction.currentEntitlement(for: id)
1773 }
1774 }
1775}
1776extension StoreKit.Product {
1777 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1778 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1779 @inlinable public var currentEntitlements: StoreKit.Transaction.Transactions {
1780 get {
1781 Transaction.currentEntitlements(for: id)
1782 }
1783 }
1784}
1785@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1786extension StoreKit.Product : Swift.Sendable {
1787}
1788@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1789extension StoreKit.Product.ProductType : Swift.Sendable {
1790}
1791@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1792extension StoreKit.Product.PurchaseResult : Swift.Sendable {
1793}
1794@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1795extension StoreKit.Product {
1796 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
1797 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1798 @usableFromInline
1799 internal var priceLocaleInternal: Foundation.Locale {
1800 get {
1801 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
1802 return priceLocaleStorage
1943 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the currentEntitlements property instead.")
1944 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the currentEntitlements property instead.")
1945 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the currentEntitlements property instead.")
1946 @inlinable public var currentEntitlement: StoreKit::VerificationResult<StoreKit::Transaction>? {
1947 get async {
1948 await Transaction.currentEntitlement(for: id)
1949 }
1950 }
1951}
1952extension StoreKit::Product {
1953 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1954 @backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
1955 @inlinable public var currentEntitlements: StoreKit::Transaction.StoreKit::Transactions {
1956 get {
1957 Transaction.currentEntitlements(for: id)
1958 }
1959 }
1960}
1961@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1962extension StoreKit::Product : Swift::Sendable {
1963}
1964@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1965extension StoreKit::Product.StoreKit::ProductType : Swift::Sendable {
1966}
1967@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1968extension StoreKit::Product {
1969 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
1970 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1971 @usableFromInline
1972 internal var priceLocaleInternal: Foundation::Locale {
1973 get {
1974 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
1975 return priceLocaleStorage
… 9 unchanged lines …
1812 }
1813 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
1814 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1815 public var priceFormatStyle: Foundation.Decimal.FormatStyle.Currency {
1816 get {
1817 let locale = priceLocaleInternal
1818 return Decimal.FormatStyle.Currency(
1985 }
1986 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
1987 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1988 public var priceFormatStyle: Foundation::Decimal.Foundation::FormatStyle.Foundation::Currency {
1989 get {
1990 let locale = priceLocaleInternal
1991 return Decimal.FormatStyle.Currency(
… 6 unchanged lines …
1825 }
1826 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
1827 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
1828 public var subscriptionPeriodFormatStyle: Foundation.Date.ComponentsFormatStyle {
1829 get {
1830 let locale = priceLocaleInternal
1831 return Date.ComponentsFormatStyle(
1998 }
1999 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
2000 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
2001 public var subscriptionPeriodFormatStyle: Foundation::Date.Foundation::ComponentsFormatStyle {
2002 get {
2003 let locale = priceLocaleInternal
2004 return Date.ComponentsFormatStyle(
… 10 unchanged lines …
1842 }
1843}
1844@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1845extension StoreKit.Product {
1846 public var subscriptionPeriodUnitFormatStyle: StoreKit.Product.SubscriptionPeriod.Unit.FormatStyle {
1847 get
1848 }
1849}
1850@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1851public enum AppStore {
1852 public static var canMakePayments: Swift.Bool {
1853 get
1854 }
1855 public static var deviceVerificationID: Foundation.UUID? {
1856 get
1857 }
1858}
1859@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1860extension StoreKit.AppStore {
1861 public static func sync() async throws
1862}
1863@available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1864@available(macOS, unavailable)
1865@available(watchOS, unavailable)
1866@available(tvOS, unavailable)
1867extension StoreKit.AppStore {
1868 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
1869 @available(macOS, unavailable)
1870 @available(watchOS, unavailable)
1871 @available(tvOS, unavailable)
1872 @_Concurrency.MainActor public static func showManageSubscriptions(in scene: UIKit.UIWindowScene) async throws
1873 @available(iOS 17.0, macCatalyst 17.0, visionOS 1.0, *)
1874 @available(macOS, unavailable)
1875 @available(watchOS, unavailable)
1876 @available(tvOS, unavailable)
1877 @_Concurrency.MainActor public static func showManageSubscriptions(in scene: UIKit.UIWindowScene, subscriptionGroupID: Swift.String) async throws
1878}
1879extension StoreKit.AppStore {
1880 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
1881 @available(macOS, unavailable)
1882 @available(watchOS, unavailable)
1883 @available(tvOS, unavailable)
1884 @_Concurrency.MainActor public static func presentOfferCodeRedeemSheet(in scene: UIKit.UIWindowScene) async throws
1885}
1886extension StoreKit.AppStore {
1887 @available(iOS 26.0, tvOS 26.0, *)
1888 @available(macOS, unavailable)
1889 @available(watchOS, unavailable)
1890 @available(visionOS, unavailable)
1891 @_Concurrency.MainActor public static func presentMerchandising(_ kind: StoreKit.AppStoreMerchandisingKind, from controller: UIKit.UIViewController) async throws -> StoreKit.AppStoreMerchandisingKind.PresentationResult
1892}
1893extension StoreKit.AppStore {
1894 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
1895 @available(macOS, unavailable)
1896 @available(watchOS, unavailable)
1897 @available(tvOS, unavailable)
1898 @_Concurrency.MainActor public static func requestReview(in scene: UIKit.UIWindowScene)
1899}
1900@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
1901extension StoreKit.AppStore {
1902 public struct Environment : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1903 public let rawValue: Swift.String
1904 public init(rawValue: Swift.String)
1905 public static let production: StoreKit.AppStore.Environment
1906 public static let sandbox: StoreKit.AppStore.Environment
1907 public static let xcode: StoreKit.AppStore.Environment
1908 @available(iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, macOS 13.0, *)
1909 public typealias RawValue = Swift.String
1910 }
1911}
1912@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1913extension StoreKit.AppStore {
1914 public struct Platform : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable, Swift.Sendable {
1915 public let rawValue: Swift.String
1916 public init(rawValue: Swift.String)
1917 public static let iOS: StoreKit.AppStore.Platform
1918 public static let macOS: StoreKit.AppStore.Platform
1919 public static let tvOS: StoreKit.AppStore.Platform
1920 public static let visionOS: StoreKit.AppStore.Platform
1921 @available(iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, macOS 15.4, *)
1922 public typealias RawValue = Swift.String
1923 }
1924}
1925@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
1926extension StoreKit.AppStore : Swift.Sendable {
1927}
1928@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
1929extension StoreKit.AppStore {
1930 @usableFromInline
1931 internal static var canMakePaymentsAsyncUsableFromInline: Swift.Bool {
1932 get async throws
1933 }
1934}
1935@available(iOS 26.0, tvOS 26.0, macOS 26.2, *)
1936@available(watchOS, unavailable)
1937@available(visionOS, unavailable)
1938public struct AppStoreMerchandisingKind : Swift.Sendable {
1939 public enum PresentationResult : Swift.Sendable {
1940 case dismissed
1941 case purchaseCompleted(StoreKit.Product.PurchaseResult)
1942 }
1943 public static func subscriptionBundle(_ groupID: Swift.String) -> StoreKit.AppStoreMerchandisingKind
1944}
1945extension StoreKit.AppStore {
1946 @available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
1947 public static var ageRatingCode: Swift.Int? {
1948 get async
1949 }
1950}
1951@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1952extension StoreKit.AdvancedCommerceProduct {
1953 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1954 public struct PurchaseOption : Swift.Equatable, Swift.Hashable, Swift.Sendable {
1955 public static func onStorefrontChange(shouldContinuePurchase: @escaping @Sendable (StoreKit.Storefront) -> Swift.Bool) -> StoreKit.AdvancedCommerceProduct.PurchaseOption
1956 public static func == (a: StoreKit.AdvancedCommerceProduct.PurchaseOption, b: StoreKit.AdvancedCommerceProduct.PurchaseOption) -> Swift.Bool
1957 public func hash(into hasher: inout Swift.Hasher)
1958 public var hashValue: Swift.Int {
1959 get
1960 }
1961 }
1962}
1963@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1964extension StoreKit.AdvancedCommerceProduct.PurchaseOption : Swift.CustomDebugStringConvertible {
1965 public var debugDescription: Swift.String {
1966 get
1967 }
1968}
1969@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1970public struct AdvancedCommerceProduct : Swift.Identifiable {
1971 public typealias ProductType = StoreKit.Product.ProductType
1972 @usableFromInline
1973 internal let backing: StoreKit.BackingValue
1974 public let id: StoreKit.AdvancedCommerceProduct.ID
1975 public let type: StoreKit.AdvancedCommerceProduct.ProductType
1976 public typealias ID = Swift.String
1977 public init(id: StoreKit.AdvancedCommerceProduct.ID) async throws
1978}
1979@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1980extension StoreKit.AdvancedCommerceProduct {
1981 public typealias PurchaseResult = StoreKit.Product.PurchaseResult
1982 @available(iOS 18.4, tvOS 18.4, visionOS 2.4, *)
1983 @available(macOS, unavailable)
1984 @available(watchOS, unavailable)
1985 public func purchase(compactJWS: Swift.String, confirmIn viewController: UIKit.UIViewController, options: Swift.Set<StoreKit.AdvancedCommerceProduct.PurchaseOption> = []) async throws -> StoreKit.AdvancedCommerceProduct.PurchaseResult
1986}
1987@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
1988extension StoreKit.AdvancedCommerceProduct {
1989 @inlinable public var latestTransaction: StoreKit.VerificationResult<StoreKit.Transaction>? {
1990 get async {
1991 await Transaction.latest(for: id)
1992 }
1993 }
1994 public var allTransactions: StoreKit.Transaction.Transactions {
1995 get
1996 }
1997 public var currentEntitlements: StoreKit.Transaction.Transactions {
1998 get
1999 }
2000}
2001@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2002extension StoreKit.AdvancedCommerceProduct : Swift.CustomDebugStringConvertible {
2003 @inlinable public var debugDescription: Swift.String {
2004 get {
2005 backing.debugDescription
2006 }
2007 }
2008}
2009@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2010extension StoreKit.AdvancedCommerceProduct : Swift.Equatable {
2011 @inlinable public static func == (lhs: StoreKit.AdvancedCommerceProduct, rhs: StoreKit.AdvancedCommerceProduct) -> Swift.Bool {
2012 lhs.backing == rhs.backing
2013 }
2014}
2015@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2016extension StoreKit.AdvancedCommerceProduct : Swift.Hashable {
2017 @inlinable public func hash(into hasher: inout Swift.Hasher) {
2018 hasher.combine(backing)
2019 }
2020 public var hashValue: Swift.Int {
2021 get
2022 }
2023}
2024@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2025extension StoreKit.AdvancedCommerceProduct : Swift.Sendable {
2026}
2027@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2028extension StoreKit.Product.SubscriptionInfo {
2029 public struct RenewalState : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
2030 public let rawValue: Swift.Int
2031 public init(rawValue: Swift.Int)
2032 public static let subscribed: StoreKit.Product.SubscriptionInfo.RenewalState
2033 public static let expired: StoreKit.Product.SubscriptionInfo.RenewalState
2034 public static let inBillingRetryPeriod: StoreKit.Product.SubscriptionInfo.RenewalState
2035 public static let inGracePeriod: StoreKit.Product.SubscriptionInfo.RenewalState
2036 public static let revoked: StoreKit.Product.SubscriptionInfo.RenewalState
2037 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2038 public typealias RawValue = Swift.Int
2039 }
2040 public struct RenewalInfo {
2041 public struct ExpirationReason : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
2042 public let rawValue: Swift.Int
2043 public init(rawValue: Swift.Int)
2044 public static let autoRenewDisabled: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason
2045 public static let billingError: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason
2046 public static let didNotConsentToPriceIncrease: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason
2047 public static let productUnavailable: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason
2048 public static let unknown: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason
2049 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2050 public typealias RawValue = Swift.Int
2051 }
2052 @frozen public enum PriceIncreaseStatus : Swift.Equatable, Swift.Hashable {
2053 case noIncreasePending
2054 case pending
2055 case agreed
2056 public static func == (a: StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus, b: StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus) -> Swift.Bool
2057 public func hash(into hasher: inout Swift.Hasher)
2058 public var hashValue: Swift.Int {
2059 get
2060 }
2061 }
2062 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2063 public struct CommitmentInfo : Swift.Sendable, Swift.Hashable {
2064 public let autoRenewPreference: Swift.String
2065 public let renewalBillingPlanType: StoreKit.SubscriptionInfo.BillingPlanType
2066 public let renewalDate: Foundation.Date
2067 public let renewalPrice: Foundation.Decimal
2068 public let willAutoRenew: Swift.Bool
2069 public static func == (a: StoreKit.Product.SubscriptionInfo.RenewalInfo.CommitmentInfo, b: StoreKit.Product.SubscriptionInfo.RenewalInfo.CommitmentInfo) -> Swift.Bool
2070 public func hash(into hasher: inout Swift.Hasher)
2071 public var hashValue: Swift.Int {
2072 get
2073 }
2074 }
2075 @usableFromInline
2076 internal let backing: StoreKit.BackingValue
2077 public var jsonRepresentation: Foundation.Data {
2078 get
2079 }
2080 public let originalTransactionID: Swift.UInt64
2081 public let currentProductID: Swift.String
2082 public let willAutoRenew: Swift.Bool
2083 public let autoRenewPreference: Swift.String?
2084 public let expirationReason: StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason?
2085 public let priceIncreaseStatus: StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus
2086 public let isInBillingRetry: Swift.Bool
2087 public let gracePeriodExpirationDate: Foundation.Date?
2088 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2089 public let offer: StoreKit.Transaction.Offer?
2090 @available(iOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.id", message: "Use the offer property instead.")
2091 @available(macOS, introduced: 12.0, deprecated: 15.0, renamed: "offer.id", message: "Use the offer property instead.")
2092 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.id", message: "Use the offer property instead.")
2093 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.id", message: "Use the offer property instead.")
2094 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.id", message: "Use the offer property instead.")
2095 public var offerID: Swift.String? {
2096 get
2097 }
2098 @available(iOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.type", message: "Use the offer property instead.")
2099 @available(macOS, introduced: 12.0, deprecated: 15.0, renamed: "offer.type", message: "Use the offer property instead.")
2100 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.type", message: "Use the offer property instead.")
2101 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.type", message: "Use the offer property instead.")
2102 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.type", message: "Use the offer property instead.")
2103 public var offerType: StoreKit.Transaction.OfferType? {
2104 get
2105 }
2106 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
2015 }
2016}
2017@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2018extension StoreKit::Product {
2019 public var subscriptionPeriodUnitFormatStyle: StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit.StoreKit::FormatStyle {
2020 get
2021 }
2022}
2023@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2024public enum AppStore {
2025 public static var canMakePayments: Swift::Bool {
2026 get
2027 }
2028 public static var deviceVerificationID: Foundation::UUID? {
2029 get
2030 }
2031}
2032@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2033extension StoreKit::AppStore {
2034 public static func sync() async throws
2035}
2036@available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
2037@available(macOS, unavailable)
2038@available(watchOS, unavailable)
2039@available(tvOS, unavailable)
2040extension StoreKit::AppStore {
2041 @available(iOS 15.0, macCatalyst 15.0, visionOS 1.0, *)
2042 @available(macOS, unavailable)
2043 @available(watchOS, unavailable)
2044 @available(tvOS, unavailable)
2045 @_Concurrency::MainActor public static func showManageSubscriptions(in scene: UIKit::UIWindowScene) async throws
2046 @available(iOS 17.0, macCatalyst 17.0, visionOS 1.0, *)
2047 @available(macOS, unavailable)
2048 @available(watchOS, unavailable)
2049 @available(tvOS, unavailable)
2050 @_Concurrency::MainActor public static func showManageSubscriptions(in scene: UIKit::UIWindowScene, subscriptionGroupID: Swift::String) async throws
2051}
2052extension StoreKit::AppStore {
2053 @available(iOS 26.0, tvOS 26.0, *)
2054 @available(macOS, unavailable)
2055 @available(watchOS, unavailable)
2056 @available(visionOS, unavailable)
2057 @_Concurrency::MainActor public static func presentMerchandising(_ kind: StoreKit::AppStoreMerchandisingKind, from controller: UIKit::UIViewController) async throws -> StoreKit::AppStoreMerchandisingKind.StoreKit::PresentationResult
2058}
2059extension StoreKit::AppStore {
2060 @available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
2061 @available(macOS, unavailable)
2062 @available(watchOS, unavailable)
2063 @available(tvOS, unavailable)
2064 @_Concurrency::MainActor public static func requestReview(in scene: UIKit::UIWindowScene)
2065}
2066@available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2067extension StoreKit::AppStore {
2068 public struct Environment : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
2069 public let rawValue: Swift::String
2070 public init(rawValue: Swift::String)
2071 public static let production: StoreKit::AppStore.StoreKit::Environment
2072 public static let sandbox: StoreKit::AppStore.StoreKit::Environment
2073 public static let xcode: StoreKit::AppStore.StoreKit::Environment
2074 @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2075 public typealias RawValue = Swift::String
2076 }
2077}
2078@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2079extension StoreKit::AppStore {
2080 public struct Platform : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable, Swift::Sendable {
2081 public let rawValue: Swift::String
2082 public init(rawValue: Swift::String)
2083 public static let iOS: StoreKit::AppStore.StoreKit::Platform
2084 public static let macOS: StoreKit::AppStore.StoreKit::Platform
2085 public static let tvOS: StoreKit::AppStore.StoreKit::Platform
2086 public static let visionOS: StoreKit::AppStore.StoreKit::Platform
2087 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2088 public static var managed: StoreKit::AppStore.StoreKit::Platform {
2089 get { Self(rawValue: "MANAGED") }
2090 }
2091 @available(macOS 15.4, iOS 18.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2092 public typealias RawValue = Swift::String
2093 }
2094}
2095@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2096extension StoreKit::AppStore : Swift::Sendable {
2097}
2098@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
2099extension StoreKit::AppStore {
2100 @usableFromInline
2101 internal static var canMakePaymentsAsyncUsableFromInline: Swift::Bool {
2102 get async throws
2103 }
2104}
2105@available(iOS 26.0, tvOS 26.0, macOS 26.2, *)
2106@available(watchOS, unavailable)
2107@available(visionOS, unavailable)
2108public struct AppStoreMerchandisingKind : Swift::Sendable {
2109 public enum PresentationResult : Swift::Sendable {
2110 case dismissed
2111 case purchaseCompleted(StoreKit::Product.StoreKit::PurchaseResult)
2112 }
2113 public static func subscriptionBundle(_ groupID: Swift::String) -> StoreKit::AppStoreMerchandisingKind
2114}
2115extension StoreKit::AppStore {
2116 @available(iOS 26.2, macOS 26.2, tvOS 26.2, watchOS 26.2, visionOS 26.2, *)
2117 public static var ageRatingCode: Swift::Int? {
2118 get async
2119 }
2120}
2121@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2122extension StoreKit::AdvancedCommerceProduct {
2123 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2124 public struct PurchaseOption : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2125 public static func onStorefrontChange(shouldContinuePurchase: @escaping @Sendable (StoreKit::Storefront) -> Swift::Bool) -> StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseOption
2126 public static func == (a: StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseOption, b: StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseOption) -> Swift::Bool
2127 public func hash(into hasher: inout Swift::Hasher)
2128 public var hashValue: Swift::Int {
2129 get
2130 }
2131 }
2132}
2133@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2134extension StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseOption : Swift::CustomDebugStringConvertible {
2135 public var debugDescription: Swift::String {
2136 get
2137 }
2138}
2139@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2140public struct AdvancedCommerceProduct : Swift::Identifiable {
2141 public typealias ProductType = StoreKit::Product.StoreKit::ProductType
2142 @usableFromInline
2143 internal let backing: StoreKit::BackingValue
2144 public let id: StoreKit::AdvancedCommerceProduct.StoreKit::ID
2145 public let type: StoreKit::AdvancedCommerceProduct.StoreKit::ProductType
2146 public typealias ID = Swift::String
2147 public init(id: StoreKit::AdvancedCommerceProduct.StoreKit::ID) async throws
2148}
2149@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2150extension StoreKit::AdvancedCommerceProduct {
2151 public typealias PurchaseResult = StoreKit::Product.StoreKit::PurchaseResult
2152 @available(iOS 18.4, tvOS 18.4, visionOS 2.4, *)
2153 @available(macOS, unavailable)
2154 @available(watchOS, unavailable)
2155 public func purchase(compactJWS: Swift::String, confirmIn viewController: UIKit::UIViewController, options: Swift::Set<StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseOption> = []) async throws -> StoreKit::AdvancedCommerceProduct.StoreKit::PurchaseResult
2156}
2157@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2158extension StoreKit::AdvancedCommerceProduct {
2159 @inlinable public var latestTransaction: StoreKit::VerificationResult<StoreKit::Transaction>? {
2160 get async {
2161 await Transaction.latest(for: id)
2162 }
2163 }
2164 public var allTransactions: StoreKit::Transaction.StoreKit::Transactions {
2165 get
2166 }
2167 public var currentEntitlements: StoreKit::Transaction.StoreKit::Transactions {
2168 get
2169 }
2170}
2171@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2172extension StoreKit::AdvancedCommerceProduct : Swift::CustomDebugStringConvertible {
2173 @inlinable public var debugDescription: Swift::String {
2174 get {
2175 backing.debugDescription
2176 }
2177 }
2178}
2179@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2180extension StoreKit::AdvancedCommerceProduct : Swift::Equatable {
2181 @inlinable public static func == (lhs: StoreKit::AdvancedCommerceProduct, rhs: StoreKit::AdvancedCommerceProduct) -> Swift::Bool {
2182 lhs.backing == rhs.backing
2183 }
2184}
2185@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2186extension StoreKit::AdvancedCommerceProduct : Swift::Hashable {
2187 @inlinable public func hash(into hasher: inout Swift::Hasher) {
2188 hasher.combine(backing)
2189 }
2190 public var hashValue: Swift::Int {
2191 get
2192 }
2193}
2194@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2195extension StoreKit::AdvancedCommerceProduct : Swift::Sendable {
2196}
2197@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2198extension StoreKit::Product.StoreKit::SubscriptionInfo {
2199 public struct RenewalState : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
2200 public let rawValue: Swift::Int
2201 public init(rawValue: Swift::Int)
2202 public static let subscribed: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2203 public static let expired: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2204 public static let inBillingRetryPeriod: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2205 public static let inGracePeriod: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2206 public static let revoked: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2207 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2208 public typealias RawValue = Swift::Int
2209 }
2210 public struct RenewalInfo {
2211 public struct ExpirationReason : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
2212 public let rawValue: Swift::Int
2213 public init(rawValue: Swift::Int)
2214 public static let autoRenewDisabled: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason
2215 public static let billingError: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason
2216 public static let didNotConsentToPriceIncrease: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason
2217 public static let productUnavailable: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason
2218 public static let unknown: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason
2219 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2220 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2221 public static var unbundled: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason {
2222 get { Self(rawValue: 6) }
2223 }
2224 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2225 public typealias RawValue = Swift::Int
2226 }
2227 @frozen public enum PriceIncreaseStatus : Swift::Equatable, Swift::Hashable {
2228 case noIncreasePending
2229 case pending
2230 case agreed
2231 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus) -> Swift::Bool
2232 public func hash(into hasher: inout Swift::Hasher)
2233 public var hashValue: Swift::Int {
2234 get
2235 }
2236 }
2237 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2238 public struct CommitmentInfo : Swift::Sendable, Swift::Hashable {
2239 public let autoRenewPreference: Swift::String
2240 public let renewalBillingPlanType: StoreKit::SubscriptionInfo.StoreKit::BillingPlanType
2241 public let renewalDate: Foundation::Date
2242 public let renewalPrice: Foundation::Decimal
2243 public let willAutoRenew: Swift::Bool
2244 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::CommitmentInfo, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::CommitmentInfo) -> Swift::Bool
2245 public func hash(into hasher: inout Swift::Hasher)
2246 public var hashValue: Swift::Int {
2247 get
2248 }
2249 }
2250 @usableFromInline
2251 internal let backing: StoreKit::BackingValue
2252 public var jsonRepresentation: Foundation::Data {
2253 get
2254 }
2255 public let originalTransactionID: Swift::UInt64
2256 public let currentProductID: Swift::String
2257 public let willAutoRenew: Swift::Bool
2258 public let autoRenewPreference: Swift::String?
2259 public let expirationReason: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason?
2260 public let priceIncreaseStatus: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus
2261 public let isInBillingRetry: Swift::Bool
2262 public let gracePeriodExpirationDate: Foundation::Date?
2263 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2264 public let offer: StoreKit::Transaction.StoreKit::Offer?
2265 @available(iOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.id", message: "Use the offer property instead.")
2266 @available(macOS, introduced: 12.0, deprecated: 15.0, renamed: "offer.id", message: "Use the offer property instead.")
2267 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.id", message: "Use the offer property instead.")
2268 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.id", message: "Use the offer property instead.")
2269 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.id", message: "Use the offer property instead.")
2270 public var offerID: Swift::String? {
2271 get
2272 }
2273 @available(iOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.type", message: "Use the offer property instead.")
2274 @available(macOS, introduced: 12.0, deprecated: 15.0, renamed: "offer.type", message: "Use the offer property instead.")
2275 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.type", message: "Use the offer property instead.")
2276 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.type", message: "Use the offer property instead.")
2277 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.type", message: "Use the offer property instead.")
2278 public var offerType: StoreKit::Transaction.StoreKit::OfferType? {
2279 get
2280 }
2281 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
… 2 unchanged lines …
2109 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2110 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2111 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2112 public var offerPaymentModeStringRepresentation: Swift.String? {
2113 get {
2114 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2115 return offer?.paymentMode?.rawValue
2284 @available(tvOS, introduced: 15.0, deprecated: 18.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2285 @available(watchOS, introduced: 8.0, deprecated: 11.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2286 @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "offer.paymentMode.rawValue", message: "Use the offer property instead.")
2287 public var offerPaymentModeStringRepresentation: Swift::String? {
2288 get {
2289 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2290 return offer?.paymentMode?.rawValue
… 13 unchanged lines …
2129 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the offer property instead.")
2130 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the offer property instead.")
2131 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the offer property instead.")
2132 public var offerPeriodStringRepresentation: Swift.String? {
2133 get {
2134
2135
2304 @available(tvOS, introduced: 15.0, deprecated: 18.4, message: "Use the offer property instead.")
2305 @available(watchOS, introduced: 8.0, deprecated: 11.4, message: "Use the offer property instead.")
2306 @available(visionOS, introduced: 1.0, deprecated: 2.4, message: "Use the offer property instead.")
2307 public var offerPeriodStringRepresentation: Swift::String? {
2308 get {
2309
2310
… 5 unchanged lines …
2141 }
2142 }
2143 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2144 public let environment: StoreKit.AppStore.Environment
2145 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
2146 @available(iOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2147 @available(macOS, introduced: 12.0, deprecated: 13.0, message: "Use the environment property instead.")
2148 @available(tvOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2149 @available(watchOS, introduced: 8.0, deprecated: 9.0, message: "Use the environment property instead.")
2150 @available(macCatalyst, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2151 @available(visionOS, unavailable)
2152 public var environmentStringRepresentation: Swift.String {
2153 get {
2154 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
2155 return environment.rawValue
2316 }
2317 }
2318 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2319 public let environment: StoreKit::AppStore.StoreKit::Environment
2320 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
2321 @available(iOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2322 @available(macOS, introduced: 12.0, deprecated: 13.0, message: "Use the environment property instead.")
2323 @available(tvOS, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2324 @available(watchOS, introduced: 8.0, deprecated: 9.0, message: "Use the environment property instead.")
2325 @available(macCatalyst, introduced: 15.0, deprecated: 16.0, message: "Use the environment property instead.")
2326 @available(visionOS, unavailable)
2327 public var environmentStringRepresentation: Swift::String {
2328 get {
2329 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
2330 return environment.rawValue
… 9 unchanged lines …
2165 }
2166 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2167 @usableFromInline
2168 internal let recentSubscriptionStartDateStorage: Foundation.Date
2169 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
2170 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
2171 public var recentSubscriptionStartDate: Foundation.Date {
2172 get {
2173 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
2174 return recentSubscriptionStartDateStorage
2340 }
2341 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2342 @usableFromInline
2343 internal let recentSubscriptionStartDateStorage: Foundation::Date
2344 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
2345 @backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
2346 public var recentSubscriptionStartDate: Foundation::Date {
2347 get {
2348 if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) {
2349 return recentSubscriptionStartDateStorage
… 9 unchanged lines …
2184 }
2185 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
2186 @usableFromInline
2187 internal let renewalDateStorage: Foundation.Date?
2188 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
2189 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
2190 public var renewalDate: Foundation.Date? {
2191 get {
2192 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
2193 return renewalDateStorage
2359 }
2360 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, *)
2361 @usableFromInline
2362 internal let renewalDateStorage: Foundation::Date?
2363 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, macCatalyst 15.0, visionOS 1.0, *)
2364 @backDeployed(before: iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, macCatalyst 17.0)
2365 public var renewalDate: Foundation::Date? {
2366 get {
2367 if #available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *) {
2368 return renewalDateStorage
… 9 unchanged lines …
2203 }
2204 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2205 @usableFromInline
2206 internal let renewalPriceStorage: Foundation.Decimal?
2207 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2208 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
2209 public var renewalPrice: Foundation.Decimal? {
2210 get {
2211 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2212 return renewalPriceStorage
2378 }
2379 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2380 @usableFromInline
2381 internal let renewalPriceStorage: Foundation::Decimal?
2382 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2383 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
2384 public var renewalPrice: Foundation::Decimal? {
2385 get {
2386 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2387 return renewalPriceStorage
… 12 unchanged lines …
2225 }
2226 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2227 @usableFromInline
2228 internal let currencyStorage: Foundation.Locale.Currency?
2229 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2230 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
2231 public var currency: Foundation.Locale.Currency? {
2232 get {
2233 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2234 return currencyStorage
2400 }
2401 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2402 @usableFromInline
2403 internal let currencyStorage: Foundation::Locale.Foundation::Currency?
2404 @available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, visionOS 1.0, *)
2405 @backDeployed(before: iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0)
2406 public var currency: Foundation::Locale.Foundation::Currency? {
2407 get {
2408 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2409 return currencyStorage
… 13 unchanged lines …
2248 @available(tvOS, introduced: 15.0, deprecated: 16.0, renamed: "currency.identifier", message: "Use the currency property instead.")
2249 @available(watchOS, introduced: 8.0, deprecated: 9.0, renamed: "currency.identifier", message: "Use the currency property instead.")
2250 @available(visionOS, unavailable)
2251 public var currencyCode: Swift.String? {
2252 get {
2253 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2254 return currencyStorage?.identifier
2423 @available(tvOS, introduced: 15.0, deprecated: 16.0, renamed: "currency.identifier", message: "Use the currency property instead.")
2424 @available(watchOS, introduced: 8.0, deprecated: 9.0, renamed: "currency.identifier", message: "Use the currency property instead.")
2425 @available(visionOS, unavailable)
2426 public var currencyCode: Swift::String? {
2427 get {
2428 if #available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *) {
2429 return currencyStorage?.identifier
… 8 unchanged lines …
2263 }
2264 }
2265 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2266 public let eligibleWinBackOfferIDs: [Swift.String]
2267 public let deviceVerification: Foundation.Data
2268 public let deviceVerificationNonce: Foundation.UUID
2269 public let signedDate: Foundation.Date
2270 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2271 public let advancedCommerceInfo: StoreKit.Product.SubscriptionInfo.RenewalInfo.AdvancedCommerceInfo?
2272 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2273 @usableFromInline
2274 internal let appAccountTokenStorage: Foundation.UUID?
2275 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2276 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
2277 public var appAccountToken: Foundation.UUID? {
2278 get {
2279 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
2280 return appAccountTokenStorage
2438 }
2439 }
2440 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2441 public let eligibleWinBackOfferIDs: [Swift::String]
2442 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2443 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2444 public var bundleProductID: Swift::String? {
2445 get {
2446 backing.value(
2447 atKeyPath: "bundleProductId",
2448 sentinel: nil,
2449 transform: String.init
2450 )
2451 }
2452 }
2453 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2454 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2455 public var bundleSubscriptionGroupID: Swift::String? {
2456 get {
2457 backing.value(
2458 atKeyPath: "bundleSubscriptionGroupIdentifier",
2459 sentinel: nil,
2460 transform: String.init
2461 )
2462 }
2463 }
2464 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2465 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2466 public var bundleOriginalTransactionID: Swift::String? {
2467 get {
2468 backing.value(
2469 atKeyPath: "bundleOriginalTransactionId",
2470 sentinel: nil,
2471 transform: String.init
2472 )
2473 }
2474 }
2475 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2476 @backDeployed(before: iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0)
2477 public var willUnbundle: Swift::Bool {
2478 get {
2479 backing.value(
2480 atKeyPath: "isPendingUnbundle",
2481 sentinel: false,
2482 transform: Bool.init
2483 )
2484 }
2485 }
2486 public let deviceVerification: Foundation::Data
2487 public let deviceVerificationNonce: Foundation::UUID
2488 public let signedDate: Foundation::Date
2489 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2490 public let advancedCommerceInfo: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::AdvancedCommerceInfo?
2491 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2492 @usableFromInline
2493 internal let appAccountTokenStorage: Foundation::UUID?
2494 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2495 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
2496 public var appAccountToken: Foundation::UUID? {
2497 get {
2498 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
2499 return appAccountTokenStorage
… 9 unchanged lines …
2290 }
2291 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2292 @usableFromInline
2293 internal let appTransactionIDStorage: Swift.String
2294 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2295 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
2296 public var appTransactionID: Swift.String {
2297 get {
2298 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
2299 return appTransactionIDStorage
2509 }
2510 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2511 @usableFromInline
2512 internal let appTransactionIDStorage: Swift::String
2513 @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2514 @backDeployed(before: iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4)
2515 public var appTransactionID: Swift::String {
2516 get {
2517 if #available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *) {
2518 return appTransactionIDStorage
… 8 unchanged lines …
2308 }
2309 }
2310 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2311 public let commitmentInfo: StoreKit.Product.SubscriptionInfo.RenewalInfo.CommitmentInfo?
2312 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2313 public let renewalBillingPlanType: StoreKit.SubscriptionInfo.BillingPlanType?
2314 }
2315 public struct Status : Swift.Equatable, Swift.Hashable {
2316 public let state: StoreKit.Product.SubscriptionInfo.RenewalState
2317 public let transaction: StoreKit.VerificationResult<StoreKit.Transaction>
2318 public let renewalInfo: StoreKit.VerificationResult<StoreKit.Product.SubscriptionInfo.RenewalInfo>
2319 public static func == (a: StoreKit.Product.SubscriptionInfo.Status, b: StoreKit.Product.SubscriptionInfo.Status) -> Swift.Bool
2320 public func hash(into hasher: inout Swift.Hasher)
2321 public var hashValue: Swift.Int {
2322 get
2323 }
2324 }
2325 @inlinable public var status: [StoreKit.Product.SubscriptionInfo.Status] {
2326 get async throws {
2327 try await Product.SubscriptionInfo.status(for: subscriptionGroupID)
2328 }
2329 }
2330 public static func status(for groupID: Swift.String) async throws -> [StoreKit.Product.SubscriptionInfo.Status]
2331 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2332 public static func status(transactionID: Swift.UInt64) async throws -> StoreKit.SubscriptionStatus?
2333}
2334@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2335extension StoreKit.Product.SubscriptionInfo.Status {
2336 public struct Statuses : _Concurrency.AsyncSequence {
2337 public typealias Element = StoreKit.Product.SubscriptionInfo.Status
2338 public struct AsyncIterator : _Concurrency.AsyncIteratorProtocol {
2339 public mutating func next() async -> StoreKit.Product.SubscriptionInfo.Status.Statuses.Element?
2340 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2341 public typealias Element = StoreKit.Product.SubscriptionInfo.Status.Statuses.Element
2342 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
2343 @_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
2344 }
2345 public func makeAsyncIterator() -> StoreKit.Product.SubscriptionInfo.Status.Statuses.AsyncIterator
2346 @available(iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, macOS 15.0, *)
2347 @_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
2348 }
2349 public static var updates: StoreKit.Product.SubscriptionInfo.Status.Statuses {
2350 get
2351 }
2352}
2353@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2354extension StoreKit.Product.SubscriptionInfo.Status {
2355 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2356 public static var all: _Concurrency.AsyncStream<(groupID: Swift.String, statuses: [StoreKit.Product.SubscriptionInfo.Status])> {
2357 get
2358 }
2359}
2360@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2361extension StoreKit.Product.SubscriptionInfo.RenewalInfo : Swift.Equatable {
2362 public static func == (lhs: StoreKit.Product.SubscriptionInfo.RenewalInfo, rhs: StoreKit.Product.SubscriptionInfo.RenewalInfo) -> Swift.Bool
2363}
2364@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2365extension StoreKit.Product.SubscriptionInfo.RenewalInfo : Swift.Hashable {
2366 public func hash(into hasher: inout Swift.Hasher)
2367 public var hashValue: Swift.Int {
2368 get
2369 }
2370}
2371@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2372extension StoreKit.Product.SubscriptionInfo.RenewalInfo : Swift.CustomDebugStringConvertible {
2373 @inlinable public var debugDescription: Swift.String {
2374 get {
2375 backing.debugDescription
2376 }
2377 }
2378}
2379@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2380extension StoreKit.Product.SubscriptionInfo.RenewalState : Swift.Sendable {
2381}
2382@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2383extension StoreKit.Product.SubscriptionInfo.Status : Swift.Sendable {
2384}
2385@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2386extension StoreKit.Product.SubscriptionInfo.Status.Statuses : Swift.Sendable {
2387}
2388@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2389extension StoreKit.Product.SubscriptionInfo.RenewalInfo : Swift.Sendable {
2390}
2391@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2392extension StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason : Swift.Sendable {
2393}
2394@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2395extension StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus : Swift.Sendable {
2396}
2397@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2398public typealias SubscriptionRenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
2399@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2400public typealias SubscriptionStatus = StoreKit.Product.SubscriptionInfo.Status
2401@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2402public typealias SubscriptionRenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
2403@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2404public enum StoreKitError : Swift.Error {
2405 case unknown
2406 case userCancelled
2407 case networkError(Foundation.URLError)
2408 case systemError(any Swift.Error)
2409 case notAvailableInStorefront
2410 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2411 case notEntitled
2412 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2413 case unsupported
2414}
2415@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2416extension StoreKit.StoreKitError : Swift.Sendable {
2417}
2418@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2419extension StoreKit.StoreKitError : Foundation.LocalizedError {
2420 public var errorDescription: Swift.String? {
2421 get
2422 }
2423 public var failureReason: Swift.String? {
2424 get
2425 }
2426 public var recoverySuggestion: Swift.String? {
2427 get
2428 }
2429}
2430@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2431extension StoreKit.Product.PurchaseError : Foundation.LocalizedError {
2432 public var errorDescription: Swift.String? {
2433 get
2434 }
2435 public var failureReason: Swift.String? {
2436 get
2437 }
2438 public var recoverySuggestion: Swift.String? {
2439 get
2440 }
2441}
2442@available(iOS 15.4, macCatalyst 15.4, macOS 12.3, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2443extension StoreKit.Transaction.RefundRequestError : Foundation.LocalizedError {
2444 public var errorDescription: Swift.String? {
2445 get
2446 }
2447 public var failureReason: Swift.String? {
2448 get
2449 }
2450 public var recoverySuggestion: Swift.String? {
2451 get
2452 }
2453}
2454@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2455extension StoreKit.VerificationResult.VerificationError : Foundation.LocalizedError {
2456 public var errorDescription: Swift.String? {
2457 get
2458 }
2459 public var failureReason: Swift.String? {
2460 get
2461 }
2462 public var recoverySuggestion: Swift.String? {
2463 get
2464 }
2465}
2466@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2467extension StoreKit.Product.ProductType {
2468 public var localizedDescription: Swift.String {
2469 get
2470 }
2471}
2472@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2473extension StoreKit.Product.SubscriptionInfo.RenewalState {
2474 public var localizedDescription: Swift.String {
2475 get
2476 }
2477}
2478@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2479extension StoreKit.Product.SubscriptionInfo.RenewalInfo.ExpirationReason {
2480 public var localizedDescription: Swift.String {
2481 get
2482 }
2483}
2484@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2485extension StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus {
2486 public var localizedDescription: Swift.String {
2487 get
2488 }
2489}
2490@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2491extension StoreKit.Product.SubscriptionOffer.OfferType {
2492 public var localizedDescription: Swift.String {
2493 get
2494 }
2495}
2496@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2497extension StoreKit.Transaction.OfferType {
2498 public var localizedDescription: Swift.String {
2499 get
2500 }
2501}
2502@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2503extension StoreKit.Product.SubscriptionOffer.PaymentMode {
2504 public var localizedDescription: Swift.String {
2505 get
2506 }
2507}
2508@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2509extension StoreKit.Product.SubscriptionPeriod.Unit {
2510 public var localizedDescription: Swift.String {
2511 get
2512 }
2513}
2514@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2515extension StoreKit.Transaction.RevocationReason {
2516 public var localizedDescription: Swift.String {
2517 get
2518 }
2519}
2520@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2521extension StoreKit.Transaction.OwnershipType {
2522 public var localizedDescription: Swift.String {
2523 get
2524 }
2525}
2526@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
2527@available(macOS, unavailable)
2528@available(tvOS, unavailable)
2529@available(watchOS, unavailable)
2530extension StoreKit.Message.Reason {
2531 public var localizedDescription: Swift.String {
2532 get
2533 }
2534}
2535@available(iOS 18.1, macOS 15.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, *)
2536public enum ExternalPurchaseCustomLink : Swift.Sendable {
2537 public enum NoticeResult : Swift.Hashable, Swift.Sendable {
2538 case cancelled
2539 case continued
2540 public static func == (a: StoreKit.ExternalPurchaseCustomLink.NoticeResult, b: StoreKit.ExternalPurchaseCustomLink.NoticeResult) -> Swift.Bool
2541 public func hash(into hasher: inout Swift.Hasher)
2542 public var hashValue: Swift.Int {
2543 get
2544 }
2545 }
2546 public enum NoticeType : Swift.Int, Swift.Hashable, Swift.Sendable {
2547 case withinApp
2548 case browser
2549 public init?(rawValue: Swift.Int)
2550 @available(iOS 18.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, macOS 15.1, *)
2551 public typealias RawValue = Swift.Int
2552 public var rawValue: Swift.Int {
2553 get
2554 }
2555 }
2556 public struct Token : Swift.Hashable, Swift.Sendable {
2557 public let value: Swift.String
2558 public static func == (a: StoreKit.ExternalPurchaseCustomLink.Token, b: StoreKit.ExternalPurchaseCustomLink.Token) -> Swift.Bool
2559 public func hash(into hasher: inout Swift.Hasher)
2560 public var hashValue: Swift.Int {
2561 get
2562 }
2563 }
2564 public static var isEligible: Swift.Bool {
2565 get async
2566 }
2567 public static func showNotice(type: StoreKit.ExternalPurchaseCustomLink.NoticeType) async throws -> StoreKit.ExternalPurchaseCustomLink.NoticeResult
2568 public static func token(for tokenType: Swift.String) async throws -> StoreKit.ExternalPurchaseCustomLink.Token?
2569}
2570@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2571extension StoreKit.Product {
2572 public struct SubscriptionOffer : Swift.Equatable, Swift.Hashable {
2573 public struct OfferType : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
2574 public let rawValue: Swift.String
2575 public init(rawValue: Swift.String)
2576 public static let introductory: StoreKit.Product.SubscriptionOffer.OfferType
2577 public static let promotional: StoreKit.Product.SubscriptionOffer.OfferType
2578 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2579 public static let winBack: StoreKit.Product.SubscriptionOffer.OfferType
2580 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2581 public typealias RawValue = Swift.String
2582 }
2583 public struct PaymentMode : Swift.RawRepresentable, Swift.Equatable, Swift.Hashable {
2584 public let rawValue: Swift.String
2585 public init(rawValue: Swift.String)
2586 public static let payAsYouGo: StoreKit.Product.SubscriptionOffer.PaymentMode
2587 public static let payUpFront: StoreKit.Product.SubscriptionOffer.PaymentMode
2588 public static let freeTrial: StoreKit.Product.SubscriptionOffer.PaymentMode
2589 @available(iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, macOS 12.0, *)
2590 public typealias RawValue = Swift.String
2591 }
2592 public let id: Swift.String?
2593 public let type: StoreKit.Product.SubscriptionOffer.OfferType
2594 public let price: Foundation.Decimal
2595 public let displayPrice: Swift.String
2596 public let period: StoreKit.Product.SubscriptionPeriod
2597 public let periodCount: Swift.Int
2598 public let paymentMode: StoreKit.Product.SubscriptionOffer.PaymentMode
2599 public static func == (a: StoreKit.Product.SubscriptionOffer, b: StoreKit.Product.SubscriptionOffer) -> Swift.Bool
2600 public func hash(into hasher: inout Swift.Hasher)
2601 public var hashValue: Swift.Int {
2602 get
2603 }
2604 }
2605}
2606@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2607extension StoreKit.Product.SubscriptionOffer : Swift.Sendable {
2608}
2609@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2610extension StoreKit.Product.SubscriptionOffer.OfferType : Swift.Sendable {
2611}
2612@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2613extension StoreKit.Product.SubscriptionOffer.PaymentMode : Swift.Sendable {
2614}
2615extension StoreKit.Product.SubscriptionOffer {
2616 @available(iOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2617 @available(macOS, introduced: 14.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2618 @available(tvOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2619 @available(watchOS, introduced: 10.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2620 @available(visionOS, introduced: 1.1, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2621 public struct Signature : Swift.Equatable, Swift.Hashable, Swift.Sendable {
2622 public var keyID: Swift.String
2623 public var nonce: Foundation.UUID
2624 public var timestamp: Swift.Int
2625 public var signature: Foundation.Data
2626 public init(keyID: Swift.String, nonce: Foundation.UUID, timestamp: Swift.Int, signature: Foundation.Data)
2627 public static func == (a: StoreKit.Product.SubscriptionOffer.Signature, b: StoreKit.Product.SubscriptionOffer.Signature) -> Swift.Bool
2628 public func hash(into hasher: inout Swift.Hasher)
2629 public var hashValue: Swift.Int {
2630 get
2631 }
2632 }
2633}
2634@available(iOS 15.4, macOS 14.4, macCatalyst 15.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2635public enum ExternalPurchaseLink : Swift.Sendable {
2636 public static var canOpen: Swift.Bool {
2637 get async
2638 }
2639 @available(iOS 17.5, macOS 14.5, macCatalyst 17.5, tvOS 17.5, watchOS 10.5, visionOS 1.2, *)
2640 public static var eligibleURLs: [Foundation.URL]? {
2641 get async
2642 }
2643 public static func open() async throws
2644 @available(iOS 17.5, macOS 14.5, macCatalyst 17.5, tvOS 17.5, watchOS 10.5, visionOS 1.2, *)
2645 public static func open(url: Foundation.URL) async throws
2646}
2647@available(iOS 15.4, macOS 14.4, macCatalyst 15.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2648public enum ExternalPurchase : Swift.Sendable {
2649 public enum NoticeResult : Swift.Hashable, Swift.Sendable {
2650 @available(macOS, unavailable)
2651 @available(tvOS, unavailable)
2652 @available(watchOS, unavailable)
2527 }
2528 }
2529 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2530 public let commitmentInfo: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::CommitmentInfo?
2531 @available(iOS 26.4, macOS 26.4, tvOS 26.4, watchOS 26.4, visionOS 26.4, *)
2532 public let renewalBillingPlanType: StoreKit::SubscriptionInfo.StoreKit::BillingPlanType?
2533 }
2534 public struct Status : Swift::Equatable, Swift::Hashable {
2535 public let state: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2536 public let transaction: StoreKit::VerificationResult<StoreKit::Transaction>
2537 public let renewalInfo: StoreKit::VerificationResult<StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo>
2538 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status) -> Swift::Bool
2539 public func hash(into hasher: inout Swift::Hasher)
2540 public var hashValue: Swift::Int {
2541 get
2542 }
2543 }
2544 @inlinable public var status: [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status] {
2545 get async throws {
2546 try await Product.SubscriptionInfo.status(for: subscriptionGroupID)
2547 }
2548 }
2549 public static func status(for groupID: Swift::String) async throws -> [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status]
2550 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2551 public static func status(transactionID: Swift::UInt64) async throws -> StoreKit::SubscriptionStatus?
2552}
2553@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2554extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status {
2555 public struct Statuses : _Concurrency::AsyncSequence {
2556 public typealias Element = StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status
2557 public struct AsyncIterator : _Concurrency::AsyncIteratorProtocol {
2558 public mutating func next() async -> StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status.StoreKit::Statuses.StoreKit::Element?
2559 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2560 public typealias Element = StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status.StoreKit::Statuses.StoreKit::Element
2561 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2562 @_implements(_Concurrency::AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift::Never
2563 }
2564 public func makeAsyncIterator() -> StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status.StoreKit::Statuses.StoreKit::AsyncIterator
2565 @available(macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2566 @_implements(_Concurrency::AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift::Never
2567 }
2568 public static var updates: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status.StoreKit::Statuses {
2569 get
2570 }
2571}
2572@available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2573extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status {
2574 @available(iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2575 public static var all: _Concurrency::AsyncStream<(groupID: Swift::String, statuses: [StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status])> {
2576 get
2577 }
2578}
2579@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2580extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo : Swift::Equatable {
2581 public static func == (lhs: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo, rhs: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo) -> Swift::Bool
2582}
2583@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2584extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo : Swift::Hashable {
2585 public func hash(into hasher: inout Swift::Hasher)
2586 public var hashValue: Swift::Int {
2587 get
2588 }
2589}
2590@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2591extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo : Swift::CustomDebugStringConvertible {
2592 @inlinable public var debugDescription: Swift::String {
2593 get {
2594 backing.debugDescription
2595 }
2596 }
2597}
2598@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2599extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState : Swift::Sendable {
2600}
2601@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2602extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status : Swift::Sendable {
2603}
2604@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2605extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status.StoreKit::Statuses : Swift::Sendable {
2606}
2607@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2608extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo : Swift::Sendable {
2609}
2610@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2611extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason : Swift::Sendable {
2612}
2613@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2614extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus : Swift::Sendable {
2615}
2616@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2617public typealias SubscriptionRenewalState = StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState
2618@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2619public typealias SubscriptionStatus = StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::Status
2620@available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2621public typealias SubscriptionRenewalInfo = StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo
2622@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2623public enum StoreKitError : Swift::Error {
2624 case unknown
2625 case userCancelled
2626 case networkError(Foundation::URLError)
2627 case systemError(any Swift::Error)
2628 case notAvailableInStorefront
2629 @available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2630 case notEntitled
2631 @available(iOS 18.4, macOS 15.4, tvOS 18.4, watchOS 11.4, visionOS 2.4, *)
2632 case unsupported
2633 @available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
2634 case invalidPresentationContext
2635}
2636@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2637extension StoreKit::StoreKitError : Swift::Sendable {
2638}
2639@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2640extension StoreKit::StoreKitError : Foundation::LocalizedError {
2641 public var errorDescription: Swift::String? {
2642 get
2643 }
2644 public var failureReason: Swift::String? {
2645 get
2646 }
2647 public var recoverySuggestion: Swift::String? {
2648 get
2649 }
2650}
2651@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2652extension StoreKit::Product.StoreKit::PurchaseError : Foundation::LocalizedError {
2653 public var errorDescription: Swift::String? {
2654 get
2655 }
2656 public var failureReason: Swift::String? {
2657 get
2658 }
2659 public var recoverySuggestion: Swift::String? {
2660 get
2661 }
2662}
2663@available(iOS 15.4, macCatalyst 15.4, macOS 12.3, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2664extension StoreKit::Transaction.StoreKit::RefundRequestError : Foundation::LocalizedError {
2665 public var errorDescription: Swift::String? {
2666 get
2667 }
2668 public var failureReason: Swift::String? {
2669 get
2670 }
2671 public var recoverySuggestion: Swift::String? {
2672 get
2673 }
2674}
2675@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2676extension StoreKit::VerificationResult.StoreKit::VerificationError : Foundation::LocalizedError {
2677 public var errorDescription: Swift::String? {
2678 get
2679 }
2680 public var failureReason: Swift::String? {
2681 get
2682 }
2683 public var recoverySuggestion: Swift::String? {
2684 get
2685 }
2686}
2687@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2688extension StoreKit::Product.StoreKit::ProductType {
2689 public var localizedDescription: Swift::String {
2690 get
2691 }
2692}
2693@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2694extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalState {
2695 public var localizedDescription: Swift::String {
2696 get
2697 }
2698}
2699@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2700extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::ExpirationReason {
2701 public var localizedDescription: Swift::String {
2702 get
2703 }
2704}
2705@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2706extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus {
2707 public var localizedDescription: Swift::String {
2708 get
2709 }
2710}
2711@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2712extension StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType {
2713 public var localizedDescription: Swift::String {
2714 get
2715 }
2716}
2717@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2718extension StoreKit::Transaction.StoreKit::OfferType {
2719 public var localizedDescription: Swift::String {
2720 get
2721 }
2722}
2723@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2724extension StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode {
2725 public var localizedDescription: Swift::String {
2726 get
2727 }
2728}
2729@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2730extension StoreKit::Product.StoreKit::SubscriptionPeriod.StoreKit::Unit {
2731 public var localizedDescription: Swift::String {
2732 get
2733 }
2734}
2735@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2736extension StoreKit::Transaction.StoreKit::RevocationReason {
2737 public var localizedDescription: Swift::String {
2738 get
2739 }
2740}
2741@available(iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5, visionOS 1.0, *)
2742extension StoreKit::Transaction.StoreKit::OwnershipType {
2743 public var localizedDescription: Swift::String {
2744 get
2745 }
2746}
2747@available(iOS 16.0, macCatalyst 16.0, visionOS 1.0, *)
2748@available(macOS, unavailable)
2749@available(tvOS, unavailable)
2750@available(watchOS, unavailable)
2751extension StoreKit::Message.StoreKit::Reason {
2752 public var localizedDescription: Swift::String {
2753 get
2754 }
2755}
2756@available(iOS 18.1, macOS 15.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, *)
2757public enum ExternalPurchaseCustomLink : Swift::Sendable {
2758 public enum NoticeResult : Swift::Hashable, Swift::Sendable {
2759 case cancelled
2760 case continued
2761 public static func == (a: StoreKit::ExternalPurchaseCustomLink.StoreKit::NoticeResult, b: StoreKit::ExternalPurchaseCustomLink.StoreKit::NoticeResult) -> Swift::Bool
2762 public func hash(into hasher: inout Swift::Hasher)
2763 public var hashValue: Swift::Int {
2764 get
2765 }
2766 }
2767 public enum NoticeType : Swift::Int, Swift::Hashable, Swift::Sendable {
2768 case withinApp
2769 case browser
2770 public init?(rawValue: Swift::Int)
2771 @available(macOS 15.1, iOS 18.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, *)
2772 public typealias RawValue = Swift::Int
2773 public var rawValue: Swift::Int {
2774 get
2775 }
2776 }
2777 public struct Token : Swift::Hashable, Swift::Sendable {
2778 public let value: Swift::String
2779 public static func == (a: StoreKit::ExternalPurchaseCustomLink.StoreKit::Token, b: StoreKit::ExternalPurchaseCustomLink.StoreKit::Token) -> Swift::Bool
2780 public func hash(into hasher: inout Swift::Hasher)
2781 public var hashValue: Swift::Int {
2782 get
2783 }
2784 }
2785 public static var isEligible: Swift::Bool {
2786 get async
2787 }
2788 public static func showNotice(type: StoreKit::ExternalPurchaseCustomLink.StoreKit::NoticeType) async throws -> StoreKit::ExternalPurchaseCustomLink.StoreKit::NoticeResult
2789 public static func token(for tokenType: Swift::String) async throws -> StoreKit::ExternalPurchaseCustomLink.StoreKit::Token?
2790}
2791@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2792extension StoreKit::Product {
2793 public struct SubscriptionOffer : Swift::Equatable, Swift::Hashable {
2794 public struct OfferType : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
2795 public let rawValue: Swift::String
2796 public init(rawValue: Swift::String)
2797 public static let introductory: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType
2798 public static let promotional: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType
2799 @available(iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0, *)
2800 public static let winBack: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType
2801 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2802 public typealias RawValue = Swift::String
2803 }
2804 public struct PaymentMode : Swift::RawRepresentable, Swift::Equatable, Swift::Hashable {
2805 public let rawValue: Swift::String
2806 public init(rawValue: Swift::String)
2807 public static let payAsYouGo: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode
2808 public static let payUpFront: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode
2809 public static let freeTrial: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode
2810 @available(macOS 12.0, iOS 15.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2811 public typealias RawValue = Swift::String
2812 }
2813 public let id: Swift::String?
2814 public let type: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType
2815 public let price: Foundation::Decimal
2816 public let displayPrice: Swift::String
2817 public let period: StoreKit::Product.StoreKit::SubscriptionPeriod
2818 public let periodCount: Swift::Int
2819 public let paymentMode: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode
2820 public static func == (a: StoreKit::Product.StoreKit::SubscriptionOffer, b: StoreKit::Product.StoreKit::SubscriptionOffer) -> Swift::Bool
2821 public func hash(into hasher: inout Swift::Hasher)
2822 public var hashValue: Swift::Int {
2823 get
2824 }
2825 }
2826}
2827@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2828extension StoreKit::Product.StoreKit::SubscriptionOffer : Swift::Sendable {
2829}
2830@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2831extension StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::OfferType : Swift::Sendable {
2832}
2833@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2834extension StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::PaymentMode : Swift::Sendable {
2835}
2836extension StoreKit::Product.StoreKit::SubscriptionOffer {
2837 @available(iOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2838 @available(macOS, introduced: 14.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2839 @available(tvOS, introduced: 17.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2840 @available(watchOS, introduced: 10.4, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2841 @available(visionOS, introduced: 1.1, deprecated: 26.0, message: "Sign promotional offers with JWS and use PurchaseOption.promotionalOffer(_:compactJWS:) instead.")
2842 public struct Signature : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2843 public var keyID: Swift::String
2844 public var nonce: Foundation::UUID
2845 public var timestamp: Swift::Int
2846 public var signature: Foundation::Data
2847 public init(keyID: Swift::String, nonce: Foundation::UUID, timestamp: Swift::Int, signature: Foundation::Data)
2848 public static func == (a: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::Signature, b: StoreKit::Product.StoreKit::SubscriptionOffer.StoreKit::Signature) -> Swift::Bool
2849 public func hash(into hasher: inout Swift::Hasher)
2850 public var hashValue: Swift::Int {
2851 get
2852 }
2853 }
2854}
2855@available(iOS 15.4, macOS 14.4, macCatalyst 15.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2856public enum ExternalPurchaseLink : Swift::Sendable {
2857 public static var canOpen: Swift::Bool {
2858 get async
2859 }
2860 @available(iOS 17.5, macOS 14.5, macCatalyst 17.5, tvOS 17.5, watchOS 10.5, visionOS 1.2, *)
2861 public static var eligibleURLs: [Foundation::URL]? {
2862 get async
2863 }
2864 public static func open() async throws
2865 @available(iOS 17.5, macOS 14.5, macCatalyst 17.5, tvOS 17.5, watchOS 10.5, visionOS 1.2, *)
2866 public static func open(url: Foundation::URL) async throws
2867}
2868@available(iOS 27.0, macOS 27.0, tvOS 27.0, watchOS 27.0, visionOS 27.0, *)
2869extension StoreKit::Product.StoreKit::SubscriptionInfo {
2870 public struct BundledSubscription : Swift::Equatable, Swift::Hashable, Swift::Sendable {
2871 @usableFromInline
2872 internal let backing: StoreKit::BackingValue
2873 public let id: StoreKit::Product.StoreKit::ID
2874 public let displayName: Swift::String
2875 public let description: Swift::String
2876 @usableFromInline
2877 internal let priceLocaleStorage: Foundation::Locale
2878 public let price: Foundation::Decimal
2879 public let displayPrice: Swift::String
2880 public let isFamilyShareable: Swift::Bool
2881 public let subscriptionGroupID: Swift::String
2882 public let subscriptionGroupLevel: Swift::Int
2883 public let subscriptionGroupDisplayName: Swift::String
2884 public static func == (a: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BundledSubscription, b: StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::BundledSubscription) -> Swift::Bool
2885 public func hash(into hasher: inout Swift::Hasher)
2886 public var hashValue: Swift::Int {
2887 get
2888 }
2889 }
2890}
2891@available(iOS 15.4, macOS 14.4, macCatalyst 15.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2892public enum ExternalPurchase : Swift::Sendable {
2893 public enum NoticeResult : Swift::Hashable, Swift::Sendable {
2894 @available(macOS, unavailable)
2895 @available(tvOS, unavailable)
2896 @available(watchOS, unavailable)
… 3 unchanged lines …
2656 case continued
2657 case cancelled
2658 @available(iOS 17.4, macOS 14.4, macCatalyst 17.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2659 case continuedWithExternalPurchaseToken(token: Swift.String)
2660 public static func == (a: StoreKit.ExternalPurchase.NoticeResult, b: StoreKit.ExternalPurchase.NoticeResult) -> Swift.Bool
2661 public func hash(into hasher: inout Swift.Hasher)
2662 public var hashValue: Swift.Int {
2663 get
2664 }
2665 }
2666 @available(iOS 17.4, macOS 14.4, macCatalyst 17.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2667 public static var canPresent: Swift.Bool {
2668 get async
2669 }
2670 public static func presentNoticeSheet() async throws -> StoreKit.ExternalPurchase.NoticeResult
2671}
2672@available(iOS 16.4, visionOS 1.0, *)
2673@available(macOS, unavailable)
2674@available(watchOS, unavailable)
2675@available(tvOS, unavailable)
2676public struct PaymentMethodBinding : Swift.Sendable, Swift.Hashable, Swift.Identifiable {
2677 @available(iOS 16.4, visionOS 1.0, *)
2678 @available(macOS, unavailable)
2679 @available(watchOS, unavailable)
2680 @available(tvOS, unavailable)
2681 public enum PaymentMethodBindingError : Foundation.LocalizedError {
2682 case notEligible
2683 case invalidPinningID
2684 case failed
2685 public var errorDescription: Swift.String? {
2686 get
2687 }
2688 public var failureReason: Swift.String? {
2689 get
2690 }
2691 public var recoverySuggestion: Swift.String? {
2692 get
2693 }
2694 public static func == (a: StoreKit.PaymentMethodBinding.PaymentMethodBindingError, b: StoreKit.PaymentMethodBinding.PaymentMethodBindingError) -> Swift.Bool
2695 public func hash(into hasher: inout Swift.Hasher)
2696 public var hashValue: Swift.Int {
2697 get
2698 }
2699 }
2700 public let id: Swift.String
2701 public init(id: Swift.String) async throws
2702 public func bind() async throws
2703 public static func == (a: StoreKit.PaymentMethodBinding, b: StoreKit.PaymentMethodBinding) -> Swift.Bool
2704 @available(iOS 16.4, visionOS 1.0, *)
2705 @available(tvOS, unavailable)
2706 @available(watchOS, unavailable)
2707 @available(macOS, unavailable)
2708 public typealias ID = Swift.String
2709 public func hash(into hasher: inout Swift.Hasher)
2710 public var hashValue: Swift.Int {
2711 get
2712 }
2713}
2900 case continued
2901 case cancelled
2902 @available(iOS 17.4, macOS 14.4, macCatalyst 17.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2903 case continuedWithExternalPurchaseToken(token: Swift::String)
2904 public static func == (a: StoreKit::ExternalPurchase.StoreKit::NoticeResult, b: StoreKit::ExternalPurchase.StoreKit::NoticeResult) -> Swift::Bool
2905 public func hash(into hasher: inout Swift::Hasher)
2906 public var hashValue: Swift::Int {
2907 get
2908 }
2909 }
2910 @available(iOS 17.4, macOS 14.4, macCatalyst 17.4, tvOS 17.4, watchOS 10.4, visionOS 1.1, *)
2911 public static var canPresent: Swift::Bool {
2912 get async
2913 }
2914 public static func presentNoticeSheet() async throws -> StoreKit::ExternalPurchase.StoreKit::NoticeResult
2915}
2916@available(iOS 16.4, visionOS 1.0, *)
2917@available(macOS, unavailable)
2918@available(watchOS, unavailable)
2919@available(tvOS, unavailable)
2920public struct PaymentMethodBinding : Swift::Sendable, Swift::Hashable, Swift::Identifiable {
2921 @available(iOS 16.4, visionOS 1.0, *)
2922 @available(macOS, unavailable)
2923 @available(watchOS, unavailable)
2924 @available(tvOS, unavailable)
2925 public enum PaymentMethodBindingError : Foundation::LocalizedError {
2926 case notEligible
2927 case invalidPinningID
2928 case failed
2929 public var errorDescription: Swift::String? {
2930 get
2931 }
2932 public var failureReason: Swift::String? {
2933 get
2934 }
2935 public var recoverySuggestion: Swift::String? {
2936 get
2937 }
2938 public static func == (a: StoreKit::PaymentMethodBinding.StoreKit::PaymentMethodBindingError, b: StoreKit::PaymentMethodBinding.StoreKit::PaymentMethodBindingError) -> Swift::Bool
2939 public func hash(into hasher: inout Swift::Hasher)
2940 public var hashValue: Swift::Int {
2941 get
2942 }
2943 }
2944 public let id: Swift::String
2945 public init(id: Swift::String) async throws
2946 public func bind() async throws
2947 public static func == (a: StoreKit::PaymentMethodBinding, b: StoreKit::PaymentMethodBinding) -> Swift::Bool
2948 @available(iOS 16.4, visionOS 1.0, *)
2949 @available(macOS, unavailable)
2950 @available(tvOS, unavailable)
2951 @available(watchOS, unavailable)
2952 public typealias ID = Swift::String
2953 public func hash(into hasher: inout Swift::Hasher)
2954 public var hashValue: Swift::Int {
2955 get
2956 }
2957}
… 2 unchanged lines …
2716@available(macOS, unavailable)
2717@available(tvOS, unavailable)
2718@available(watchOS, unavailable)
2719extension StoreKit.Product.PromotionInfo.Visibility : Swift.RawRepresentable {}
2720@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2721extension StoreKit.VerificationResult.VerificationError : Swift.Equatable {}
2722@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2723extension StoreKit.VerificationResult.VerificationError : Swift.Hashable {}
2724@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2725extension StoreKit.Transaction.RefundRequestError : Swift.Equatable {}
2726@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2727extension StoreKit.Transaction.RefundRequestError : Swift.Hashable {}
2728@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2729extension StoreKit.Transaction.RefundRequestStatus : Swift.Equatable {}
2730@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2731extension StoreKit.Transaction.RefundRequestStatus : Swift.Hashable {}
2732@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2733extension StoreKit.Product.PurchaseError : Swift.Equatable {}
2734@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2735extension StoreKit.Product.PurchaseError : Swift.Hashable {}
2736@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2737extension StoreKit.Product.SubscriptionInfo.RenewalInfo.PriceIncreaseStatus : Swift.BitwiseCopyable {}
2738@available(iOS 18.1, macOS 15.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, *)
2739extension StoreKit.ExternalPurchaseCustomLink.NoticeType : Swift.RawRepresentable {}
2740@available(iOS 16.4, visionOS 1.0, *)
2741@available(macOS, unavailable)
2742@available(watchOS, unavailable)
2743@available(tvOS, unavailable)
2744extension StoreKit.PaymentMethodBinding.PaymentMethodBindingError : Swift.Equatable {}
2745@available(iOS 16.4, visionOS 1.0, *)
2746@available(macOS, unavailable)
2747@available(watchOS, unavailable)
2748@available(tvOS, unavailable)
2749extension StoreKit.PaymentMethodBinding.PaymentMethodBindingError : Swift.Hashable {}
2960@available(macOS, unavailable)
2961@available(tvOS, unavailable)
2962@available(watchOS, unavailable)
2963extension StoreKit::Product.StoreKit::PromotionInfo.StoreKit::Visibility : Swift::RawRepresentable {}
2964@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2965extension StoreKit::VerificationResult.StoreKit::VerificationError : Swift::Equatable {}
2966@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2967extension StoreKit::VerificationResult.StoreKit::VerificationError : Swift::Hashable {}
2968@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2969extension StoreKit::Transaction.StoreKit::RefundRequestError : Swift::Equatable {}
2970@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2971extension StoreKit::Transaction.StoreKit::RefundRequestError : Swift::Hashable {}
2972@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2973extension StoreKit::Transaction.StoreKit::RefundRequestStatus : Swift::Equatable {}
2974@available(iOS 15.0, macOS 12.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, *)
2975extension StoreKit::Transaction.StoreKit::RefundRequestStatus : Swift::Hashable {}
2976@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2977extension StoreKit::Product.StoreKit::PurchaseError : Swift::Equatable {}
2978@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2979extension StoreKit::Product.StoreKit::PurchaseError : Swift::Hashable {}
2980@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, visionOS 1.0, *)
2981extension StoreKit::Product.StoreKit::SubscriptionInfo.StoreKit::RenewalInfo.StoreKit::PriceIncreaseStatus : Swift::BitwiseCopyable {}
2982@available(iOS 18.1, macOS 15.1, tvOS 18.1, watchOS 11.1, visionOS 2.1, *)
2983extension StoreKit::ExternalPurchaseCustomLink.StoreKit::NoticeType : Swift::RawRepresentable {}
2984@available(iOS 16.4, visionOS 1.0, *)
2985@available(macOS, unavailable)
2986@available(watchOS, unavailable)
2987@available(tvOS, unavailable)
2988extension StoreKit::PaymentMethodBinding.StoreKit::PaymentMethodBindingError : Swift::Equatable {}
2989@available(iOS 16.4, visionOS 1.0, *)
2990@available(macOS, unavailable)
2991@available(watchOS, unavailable)
2992@available(tvOS, unavailable)
2993extension StoreKit::PaymentMethodBinding.StoreKit::PaymentMethodBindingError : Swift::Hashable {}