use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
pub type UIActivityItemsConfigurationMetadataKey = NSString;
extern "C" {
pub static UIActivityItemsConfigurationMetadataKeyTitle:
&'static UIActivityItemsConfigurationMetadataKey;
}
extern "C" {
pub static UIActivityItemsConfigurationMetadataKeyMessageBody:
&'static UIActivityItemsConfigurationMetadataKey;
}
extern "C" {
pub static UIActivityItemsConfigurationMetadataKeyLinkPresentationMetadata:
&'static UIActivityItemsConfigurationMetadataKey;
}
pub type UIActivityItemsConfigurationPreviewIntent = NSString;
extern "C" {
pub static UIActivityItemsConfigurationPreviewIntentFullSize:
&'static UIActivityItemsConfigurationPreviewIntent;
}
extern "C" {
pub static UIActivityItemsConfigurationPreviewIntentThumbnail:
&'static UIActivityItemsConfigurationPreviewIntent;
}
pub type UIActivityItemsConfigurationInteraction = NSString;
extern "C" {
pub static UIActivityItemsConfigurationInteractionShare:
&'static UIActivityItemsConfigurationInteraction;
}
extern "C" {
pub static UIActivityItemsConfigurationInteractionCopy:
&'static UIActivityItemsConfigurationInteraction;
}
extern_protocol!(
pub unsafe trait UIActivityItemsConfigurationReading:
NSObjectProtocol + IsMainThreadOnly
{
#[method_id(@__retain_semantics Other itemProvidersForActivityItemsConfiguration)]
unsafe fn itemProvidersForActivityItemsConfiguration(
&self,
) -> Retained<NSArray<NSItemProvider>>;
#[optional]
#[method(activityItemsConfigurationSupportsInteraction:)]
unsafe fn activityItemsConfigurationSupportsInteraction(
&self,
interaction: &UIActivityItemsConfigurationInteraction,
) -> bool;
#[optional]
#[method_id(@__retain_semantics Other activityItemsConfigurationMetadataForKey:)]
unsafe fn activityItemsConfigurationMetadataForKey(
&self,
key: &UIActivityItemsConfigurationMetadataKey,
) -> Option<Retained<AnyObject>>;
#[optional]
#[method_id(@__retain_semantics Other activityItemsConfigurationMetadataForItemAtIndex:key:)]
unsafe fn activityItemsConfigurationMetadataForItemAtIndex_key(
&self,
index: NSInteger,
key: &UIActivityItemsConfigurationMetadataKey,
) -> Option<Retained<AnyObject>>;
#[optional]
#[method_id(@__retain_semantics Other activityItemsConfigurationPreviewForItemAtIndex:intent:suggestedSize:)]
unsafe fn activityItemsConfigurationPreviewForItemAtIndex_intent_suggestedSize(
&self,
index: NSInteger,
intent: &UIActivityItemsConfigurationPreviewIntent,
suggested_size: CGSize,
) -> Option<Retained<NSItemProvider>>;
#[cfg(feature = "UIActivity")]
#[optional]
#[method_id(@__retain_semantics Other applicationActivitiesForActivityItemsConfiguration)]
unsafe fn applicationActivitiesForActivityItemsConfiguration(
&self,
) -> Option<Retained<NSArray<UIActivity>>>;
}
unsafe impl ProtocolType for dyn UIActivityItemsConfigurationReading {}
);
extern_protocol!(
pub unsafe trait UIActivityItemsConfigurationProviding: NSObjectProtocol {
#[method_id(@__retain_semantics Other activityItemsConfiguration)]
unsafe fn activityItemsConfiguration(
&self,
mtm: MainThreadMarker,
) -> Option<Retained<ProtocolObject<dyn UIActivityItemsConfigurationReading>>>;
}
unsafe impl ProtocolType for dyn UIActivityItemsConfigurationProviding {}
);