use objc2::__framework_prelude::*;
use objc2_app_kit::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ASAuthorizationSingleSignOnCredential;
unsafe impl ClassType for ASAuthorizationSingleSignOnCredential {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
#[cfg(feature = "ASAuthorizationCredential")]
unsafe impl ASAuthorizationCredential for ASAuthorizationSingleSignOnCredential {}
unsafe impl NSCoding for ASAuthorizationSingleSignOnCredential {}
unsafe impl NSCopying for ASAuthorizationSingleSignOnCredential {}
unsafe impl NSObjectProtocol for ASAuthorizationSingleSignOnCredential {}
unsafe impl NSSecureCoding for ASAuthorizationSingleSignOnCredential {}
extern_methods!(
unsafe impl ASAuthorizationSingleSignOnCredential {
#[method_id(@__retain_semantics Other state)]
pub unsafe fn state(&self) -> Option<Id<NSString>>;
#[method_id(@__retain_semantics Other accessToken)]
pub unsafe fn accessToken(&self) -> Option<Id<NSData>>;
#[method_id(@__retain_semantics Other identityToken)]
pub unsafe fn identityToken(&self) -> Option<Id<NSData>>;
#[cfg(feature = "ASAuthorization")]
#[method_id(@__retain_semantics Other authorizedScopes)]
pub unsafe fn authorizedScopes(&self) -> Id<NSArray<ASAuthorizationScope>>;
#[method_id(@__retain_semantics Other authenticatedResponse)]
pub unsafe fn authenticatedResponse(&self) -> Option<Id<NSHTTPURLResponse>>;
#[method_id(@__retain_semantics Other privateKeys)]
pub unsafe fn privateKeys(&self) -> Id<NSArray>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Id<Self>;
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Id<Self>;
}
);