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    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
18    #[doc(alias = "SKCloudServiceAuthorizationStatusNotDetermined")]
19    pub const NotDetermined: Self = Self(0);
20    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
21    #[doc(alias = "SKCloudServiceAuthorizationStatusDenied")]
22    pub const Denied: Self = Self(1);
23    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
24    #[doc(alias = "SKCloudServiceAuthorizationStatusRestricted")]
25    pub const Restricted: Self = Self(2);
26    #[deprecated = "Use MusicAuthorization.Status from MusicKit"]
27    #[doc(alias = "SKCloudServiceAuthorizationStatusAuthorized")]
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#[deprecated = "Use MusicSubscription from MusicKit"]
48        #[doc(alias = "SKCloudServiceCapabilityNone")]
49        const None = 0;
50#[deprecated = "Use MusicSubscription from MusicKit"]
51        #[doc(alias = "SKCloudServiceCapabilityMusicCatalogPlayback")]
52        const MusicCatalogPlayback = 1<<0;
53#[deprecated = "Use the canBecomeSubscriber property of MusicSubscription from MusicKit"]
54        #[doc(alias = "SKCloudServiceCapabilityMusicCatalogSubscriptionEligible")]
55        const MusicCatalogSubscriptionEligible = 1<<1;
56#[deprecated = "Use MusicSubscription from MusicKit"]
57        #[doc(alias = "SKCloudServiceCapabilityAddToCloudMusicLibrary")]
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
78unsafe impl NSObjectProtocol for SKCloudServiceController {}
79
80impl SKCloudServiceController {
81    extern_methods!(
82        #[deprecated = "Use MusicAuthorization.currentStatus from MusicKit"]
83        #[unsafe(method(authorizationStatus))]
84        #[unsafe(method_family = none)]
85        pub unsafe fn authorizationStatus() -> SKCloudServiceAuthorizationStatus;
86
87        #[cfg(feature = "block2")]
88        #[deprecated = "Use MusicAuthorization.request() from MusicKit"]
89        #[unsafe(method(requestAuthorization:))]
90        #[unsafe(method_family = none)]
91        pub unsafe fn requestAuthorization(
92            completion_handler: &block2::Block<dyn Fn(SKCloudServiceAuthorizationStatus)>,
93        );
94
95        #[cfg(feature = "block2")]
96        #[deprecated = "Use MusicSubscription.current from MusicKit"]
97        #[unsafe(method(requestCapabilitiesWithCompletionHandler:))]
98        #[unsafe(method_family = none)]
99        pub unsafe fn requestCapabilitiesWithCompletionHandler(
100            &self,
101            completion_handler: &block2::Block<dyn Fn(SKCloudServiceCapability, *mut NSError)>,
102        );
103
104        #[cfg(feature = "block2")]
105        #[deprecated = "Use MusicDataRequest.currentCountryCode from MusicKit"]
106        #[unsafe(method(requestStorefrontCountryCodeWithCompletionHandler:))]
107        #[unsafe(method_family = none)]
108        pub unsafe fn requestStorefrontCountryCodeWithCompletionHandler(
109            &self,
110            completion_handler: &block2::Block<dyn Fn(*mut NSString, *mut NSError)>,
111        );
112
113        #[cfg(feature = "block2")]
114        #[deprecated = "Use Storefront.current.id"]
115        #[unsafe(method(requestStorefrontIdentifierWithCompletionHandler:))]
116        #[unsafe(method_family = none)]
117        pub unsafe fn requestStorefrontIdentifierWithCompletionHandler(
118            &self,
119            completion_handler: &block2::Block<dyn Fn(*mut NSString, *mut NSError)>,
120        );
121
122        #[cfg(feature = "block2")]
123        #[deprecated = "Use MusicKit"]
124        #[unsafe(method(requestUserTokenForDeveloperToken:completionHandler:))]
125        #[unsafe(method_family = none)]
126        pub unsafe fn requestUserTokenForDeveloperToken_completionHandler(
127            &self,
128            developer_token: &NSString,
129            completion_handler: &block2::Block<dyn Fn(*mut NSString, *mut NSError)>,
130        );
131
132        #[cfg(feature = "block2")]
133        #[deprecated]
134        #[unsafe(method(requestPersonalizationTokenForClientToken:withCompletionHandler:))]
135        #[unsafe(method_family = none)]
136        pub unsafe fn requestPersonalizationTokenForClientToken_withCompletionHandler(
137            &self,
138            client_token: &NSString,
139            completion_handler: &block2::Block<dyn Fn(*mut NSString, *mut NSError)>,
140        );
141    );
142}
143
144/// Methods declared on superclass `NSObject`.
145impl SKCloudServiceController {
146    extern_methods!(
147        #[unsafe(method(init))]
148        #[unsafe(method_family = init)]
149        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
150
151        #[unsafe(method(new))]
152        #[unsafe(method_family = new)]
153        pub unsafe fn new() -> Retained<Self>;
154    );
155}
156
157extern "C" {
158    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skcloudservicecapabilitiesdidchangenotification?language=objc)
159    pub static SKCloudServiceCapabilitiesDidChangeNotification: &'static NSNotificationName;
160}
161
162extern "C" {
163    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skstorefrontcountrycodedidchangenotification?language=objc)
164    pub static SKStorefrontCountryCodeDidChangeNotification: &'static NSNotificationName;
165}
166
167extern "C" {
168    /// [Apple's documentation](https://developer.apple.com/documentation/storekit/skstorefrontidentifierdidchangenotification?language=objc)
169    pub static SKStorefrontIdentifierDidChangeNotification: &'static NSNotificationName;
170}