API Differences in _StoreKit_SwiftUI in macOS 15.0

It's more difficult than it used to be to find what changed in Apple SDKs. This page is automatically generated and shows what is new in _StoreKit_SwiftUI in the macOS 15.0 SDK.

Table of Contents

Protocols

StoreContent
SubscriptionOptionGroupStyle
SubscriptionStoreControlPlacement

Structs

AutomaticSubscriptionOptionGroupLabel
AutomaticSubscriptionOptionGroupStyle
AutomaticSubscriptionStoreControlPlacement
AutomaticSubscriptionStoreControlStyle
Placement
AutomaticSubscriptionStorePickerOptionLabel
ButtonsSubscriptionStoreControlStyle
Placement
CompactPickerSubscriptionStoreControlStyle
IdentifiedStoreContent
LinksSubscriptionOptionGroupStyle
PagedPickerSubscriptionStoreControlStyle
PagedProminentPickerSubscriptionStoreControlStyle
PickerSubscriptionStoreControlStyle
Placement
StoreContentBuilder
SubscriptionOptionGroup
SubscriptionOptionGroupSet
SubscriptionOptionGroupStyleOutput
SubscriptionOptionSection
SubscriptionPeriodGroupSet
SubscriptionStoreButton
SubscriptionStoreContentView
SubscriptionStoreControlPlacementKey
SubscriptionStoreControlStyleConfiguration
Icon
SubscriptionStoreControlStyleConfiguration
Option
SubscriptionStoreControlStyleConfiguration
PickerOption
SubscriptionStoreControlStyleConfiguration
Section
SubscriptionStorePicker
SubscriptionStorePickerOption
TabsSubscriptionOptionGroupStyle
TupleStoreContent

Typealiases

Footer
public typealias Body = @_opaqueReturnTypeOf("$s17_StoreKit_SwiftUI012SubscriptionA25ControlStyleConfigurationV7SectionV6FooterV4bodyQrvp", 0) __
Header
public typealias Body = @_opaqueReturnTypeOf("$s17_StoreKit_SwiftUI012SubscriptionA25ControlStyleConfigurationV7SectionV6HeaderV4bodyQrvp", 0) __
ProminentPickerSubscriptionStoreControlStyle
public typealias Placement = _StoreKit_SwiftUI.PickerSubscriptionStoreControlStyle.Placement
SubscriptionStoreControlStyle
public typealias SubscribeButton = _StoreKit_SwiftUI.SubscriptionStoreButton
SubscriptionStoreControlStyle
public typealias SubscriptionPicker = _StoreKit_SwiftUI.SubscriptionStorePicker
SubscriptionStoreControlStyle
public typealias SubscriptionPickerOption = _StoreKit_SwiftUI.SubscriptionStorePickerOption
SubscriptionStoreControlStyleConfiguration.Option
public typealias ID = StoreKit.Product.ID
SubscriptionStoreControlStyleConfiguration.PickerOption
public typealias ID = StoreKit.Product.ID
Swift.Never
public typealias _IdentifiedView = @_opaqueReturnTypeOf("$s17_StoreKit_SwiftUI0A7ContentPAAE011_identifiedE0AA010IdentifiedaE0VyQrGvp", 0) __<Swift.Never>
Swift.Optional
public typealias Body = Swift.Never
Swift.Optional
public typealias _IdentifiedView = @_opaqueReturnTypeOf("$sSq17_StoreKit_SwiftUIAA0A7ContentRzlE011_identifiedE0AA010IdentifiedaE0VyQrGvp", 0) __<Wrapped>
SwiftUICore._ConditionalContent
public typealias Body = Swift.Never
SwiftUICore._ConditionalContent
public typealias _IdentifiedView = @_opaqueReturnTypeOf("$s7SwiftUI19_ConditionalContentV010_StoreKit_aB0AD0eD0RzAdER_rlE011_identifiedD0AD010IdentifiedeD0VyQrGvp", 0) __<TrueContent, FalseContent>

Functions & Methods

