objc2_store_kit/generated/
SKCloudServiceController.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/storekit/skcloudserviceauthorizationstatus?language=objc)
11// NS_ENUM
12#[deprecated = "Use MusicAuthorization.Status from MusicKit"]
13#[repr(transparent)]
14#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
15pub struct SKCloudServiceAuthorizationStatus(pub NSInteger);
16impl SKCloudServiceAuthorizationStatus {
17    #[doc(alias = "SKCloudServiceAuthorizationStatusNotDetermined")]
18    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
19    pub const NotDetermined: Self = Self(0);
20    #[doc(alias = "SKCloudServiceAuthorizationStatusDenied")]
21    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
22    pub const Denied: Self = Self(1);
23    #[doc(alias = "SKCloudServiceAuthorizationStatusRestricted")]
24    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
25    pub const Restricted: Self = Self(2);
26    #[doc(alias = "SKCloudServiceAuthorizationStatusAuthorized")]
27    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
28    pub const Authorized: Self = Self(3);
29}
30
31unsafe impl Encode for SKCloudServiceAuthorizationStatus {
32    const ENCODING: Encoding = NSInteger::ENCODING;
33}
34
35unsafe impl RefEncode for SKCloudServiceAuthorizationStatus {
36    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
37}
38
39/// [Apple's documentation](https://developer.apple.com/documentation/storekit/skcloudservicecapability?language=objc)
40// NS_OPTIONS
41#[deprecated = "Use MusicSubscription from MusicKit"]
42#[repr(transparent)]
43#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
44pub struct SKCloudServiceCapability(pub NSUInteger);
45bitflags::bitflags! {
46    impl SKCloudServiceCapability: NSUInteger {
47        #[doc(alias = "SKCloudServiceCapabilityNone")]
48#[deprecated = "Use MusicSubscription from MusicKit"]
49        const None = 0;
50        #[doc(alias = "SKCloudServiceCapabilityMusicCatalogPlayback")]
51#[deprecated = "Use MusicSubscription from MusicKit"]
52        const MusicCatalogPlayback = 1<<0;
53        #[doc(alias = "SKCloudServiceCapabilityMusicCatalogSubscriptionEligible")]
54#[deprecated = "Use the canBecomeSubscriber property of MusicSubscription from MusicKit"]
55        const MusicCatalogSubscriptionEligible = 1<<1;
56        #[doc(alias = "SKCloudServiceCapabilityAddToCloudMusicLibrary")]
57#[deprecated = "Use MusicSubscription from MusicKit"]
58        const AddToCloudMusicLibrary = 1<<8;
59    }
60}
61
62unsafe impl Encode for SKCloudServiceCapability {
63    const ENCODING: Encoding = NSUInteger::ENCODING;
64}
65
66unsafe impl RefEncode for SKCloudServiceCapability {
67    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
68}
69
70extern_class!(
71    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skcloudservicecontroller?language=objc)
72    #[unsafe(super(NSObject))]
73    #[derive(Debug, PartialEq, Eq, Hash)]
74    #[deprecated = "Use MusicKit"]
75    pub struct SKCloudServiceController;
76);
77
78extern_conformance!(
79    unsafe impl NSObjectProtocol for SKCloudServiceController {}
80);
81
82impl SKCloudServiceController {
83    extern_methods!(
84        #[deprecated = "Use MusicAuthorization.currentStatus from MusicKit"]
85        #[unsafe(method(authorizationStatus))]
86        #[unsafe(method_family = none)]
87        pub unsafe fn authorizationStatus() -> SKCloudServiceAuthorizationStatus;
88
89        #[cfg(feature = "block2")]
90        #[deprecated = "Use MusicAuthorization.request() from MusicKit"]
91        #[unsafe(method(requestAuthorization:))]
92        #[unsafe(method_family = none)]
93        pub unsafe fn requestAuthorization(
94            completion_handler: &block2::DynBlock<dyn Fn(SKCloudServiceAuthorizationStatus)>,
95        );
96
97        #[cfg(feature = "block2")]
98        #[deprecated = "Use MusicSubscription.current from MusicKit"]
99        #[unsafe(method(requestCapabilitiesWithCompletionHandler:))]
100        #[unsafe(method_family = none)]
101        pub unsafe fn requestCapabilitiesWithCompletionHandler(
102            &self,
103            completion_handler: &block2::DynBlock<dyn Fn(SKCloudServiceCapability, *mut NSError)>,
104        );
105
106        #[cfg(feature = "block2")]
107        #[deprecated = "Use MusicDataRequest.currentCountryCode from MusicKit"]
108        #[unsafe(method(requestStorefrontCountryCodeWithCompletionHandler:))]
109        #[unsafe(method_family = none)]
110        pub unsafe fn requestStorefrontCountryCodeWithCompletionHandler(
111            &self,
112            completion_handler: &block2::DynBlock<dyn Fn(*mut NSString, *mut NSError)>,
113        );
114
115        #[cfg(feature = "block2")]
116        #[deprecated = "Use Storefront.current.id"]
117        #[unsafe(method(requestStorefrontIdentifierWithCompletionHandler:))]
118        #[unsafe(method_family = none)]
119        pub unsafe fn requestStorefrontIdentifierWithCompletionHandler(
120            &self,
121            completion_handler: &block2::DynBlock<dyn Fn(*mut NSString, *mut NSError)>,
122        );
123
124        #[cfg(feature = "block2")]
125        #[deprecated = "Use MusicKit"]
126        #[unsafe(method(requestUserTokenForDeveloperToken:completionHandler:))]
127        #[unsafe(method_family = none)]
128        pub unsafe fn requestUserTokenForDeveloperToken_completionHandler(
129            &self,
130            developer_token: &NSString,
131            completion_handler: &block2::DynBlock<dyn Fn(*mut NSString, *mut NSError)>,
132        );
133
134        #[cfg(feature = "block2")]
135        #[deprecated]
136        #[unsafe(method(requestPersonalizationTokenForClientToken:withCompletionHandler:))]
137        #[unsafe(method_family = none)]
138        pub unsafe fn requestPersonalizationTokenForClientToken_withCompletionHandler(
139            &self,
140            client_token: &NSString,
141            completion_handler: &block2::DynBlock<dyn Fn(*mut NSString, *mut NSError)>,
142        );
143    );
144}
145
146/// Methods declared on superclass `NSObject`.
147impl SKCloudServiceController {
148    extern_methods!(
149        #[unsafe(method(init))]
150        #[unsafe(method_family = init)]
151        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
152
153        #[unsafe(method(new))]
154        #[unsafe(method_family = new)]
155        pub unsafe fn new() -> Retained<Self>;
156    );
157}
158
159extern "C" {
160    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skcloudservicecapabilitiesdidchangenotification?language=objc)
161    pub static SKCloudServiceCapabilitiesDidChangeNotification: &'static NSNotificationName;
162}
163
164extern "C" {
165    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skstorefrontcountrycodedidchangenotification?language=objc)
166    pub static SKStorefrontCountryCodeDidChangeNotification: &'static NSNotificationName;
167}
168
169extern "C" {
170    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skstorefrontidentifierdidchangenotification?language=objc)
171    pub static SKStorefrontIdentifierDidChangeNotification: &'static NSNotificationName;
172}