objc2_authentication_services/generated/
ASAuthorizationWebBrowserPublicKeyCredentialManager.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/authenticationservices/asauthorizationwebbrowserpublickeycredentialmanagerauthorizationstate?language=objc)
11// NS_ENUM
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState(pub NSInteger);
15impl ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState {
16    #[doc(
17        alias = "ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationStateAuthorized"
18    )]
19    pub const Authorized: Self = Self(0);
20    #[doc(alias = "ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationStateDenied")]
21    pub const Denied: Self = Self(1);
22    #[doc(
23        alias = "ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationStateNotDetermined"
24    )]
25    pub const NotDetermined: Self = Self(2);
26}
27
28unsafe impl Encode for ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState {
29    const ENCODING: Encoding = NSInteger::ENCODING;
30}
31
32unsafe impl RefEncode for ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState {
33    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
34}
35
36extern_class!(
37    /// [Apple's documentation](https://developer.apple.com/documentation/authenticationservices/asauthorizationwebbrowserpublickeycredentialmanager?language=objc)
38    #[unsafe(super(NSObject))]
39    #[derive(Debug, PartialEq, Eq, Hash)]
40    pub struct ASAuthorizationWebBrowserPublicKeyCredentialManager;
41);
42
43unsafe impl Send for ASAuthorizationWebBrowserPublicKeyCredentialManager {}
44
45unsafe impl Sync for ASAuthorizationWebBrowserPublicKeyCredentialManager {}
46
47extern_conformance!(
48    unsafe impl NSObjectProtocol for ASAuthorizationWebBrowserPublicKeyCredentialManager {}
49);
50
51impl ASAuthorizationWebBrowserPublicKeyCredentialManager {
52    extern_methods!(
53        #[unsafe(method(init))]
54        #[unsafe(method_family = init)]
55        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
56
57        #[cfg(feature = "block2")]
58        #[unsafe(method(requestAuthorizationForPublicKeyCredentials:))]
59        #[unsafe(method_family = none)]
60        pub unsafe fn requestAuthorizationForPublicKeyCredentials(
61            &self,
62            completion_handler: &block2::DynBlock<
63                dyn Fn(ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState),
64            >,
65        );
66
67        #[cfg(all(
68            feature = "ASAuthorizationWebBrowserPlatformPublicKeyCredential",
69            feature = "block2"
70        ))]
71        #[unsafe(method(platformCredentialsForRelyingParty:completionHandler:))]
72        #[unsafe(method_family = none)]
73        pub unsafe fn platformCredentialsForRelyingParty_completionHandler(
74            &self,
75            relying_party: &NSString,
76            completion_handler: &block2::DynBlock<
77                dyn Fn(NonNull<NSArray<ASAuthorizationWebBrowserPlatformPublicKeyCredential>>),
78            >,
79        );
80
81        #[unsafe(method(authorizationStateForPlatformCredentials))]
82        #[unsafe(method_family = none)]
83        pub unsafe fn authorizationStateForPlatformCredentials(
84            &self,
85        ) -> ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState;
86    );
87}
88
89/// Methods declared on superclass `NSObject`.
90impl ASAuthorizationWebBrowserPublicKeyCredentialManager {
91    extern_methods!(
92        #[unsafe(method(new))]
93        #[unsafe(method_family = new)]
94        pub unsafe fn new() -> Retained<Self>;
95    );
96}