StoreContent
public func productDescription(_ visibility: SwiftUICore.Visibility) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func storeButton(_ visibility: SwiftUICore.Visibility, for buttonKinds: _StoreKit_SwiftUI.StoreButtonKind...) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStoreButtonLabel(_ label: _StoreKit_SwiftUI.SubscriptionStoreButtonLabel) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStoreControlBackground(_ backgroundStyle: some ShapeStyle) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStoreControlBackground(_ backgroundStyle: _StoreKit_SwiftUI.SubscriptionStoreControlBackground) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStoreControlStyle<S>(_ style: S, placement: S.Placement = .automatic) -> some _StoreKit_SwiftUI.StoreContent where S : _StoreKit_SwiftUI.SubscriptionStoreControlStyle
StoreContent
public func subscriptionStoreOptionGroupStyle(_ style: some SubscriptionOptionGroupStyle) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStorePickerItemBackground(_ backgroundStyle: some ShapeStyle) -> some _StoreKit_SwiftUI.StoreContent
StoreContent
nonisolated public func subscriptionStorePickerItemBackground(_ backgroundStyle: some ShapeStyle, in shape: some Shape) -> some _StoreKit_SwiftUI.StoreContent
SubscriptionStoreControlStyleConfiguration.Option
public static func == (lhs: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option, rhs: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) -> Swift.Bool
SubscriptionStoreControlStyleConfiguration.Option
public func hash(into hasher: inout Swift.Hasher)
SubscriptionStoreControlStyleConfiguration.PickerOption
public static func == (a: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption, b: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption) -> Swift.Bool
SubscriptionStoreControlStyleConfiguration.PickerOption
public func hash(into hasher: inout Swift.Hasher)
SwiftUICore.View
internal func automaticSubscriptionStorePickerItemBackgroundInternal(_ style: (some ShapeStyle)?) -> some SwiftUICore.View
SwiftUICore.View
nonisolated public func offerCodeRedemption(isPresented: SwiftUICore.Binding<Swift.Bool>, onCompletion: @escaping @_Concurrency.MainActor (Swift.Result<Swift.Void, any Swift.Error>) -> Swift.Void = { _ in }) -> some SwiftUICore.View
SwiftUICore.View
nonisolated public func preferredSubscriptionOffer(_ offer: @escaping (_ product: StoreKit.Product, _ subscription: StoreKit.Product.SubscriptionInfo, _ eligibleOffers: [StoreKit.Product.SubscriptionOffer]) -> StoreKit.Product.SubscriptionOffer?) -> some SwiftUICore.View
SwiftUICore.View
nonisolated public func subscriptionStoreControlStyle<S>(_ style: S, placement: S.Placement) -> some SwiftUICore.View where S : _StoreKit_SwiftUI.SubscriptionStoreControlStyle
SwiftUICore.View
nonisolated public func subscriptionStoreOptionGroupStyle(_ style: some SubscriptionOptionGroupStyle) -> some SwiftUICore.View
SwiftUICore.View
nonisolated public func subscriptionStorePickerItemBackground(_ backgroundStyle: some ShapeStyle, in shape: some Shape) -> some SwiftUICore.View
SwiftUICore.View
internal func subscriptionStorePickerOptionStrokeInternal(style: some ShapeStyle, lineWidth: CoreFoundation.CGFloat = 1.0) -> some SwiftUICore.View

Properties & Constants

