objc2_ui_kit/generated/
UIActivityItemsConfigurationReading.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5#[cfg(feature = "objc2-core-foundation")]
6use objc2_core_foundation::*;
7use objc2_foundation::*;
8
9use crate::*;
10
11/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationmetadatakey?language=objc)
12// NS_TYPED_EXTENSIBLE_ENUM
13pub type UIActivityItemsConfigurationMetadataKey = NSString;
14
15extern "C" {
16    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationmetadatakeytitle?language=objc)
17    pub static UIActivityItemsConfigurationMetadataKeyTitle:
18        &'static UIActivityItemsConfigurationMetadataKey;
19}
20
21extern "C" {
22    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationmetadatakeymessagebody?language=objc)
23    pub static UIActivityItemsConfigurationMetadataKeyMessageBody:
24        &'static UIActivityItemsConfigurationMetadataKey;
25}
26
27extern "C" {
28    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationmetadatakeylinkpresentationmetadata?language=objc)
29    pub static UIActivityItemsConfigurationMetadataKeyLinkPresentationMetadata:
30        &'static UIActivityItemsConfigurationMetadataKey;
31}
32
33/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationpreviewintent?language=objc)
34// NS_TYPED_EXTENSIBLE_ENUM
35pub type UIActivityItemsConfigurationPreviewIntent = NSString;
36
37extern "C" {
38    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationpreviewintentfullsize?language=objc)
39    pub static UIActivityItemsConfigurationPreviewIntentFullSize:
40        &'static UIActivityItemsConfigurationPreviewIntent;
41}
42
43extern "C" {
44    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationpreviewintentthumbnail?language=objc)
45    pub static UIActivityItemsConfigurationPreviewIntentThumbnail:
46        &'static UIActivityItemsConfigurationPreviewIntent;
47}
48
49/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationinteraction?language=objc)
50// NS_TYPED_EXTENSIBLE_ENUM
51pub type UIActivityItemsConfigurationInteraction = NSString;
52
53extern "C" {
54    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationinteractionshare?language=objc)
55    pub static UIActivityItemsConfigurationInteractionShare:
56        &'static UIActivityItemsConfigurationInteraction;
57}
58
59extern "C" {
60    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationinteractioncopy?language=objc)
61    pub static UIActivityItemsConfigurationInteractionCopy:
62        &'static UIActivityItemsConfigurationInteraction;
63}
64
65extern_protocol!(
66    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationreading?language=objc)
67    pub unsafe trait UIActivityItemsConfigurationReading:
68        NSObjectProtocol + MainThreadOnly
69    {
70        #[unsafe(method(itemProvidersForActivityItemsConfiguration))]
71        #[unsafe(method_family = none)]
72        fn itemProvidersForActivityItemsConfiguration(&self) -> Retained<NSArray<NSItemProvider>>;
73
74        #[optional]
75        #[unsafe(method(activityItemsConfigurationSupportsInteraction:))]
76        #[unsafe(method_family = none)]
77        fn activityItemsConfigurationSupportsInteraction(
78            &self,
79            interaction: &UIActivityItemsConfigurationInteraction,
80        ) -> bool;
81
82        #[optional]
83        #[unsafe(method(activityItemsConfigurationMetadataForKey:))]
84        #[unsafe(method_family = none)]
85        fn activityItemsConfigurationMetadataForKey(
86            &self,
87            key: &UIActivityItemsConfigurationMetadataKey,
88        ) -> Option<Retained<AnyObject>>;
89
90        #[optional]
91        #[unsafe(method(activityItemsConfigurationMetadataForItemAtIndex:key:))]
92        #[unsafe(method_family = none)]
93        fn activityItemsConfigurationMetadataForItemAtIndex_key(
94            &self,
95            index: NSInteger,
96            key: &UIActivityItemsConfigurationMetadataKey,
97        ) -> Option<Retained<AnyObject>>;
98
99        #[cfg(feature = "objc2-core-foundation")]
100        #[optional]
101        #[unsafe(method(activityItemsConfigurationPreviewForItemAtIndex:intent:suggestedSize:))]
102        #[unsafe(method_family = none)]
103        fn activityItemsConfigurationPreviewForItemAtIndex_intent_suggestedSize(
104            &self,
105            index: NSInteger,
106            intent: &UIActivityItemsConfigurationPreviewIntent,
107            suggested_size: CGSize,
108        ) -> Option<Retained<NSItemProvider>>;
109
110        #[cfg(feature = "UIActivity")]
111        #[optional]
112        #[unsafe(method(applicationActivitiesForActivityItemsConfiguration))]
113        #[unsafe(method_family = none)]
114        fn applicationActivitiesForActivityItemsConfiguration(
115            &self,
116        ) -> Option<Retained<NSArray<UIActivity>>>;
117    }
118);
119
120extern_protocol!(
121    /// Protocol adopted by classes that can provide activity items configurations
122    ///
123    /// See also [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfigurationproviding?language=objc)
124    pub unsafe trait UIActivityItemsConfigurationProviding: NSObjectProtocol {
125        #[unsafe(method(activityItemsConfiguration))]
126        #[unsafe(method_family = none)]
127        fn activityItemsConfiguration(
128            &self,
129            mtm: MainThreadMarker,
130        ) -> Option<Retained<ProtocolObject<dyn UIActivityItemsConfigurationReading>>>;
131    }
132);