objc2_authentication_services/generated/
ASAuthorizationProviderExtensionRegistrationHandler.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7#[cfg(feature = "objc2-security")]
8use objc2_security::*;
9
10use crate::*;
11
12#[repr(transparent)]
15#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
16pub struct ASAuthorizationProviderExtensionAuthenticationMethod(pub NSInteger);
17impl ASAuthorizationProviderExtensionAuthenticationMethod {
18 #[doc(alias = "ASAuthorizationProviderExtensionAuthenticationMethodPassword")]
19 pub const Password: Self = Self(1);
20 #[doc(alias = "ASAuthorizationProviderExtensionAuthenticationMethodUserSecureEnclaveKey")]
21 pub const UserSecureEnclaveKey: Self = Self(2);
22 #[doc(alias = "ASAuthorizationProviderExtensionAuthenticationMethodSmartCard")]
23 pub const SmartCard: Self = Self(3);
24}
25
26unsafe impl Encode for ASAuthorizationProviderExtensionAuthenticationMethod {
27 const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for ASAuthorizationProviderExtensionAuthenticationMethod {
31 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34#[repr(transparent)]
37#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
38pub struct ASAuthorizationProviderExtensionRequestOptions(pub NSUInteger);
39bitflags::bitflags! {
40 impl ASAuthorizationProviderExtensionRequestOptions: NSUInteger {
41 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsNone")]
42 const None = 0;
43 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsUserInteractionEnabled")]
44 const UserInteractionEnabled = 1<<0;
45 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsRegistrationRepair")]
46 const RegistrationRepair = 1<<1;
47 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsRegistrationSharedDeviceKeys")]
48 const RegistrationSharedDeviceKeys = 1<<2;
49 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsRegistrationDeviceKeyMigration")]
50 const RegistrationDeviceKeyMigration = 1<<3;
51 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsStrongerKeyAvailable")]
52 const StrongerKeyAvailable = 1<<4;
53 #[doc(alias = "ASAuthorizationProviderExtensionRequestOptionsUserKeyInvalid")]
54 const UserKeyInvalid = 1<<5;
55 }
56}
57
58unsafe impl Encode for ASAuthorizationProviderExtensionRequestOptions {
59 const ENCODING: Encoding = NSUInteger::ENCODING;
60}
61
62unsafe impl RefEncode for ASAuthorizationProviderExtensionRequestOptions {
63 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
64}
65
66#[repr(transparent)]
69#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
70pub struct ASAuthorizationProviderExtensionRegistrationResult(pub NSInteger);
71impl ASAuthorizationProviderExtensionRegistrationResult {
72 #[doc(alias = "ASAuthorizationProviderExtensionRegistrationResultSuccess")]
73 pub const Success: Self = Self(0);
74 #[doc(alias = "ASAuthorizationProviderExtensionRegistrationResultFailed")]
75 pub const Failed: Self = Self(1);
76 #[doc(alias = "ASAuthorizationProviderExtensionRegistrationResultUserInterfaceRequired")]
77 pub const UserInterfaceRequired: Self = Self(2);
78 #[doc(alias = "ASAuthorizationProviderExtensionRegistrationResultFailedNoRetry")]
79 pub const FailedNoRetry: Self = Self(3);
80}
81
82unsafe impl Encode for ASAuthorizationProviderExtensionRegistrationResult {
83 const ENCODING: Encoding = NSInteger::ENCODING;
84}
85
86unsafe impl RefEncode for ASAuthorizationProviderExtensionRegistrationResult {
87 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
88}
89
90#[repr(transparent)]
93#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
94pub struct ASAuthorizationProviderExtensionSupportedGrantTypes(pub NSInteger);
95bitflags::bitflags! {
96 impl ASAuthorizationProviderExtensionSupportedGrantTypes: NSInteger {
97 #[doc(alias = "ASAuthorizationProviderExtensionSupportedGrantTypesNone")]
98 const None = 0;
99 #[doc(alias = "ASAuthorizationProviderExtensionSupportedGrantTypesPassword")]
100 const Password = 1<<0;
101 #[doc(alias = "ASAuthorizationProviderExtensionSupportedGrantTypesJWTBearer")]
102 const JWTBearer = 1<<1;
103 #[doc(alias = "ASAuthorizationProviderExtensionSupportedGrantTypesSAML1_1")]
104 const SAML1_1 = 1<<2;
105 #[doc(alias = "ASAuthorizationProviderExtensionSupportedGrantTypesSAML2_0")]
106 const SAML2_0 = 1<<3;
107 }
108}
109
110unsafe impl Encode for ASAuthorizationProviderExtensionSupportedGrantTypes {
111 const ENCODING: Encoding = NSInteger::ENCODING;
112}
113
114unsafe impl RefEncode for ASAuthorizationProviderExtensionSupportedGrantTypes {
115 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
116}
117
118#[repr(transparent)]
121#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
122pub struct ASAuthorizationProviderExtensionPlatformSSOProtocolVersion(pub NSInteger);
123impl ASAuthorizationProviderExtensionPlatformSSOProtocolVersion {
124 #[doc(alias = "ASAuthorizationProviderExtensionPlatformSSOProtocolVersion1_0")]
125 pub const Version1_0: Self = Self(0);
126 #[doc(alias = "ASAuthorizationProviderExtensionPlatformSSOProtocolVersion2_0")]
127 pub const Version2_0: Self = Self(1);
128}
129
130unsafe impl Encode for ASAuthorizationProviderExtensionPlatformSSOProtocolVersion {
131 const ENCODING: Encoding = NSInteger::ENCODING;
132}
133
134unsafe impl RefEncode for ASAuthorizationProviderExtensionPlatformSSOProtocolVersion {
135 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
136}
137
138extern_protocol!(
139 pub unsafe trait ASAuthorizationProviderExtensionRegistrationHandler:
141 NSObjectProtocol
142 {
143 #[cfg(all(
144 feature = "ASAuthorizationProviderExtensionLoginManager",
145 feature = "block2"
146 ))]
147 #[unsafe(method(beginDeviceRegistrationUsingLoginManager:options:completion:))]
155 #[unsafe(method_family = none)]
156 unsafe fn beginDeviceRegistrationUsingLoginManager_options_completion(
157 &self,
158 login_manager: &ASAuthorizationProviderExtensionLoginManager,
159 options: ASAuthorizationProviderExtensionRequestOptions,
160 completion: &block2::DynBlock<
161 dyn Fn(ASAuthorizationProviderExtensionRegistrationResult),
162 >,
163 );
164
165 #[cfg(all(
166 feature = "ASAuthorizationProviderExtensionLoginManager",
167 feature = "block2"
168 ))]
169 #[unsafe(method(beginUserRegistrationUsingLoginManager:userName:authenticationMethod:options:completion:))]
181 #[unsafe(method_family = none)]
182 unsafe fn beginUserRegistrationUsingLoginManager_userName_authenticationMethod_options_completion(
183 &self,
184 login_manager: &ASAuthorizationProviderExtensionLoginManager,
185 user_name: Option<&NSString>,
186 authentication_method: ASAuthorizationProviderExtensionAuthenticationMethod,
187 options: ASAuthorizationProviderExtensionRequestOptions,
188 completion: &block2::DynBlock<
189 dyn Fn(ASAuthorizationProviderExtensionRegistrationResult),
190 >,
191 );
192
193 #[optional]
195 #[unsafe(method(registrationDidComplete))]
196 #[unsafe(method_family = none)]
197 unsafe fn registrationDidComplete(&self);
198
199 #[optional]
201 #[unsafe(method(registrationDidCancel))]
202 #[unsafe(method_family = none)]
203 unsafe fn registrationDidCancel(&self);
204
205 #[optional]
207 #[unsafe(method(supportedGrantTypes))]
208 #[unsafe(method_family = none)]
209 unsafe fn supportedGrantTypes(&self)
210 -> ASAuthorizationProviderExtensionSupportedGrantTypes;
211
212 #[optional]
214 #[unsafe(method(protocolVersion))]
215 #[unsafe(method_family = none)]
216 unsafe fn protocolVersion(
217 &self,
218 ) -> ASAuthorizationProviderExtensionPlatformSSOProtocolVersion;
219
220 #[cfg(feature = "ASAuthorizationProviderExtensionLoginConfiguration")]
221 #[optional]
223 #[unsafe(method(supportedDeviceSigningAlgorithms))]
224 #[unsafe(method_family = none)]
225 unsafe fn supportedDeviceSigningAlgorithms(
226 &self,
227 ) -> Retained<NSArray<ASAuthorizationProviderExtensionSigningAlgorithm>>;
228
229 #[cfg(feature = "ASAuthorizationProviderExtensionLoginConfiguration")]
230 #[optional]
232 #[unsafe(method(supportedDeviceEncryptionAlgorithms))]
233 #[unsafe(method_family = none)]
234 unsafe fn supportedDeviceEncryptionAlgorithms(
235 &self,
236 ) -> Retained<NSArray<ASAuthorizationProviderExtensionEncryptionAlgorithm>>;
237
238 #[cfg(feature = "ASAuthorizationProviderExtensionLoginConfiguration")]
239 #[optional]
241 #[unsafe(method(supportedUserSecureEnclaveKeySigningAlgorithms))]
242 #[unsafe(method_family = none)]
243 unsafe fn supportedUserSecureEnclaveKeySigningAlgorithms(
244 &self,
245 ) -> Retained<NSArray<ASAuthorizationProviderExtensionSigningAlgorithm>>;
246
247 #[cfg(all(
248 feature = "ASAuthorizationProviderExtensionLoginManager",
249 feature = "block2",
250 feature = "objc2-security"
251 ))]
252 #[optional]
254 #[unsafe(method(keyWillRotateForKeyType:newKey:loginManager:completion:))]
255 #[unsafe(method_family = none)]
256 unsafe fn keyWillRotateForKeyType_newKey_loginManager_completion(
257 &self,
258 key_type: ASAuthorizationProviderExtensionKeyType,
259 new_key: &SecKey,
260 login_manager: &ASAuthorizationProviderExtensionLoginManager,
261 completion: &block2::DynBlock<dyn Fn(Bool)>,
262 );
263 }
264);