use objc2::__framework_prelude::*;
use objc2_app_kit::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ASWebAuthenticationSessionWebBrowserSessionManager;
unsafe impl ClassType for ASWebAuthenticationSessionWebBrowserSessionManager {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl NSObjectProtocol for ASWebAuthenticationSessionWebBrowserSessionManager {}
extern_methods!(
unsafe impl ASWebAuthenticationSessionWebBrowserSessionManager {
#[method_id(@__retain_semantics Other sharedManager)]
pub unsafe fn sharedManager() -> Id<ASWebAuthenticationSessionWebBrowserSessionManager>;
#[cfg(feature = "ASWebAuthenticationSessionWebBrowserSessionHandling")]
#[method_id(@__retain_semantics Other sessionHandler)]
pub unsafe fn sessionHandler(
&self,
) -> Id<ProtocolObject<dyn ASWebAuthenticationSessionWebBrowserSessionHandling>>;
#[cfg(feature = "ASWebAuthenticationSessionWebBrowserSessionHandling")]
#[method(setSessionHandler:)]
pub unsafe fn setSessionHandler(
&self,
session_handler: &ProtocolObject<
dyn ASWebAuthenticationSessionWebBrowserSessionHandling,
>,
);
#[method(wasLaunchedByAuthenticationServices)]
pub unsafe fn wasLaunchedByAuthenticationServices(&self) -> bool;
}
);
extern_methods!(
unsafe impl ASWebAuthenticationSessionWebBrowserSessionManager {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Id<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Id<Self>;
}
);