StoreButtonKind
public static var redeemCode: _StoreKit_SwiftUI.StoreButtonKind
StoreContent
public var _identifiedContent: _StoreKit_SwiftUI.IdentifiedStoreContent<some SwiftUICore.View>
SubscriptionOptionGroupStyle
public static var automatic: _StoreKit_SwiftUI.AutomaticSubscriptionOptionGroupStyle
SubscriptionOptionGroupStyle
public static var links: _StoreKit_SwiftUI.LinksSubscriptionOptionGroupStyle
SubscriptionOptionGroupStyle
public static var tabs: _StoreKit_SwiftUI.TabsSubscriptionOptionGroupStyle
SubscriptionStoreControlStyle
public static var compactPicker: _StoreKit_SwiftUI.CompactPickerSubscriptionStoreControlStyle
SubscriptionStoreControlStyle
public static var pagedPicker: _StoreKit_SwiftUI.PagedPickerSubscriptionStoreControlStyle
SubscriptionStoreControlStyle
public static var pagedProminentPicker: _StoreKit_SwiftUI.PagedProminentPickerSubscriptionStoreControlStyle
SubscriptionStoreControlStyleConfiguration.Option
public var hashValue: Swift.Int
SubscriptionStoreControlStyleConfiguration.Option
public var id: StoreKit.Product.ID
SubscriptionStoreControlStyleConfiguration.PickerOption
public var hashValue: Swift.Int
SubscriptionStoreControlStyleConfiguration.PickerOption
public var id: StoreKit.Product.ID
SubscriptionStoreControlStyleConfiguration
public var autoRenewPreference: StoreKit.Product?
SubscriptionStoreControlStyleConfiguration
public var descriptionVisibility: SwiftUICore.Visibility
SubscriptionStoreControlStyleConfiguration
public var groupDisplayName: Swift.String
SubscriptionStoreControlStyleConfiguration
public var options: [_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option]
SubscriptionStoreControlStyleConfiguration
public var sections: [_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Section]
Swift.Optional
public var _identifiedContent: _StoreKit_SwiftUI.IdentifiedStoreContent<some SwiftUICore.View>
Swift.Optional
public var body: Swift.Never
SwiftUICore._ConditionalContent
public var _identifiedContent: _StoreKit_SwiftUI.IdentifiedStoreContent<some SwiftUICore.View>
SwiftUICore._ConditionalContent
public var body: Swift.Never

Associatedtypes

SubscriptionStoreControlStyle
associatedtype Placement : _StoreKit_SwiftUI.SubscriptionStoreControlPlacement = _StoreKit_SwiftUI.AutomaticSubscriptionStoreControlPlacement

Conformances

AutomaticSubscriptionOptionGroupLabel
Swift.Sendable
AutomaticSubscriptionStorePickerOptionLabel
Swift.Sendable
CompactPickerSubscriptionStoreControlStyle
Swift.Sendable
PagedPickerSubscriptionStoreControlStyle
Swift.Sendable
PagedProminentPickerSubscriptionStoreControlStyle
Swift.Sendable
SubscriptionOptionGroup
Swift.Sendable
SubscriptionOptionGroupSet
Swift.Sendable
SubscriptionOptionSection
Swift.Sendable
SubscriptionPeriodGroupSet
Swift.Sendable
SubscriptionStoreButton
Swift.Sendable
SubscriptionStoreContentView
Swift.Sendable
SubscriptionStoreControlStyleConfiguration.Icon
Swift.Sendable
SubscriptionStoreControlStyleConfiguration.Option
Swift.Equatable
SubscriptionStoreControlStyleConfiguration.Option
Swift.Hashable
SubscriptionStoreControlStyleConfiguration.Option
Swift.Identifiable
SubscriptionStoreControlStyleConfiguration.PickerOption
Swift.Equatable
SubscriptionStoreControlStyleConfiguration.PickerOption
Swift.Hashable
SubscriptionStoreControlStyleConfiguration.PickerOption
Swift.Identifiable
SubscriptionStoreControlStyleConfiguration.Section.Footer
Swift.Sendable
SubscriptionStoreControlStyleConfiguration.Section.Header
Swift.Sendable
SubscriptionStorePicker
Swift.Sendable
SubscriptionStorePickerOption
Swift.Sendable
Swift.Never
_StoreKit_SwiftUI.StoreContent
Swift.Optional
_StoreKit_SwiftUI.StoreContent
SwiftUICore._ConditionalContent
_StoreKit_SwiftUI.StoreContent
TupleStoreContent
Swift.Sendable

Initializers

