use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
#[cfg(all(feature = "INIntent", feature = "INSendMessageIntent"))]
impl INSendMessageIntent {
extern_methods!(
#[cfg(feature = "INPerson")]
#[deprecated = "Use the designated initializer instead"]
#[unsafe(method(initWithRecipients:content:groupName:serviceName:sender:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithRecipients_content_groupName_serviceName_sender(
this: Allocated<Self>,
recipients: Option<&NSArray<INPerson>>,
content: Option<&NSString>,
group_name: Option<&NSString>,
service_name: Option<&NSString>,
sender: Option<&INPerson>,
) -> Retained<Self>;
#[cfg(all(feature = "INPerson", feature = "INSpeakableString"))]
#[deprecated = "Use the designated initializer with outgoingMessageType instead"]
#[unsafe(method(initWithRecipients:content:speakableGroupName:conversationIdentifier:serviceName:sender:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithRecipients_content_speakableGroupName_conversationIdentifier_serviceName_sender(
this: Allocated<Self>,
recipients: Option<&NSArray<INPerson>>,
content: Option<&NSString>,
speakable_group_name: Option<&INSpeakableString>,
conversation_identifier: Option<&NSString>,
service_name: Option<&NSString>,
sender: Option<&INPerson>,
) -> Retained<Self>;
#[cfg(all(
feature = "INOutgoingMessageType",
feature = "INPerson",
feature = "INSpeakableString"
))]
#[deprecated = "Use the designated initializer with attachments instead instead"]
#[unsafe(method(initWithRecipients:outgoingMessageType:content:speakableGroupName:conversationIdentifier:serviceName:sender:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithRecipients_outgoingMessageType_content_speakableGroupName_conversationIdentifier_serviceName_sender(
this: Allocated<Self>,
recipients: Option<&NSArray<INPerson>>,
outgoing_message_type: INOutgoingMessageType,
content: Option<&NSString>,
speakable_group_name: Option<&INSpeakableString>,
conversation_identifier: Option<&NSString>,
service_name: Option<&NSString>,
sender: Option<&INPerson>,
) -> Retained<Self>;
#[deprecated = "Use speakableGroupNames instead"]
#[unsafe(method(groupName))]
#[unsafe(method_family = none)]
pub unsafe fn groupName(&self) -> Option<Retained<NSString>>;
);
}