use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[unsafe(super(INPerson, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(feature = "INPerson")]
pub struct INRestaurantGuest;
);
#[cfg(feature = "INPerson")]
extern_conformance!(
unsafe impl NSCoding for INRestaurantGuest {}
);
#[cfg(feature = "INPerson")]
extern_conformance!(
unsafe impl NSCopying for INRestaurantGuest {}
);
#[cfg(feature = "INPerson")]
unsafe impl CopyingHelper for INRestaurantGuest {
type Result = Self;
}
#[cfg(feature = "INPerson")]
extern_conformance!(
unsafe impl NSObjectProtocol for INRestaurantGuest {}
);
#[cfg(feature = "INPerson")]
extern_conformance!(
unsafe impl NSSecureCoding for INRestaurantGuest {}
);
#[cfg(feature = "INPerson")]
impl INRestaurantGuest {
extern_methods!(
#[unsafe(method(initWithNameComponents:phoneNumber:emailAddress:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithNameComponents_phoneNumber_emailAddress(
this: Allocated<Self>,
name_components: Option<&NSPersonNameComponents>,
phone_number: Option<&NSString>,
email_address: Option<&NSString>,
) -> Retained<Self>;
#[unsafe(method(phoneNumber))]
#[unsafe(method_family = none)]
pub unsafe fn phoneNumber(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setPhoneNumber:))]
#[unsafe(method_family = none)]
pub unsafe fn setPhoneNumber(&self, phone_number: Option<&NSString>);
#[unsafe(method(emailAddress))]
#[unsafe(method_family = none)]
pub unsafe fn emailAddress(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setEmailAddress:))]
#[unsafe(method_family = none)]
pub unsafe fn setEmailAddress(&self, email_address: Option<&NSString>);
);
}
#[cfg(feature = "INPerson")]
impl INRestaurantGuest {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[cfg(all(feature = "INImage", feature = "INPersonHandle"))]
#[unsafe(method(initWithPersonHandle:nameComponents:displayName:image:contactIdentifier:customIdentifier:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithPersonHandle_nameComponents_displayName_image_contactIdentifier_customIdentifier(
this: Allocated<Self>,
person_handle: &INPersonHandle,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
custom_identifier: Option<&NSString>,
) -> Retained<Self>;
#[cfg(all(
feature = "INImage",
feature = "INPersonHandle",
feature = "INPersonRelationship"
))]
#[unsafe(method(initWithPersonHandle:nameComponents:displayName:image:contactIdentifier:customIdentifier:relationship:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithPersonHandle_nameComponents_displayName_image_contactIdentifier_customIdentifier_relationship(
this: Allocated<Self>,
person_handle: &INPersonHandle,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
custom_identifier: Option<&NSString>,
relationship: Option<&INPersonRelationship>,
) -> Retained<Self>;
#[cfg(all(feature = "INImage", feature = "INPersonHandle"))]
#[unsafe(method(initWithPersonHandle:nameComponents:displayName:image:contactIdentifier:customIdentifier:isMe:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithPersonHandle_nameComponents_displayName_image_contactIdentifier_customIdentifier_isMe(
this: Allocated<Self>,
person_handle: &INPersonHandle,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
custom_identifier: Option<&NSString>,
is_me: bool,
) -> Retained<Self>;
#[cfg(all(feature = "INImage", feature = "INPersonHandle"))]
#[unsafe(method(initWithPersonHandle:nameComponents:displayName:image:contactIdentifier:customIdentifier:isMe:suggestionType:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithPersonHandle_nameComponents_displayName_image_contactIdentifier_customIdentifier_isMe_suggestionType(
this: Allocated<Self>,
person_handle: &INPersonHandle,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
custom_identifier: Option<&NSString>,
is_me: bool,
suggestion_type: INPersonSuggestionType,
) -> Retained<Self>;
#[cfg(all(feature = "INImage", feature = "INPersonHandle"))]
#[unsafe(method(initWithPersonHandle:nameComponents:displayName:image:contactIdentifier:customIdentifier:isContactSuggestion:suggestionType:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithPersonHandle_nameComponents_displayName_image_contactIdentifier_customIdentifier_isContactSuggestion_suggestionType(
this: Allocated<Self>,
person_handle: &INPersonHandle,
name_components: Option<&NSPersonNameComponents>,
display_name: Option<&NSString>,
image: Option<&INImage>,
contact_identifier: Option<&NSString>,
custom_identifier: Option<&NSString>,
is_contact_suggestion: bool,
suggestion_type: INPersonSuggestionType,
) -> Retained<Self>;
);
}
#[cfg(feature = "INPerson")]
impl INRestaurantGuest {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}