SubscriptionOptionGroup
public init(isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder label: () -> Label) where Content == Swift.Never
SubscriptionOptionGroup
public init(@_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content, @SwiftUICore.ViewBuilder label: () -> Label)
SubscriptionOptionGroup
public init(isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent) where Content == Swift.Never
SubscriptionOptionGroup
public init(@_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent)
SubscriptionOptionGroup
public init(isIncluded: @escaping (StoreKit.Product) -> Swift.Bool) where Content == Swift.Never
SubscriptionOptionGroup
public init(@_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content)
SubscriptionOptionGroup
public init(_ label: SwiftUICore.LocalizedStringKey, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent) where Content == Swift.Never
SubscriptionOptionGroup
@_disfavoredOverload public init(_ label: some StringProtocol, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent) where Content == Swift.Never
SubscriptionOptionGroup
public init(_ label: SwiftUICore.LocalizedStringKey, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent)
SubscriptionOptionGroup
@_disfavoredOverload public init(_ label: some StringProtocol, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content, @SwiftUICore.ViewBuilder marketingContent: () -> MarketingContent)
SubscriptionOptionGroup
public init(_ label: SwiftUICore.LocalizedStringKey, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool) where Content == Swift.Never
SubscriptionOptionGroup
@_disfavoredOverload public init(_ label: some StringProtocol, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool) where Content == Swift.Never
SubscriptionOptionGroup
public init(_ label: SwiftUICore.LocalizedStringKey, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content)
SubscriptionOptionGroup
@_disfavoredOverload public init(_ label: some StringProtocol, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> Content)
SubscriptionOptionSection
public init(isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder header: () -> Header = EmptyView.init, @SwiftUICore.ViewBuilder footer: () -> Footer = EmptyView.init)
SubscriptionOptionSection
public init(_ title: SwiftUICore.LocalizedStringKey, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder footer: () -> Footer = EmptyView.init)
SubscriptionOptionSection
@_disfavoredOverload public init(_ title: some StringProtocol, isIncluded: @escaping (StoreKit.Product) -> Swift.Bool, @SwiftUICore.ViewBuilder footer: () -> Footer = EmptyView.init)
SubscriptionStoreButton
public init(_ option: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option)
SubscriptionStorePicker
public init(@SwiftUICore.ViewBuilder pickerContent: () -> PickerContent, @SwiftUICore.ViewBuilder confirmation: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) -> ConfirmationContent)
SubscriptionStorePicker
public init(_ configuration: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration, @SwiftUICore.ViewBuilder pickerOptionContent: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption) -> PickerContent, @SwiftUICore.ViewBuilder confirmation: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) -> ConfirmationContent)
SubscriptionStorePicker
public init(selection: SwiftUICore.Binding<_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option?>, @SwiftUICore.ViewBuilder pickerContent: () -> PickerContent, @SwiftUICore.ViewBuilder confirmation: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) -> ConfirmationContent)
SubscriptionStorePicker
public init(_ configuration: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration, selection: SwiftUICore.Binding<_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option?>, @SwiftUICore.ViewBuilder pickerOptionContent: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption) -> PickerContent, @SwiftUICore.ViewBuilder confirmation: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) -> ConfirmationContent)
SubscriptionStorePickerOption
public init(_ option: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option, @SwiftUICore.ViewBuilder label: @escaping (_StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption) -> Label)
SubscriptionStorePickerOption
public init(_ option: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.Option) where Label == _StoreKit_SwiftUI.AutomaticSubscriptionStorePickerOptionLabel
SubscriptionStorePickerOption
public init(_ option: _StoreKit_SwiftUI.SubscriptionStoreControlStyleConfiguration.PickerOption) where Label == _StoreKit_SwiftUI.AutomaticSubscriptionStorePickerOptionLabel
SubscriptionStoreView
nonisolated public init<C>(groupID: Swift.String, visibleRelationships: StoreKit.Product.SubscriptionRelationship = .all, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> C) where Content == _StoreKit_SwiftUI.SubscriptionStoreContentView<C>, C : _StoreKit_SwiftUI.StoreContent
SubscriptionStoreView
nonisolated public init<C>(subscriptions: some Collection<Product>, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> C) where Content == _StoreKit_SwiftUI.SubscriptionStoreContentView<C>, C : _StoreKit_SwiftUI.StoreContent
SubscriptionStoreView
nonisolated public init<C>(productIDs: some Collection<Product.ID>, @_StoreKit_SwiftUI.StoreContentBuilder content: () -> C) where Content == _StoreKit_SwiftUI.SubscriptionStoreContentView<C>, C : _StoreKit_SwiftUI.StoreContent