use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
#[cfg(feature = "INPerson")]
impl INPerson {
extern_methods!(
#[deprecated = "Use personHandle instead"]
#[unsafe(method(handle))]
#[unsafe(method_family = none)]
pub unsafe fn handle(&self) -> Option<Retained<NSString>>;
#[deprecated = "Use the designated initializer instead"]
#[unsafe(method(initWithHandle:nameComponents:contactIdentifier:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithHandle_nameComponents_contactIdentifier(
this: Allocated<Self>,
handle: &NSString,
name_components: &NSPersonNameComponents,
contact_identifier: Option<&NSString>,
) -> Retained<Self>;
#[deprecated = "Use the designated initializer instead"]
#[unsafe(method(initWithHandle:displayName:contactIdentifier:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithHandle_displayName_contactIdentifier(
this: Allocated<Self>,
handle: &NSString,
display_name: Option<&NSString>,
contact_identifier: Option<&NSString>,
) -> Retained<Self>;
#[cfg(feature = "INImage")]
#[deprecated = "Use the designated initializer instead"]
#[unsafe(method(initWithHandle:nameComponents:displayName:image:contactIdentifier:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithHandle_nameComponents_displayName_image_contactIdentifier(
this: Allocated<Self>,
handle: &NSString,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
) -> Retained<Self>;
);
}