objc2_event_kit/generated/
EKVirtualConferenceDescriptor.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::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/eventkit/ekvirtualconferenceroomtypeidentifier?language=objc)
10pub type EKVirtualConferenceRoomTypeIdentifier = NSString;
11
12extern_class!(
13    /// Describes a virtual conference room type.
14    ///
15    /// See also [Apple's documentation](https://developer.apple.com/documentation/eventkit/ekvirtualconferenceroomtypedescriptor?language=objc)
16    #[unsafe(super(NSObject))]
17    #[derive(Debug, PartialEq, Eq, Hash)]
18    pub struct EKVirtualConferenceRoomTypeDescriptor;
19);
20
21extern_conformance!(
22    unsafe impl NSObjectProtocol for EKVirtualConferenceRoomTypeDescriptor {}
23);
24
25impl EKVirtualConferenceRoomTypeDescriptor {
26    extern_methods!(
27        /// Initializes an instance of EKVirtualConferenceRoomTypeDescriptor.
28        ///
29        /// Parameter `title`: A user-readable title describing this room type. This string will be
30        /// displayed in UI.
31        ///
32        /// Parameter `identifier`: An EKVirtualConferenceRoomTypeIdentifier that your extension can use to
33        /// distinguish this room type from the other room types that your extension
34        /// provides. This is chosen by your extension and is passed back to your
35        /// extension if the user chooses to create a virtual conference of the
36        /// associated room type.
37        #[unsafe(method(initWithTitle:identifier:))]
38        #[unsafe(method_family = init)]
39        pub unsafe fn initWithTitle_identifier(
40            this: Allocated<Self>,
41            title: &NSString,
42            identifier: &EKVirtualConferenceRoomTypeIdentifier,
43        ) -> Retained<Self>;
44
45        #[unsafe(method(title))]
46        #[unsafe(method_family = none)]
47        pub unsafe fn title(&self) -> Retained<NSString>;
48
49        #[unsafe(method(identifier))]
50        #[unsafe(method_family = none)]
51        pub unsafe fn identifier(&self) -> Retained<EKVirtualConferenceRoomTypeIdentifier>;
52
53        #[unsafe(method(init))]
54        #[unsafe(method_family = init)]
55        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
56
57        #[unsafe(method(new))]
58        #[unsafe(method_family = new)]
59        pub unsafe fn new() -> Retained<Self>;
60    );
61}
62
63extern_class!(
64    /// Describes a URL that can be used to join a virtual conference.
65    ///
66    /// See also [Apple's documentation](https://developer.apple.com/documentation/eventkit/ekvirtualconferenceurldescriptor?language=objc)
67    #[unsafe(super(NSObject))]
68    #[derive(Debug, PartialEq, Eq, Hash)]
69    pub struct EKVirtualConferenceURLDescriptor;
70);
71
72extern_conformance!(
73    unsafe impl NSObjectProtocol for EKVirtualConferenceURLDescriptor {}
74);
75
76impl EKVirtualConferenceURLDescriptor {
77    extern_methods!(
78        /// Initializes an instance of EKVirtualConferenceURLDescriptor.
79        ///
80        /// Parameter `title`: A user-readable title describing this URL. This string may be displayed
81        /// in the UI. This string is optional and may be left nil. If your virtual
82        /// conference only has one way to join it, then you can probably leave this
83        /// nil. However, if your virtual conference has multiple ways to join it,
84        /// you should have a title for each URL so that users can better understand
85        /// what each URL represents.
86        ///
87        /// Parameter `URL`: A URL that, when opened, will join the virtual conference.
88        #[unsafe(method(initWithTitle:URL:))]
89        #[unsafe(method_family = init)]
90        pub unsafe fn initWithTitle_URL(
91            this: Allocated<Self>,
92            title: Option<&NSString>,
93            url: &NSURL,
94        ) -> Retained<Self>;
95
96        #[unsafe(method(title))]
97        #[unsafe(method_family = none)]
98        pub unsafe fn title(&self) -> Option<Retained<NSString>>;
99
100        #[unsafe(method(URL))]
101        #[unsafe(method_family = none)]
102        pub unsafe fn URL(&self) -> Retained<NSURL>;
103
104        #[unsafe(method(init))]
105        #[unsafe(method_family = init)]
106        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
107
108        #[unsafe(method(new))]
109        #[unsafe(method_family = new)]
110        pub unsafe fn new() -> Retained<Self>;
111    );
112}
113
114extern_class!(
115    /// Describes a virtual conference.
116    ///
117    /// See also [Apple's documentation](https://developer.apple.com/documentation/eventkit/ekvirtualconferencedescriptor?language=objc)
118    #[unsafe(super(NSObject))]
119    #[derive(Debug, PartialEq, Eq, Hash)]
120    pub struct EKVirtualConferenceDescriptor;
121);
122
123extern_conformance!(
124    unsafe impl NSObjectProtocol for EKVirtualConferenceDescriptor {}
125);
126
127impl EKVirtualConferenceDescriptor {
128    extern_methods!(
129        /// Initializes an instance of EKVirtualConferenceDescriptor.
130        ///
131        /// Parameter `title`: A user-readable title describing this virtual conference. This string
132        /// may be displayed in the UI. This string is optional and may be left nil.
133        ///
134        /// Parameter `URLDescriptors`: An array of EKVirtualConferenceURLDescriptors, representing the various
135        /// ways to join your virtual conference. Do not pass an empty array. Your
136        /// array should be ordered such that the most preferred method of joining
137        /// the virtual conference comes first in the array, with subsequent methods
138        /// of joining appearing in descending priority.
139        ///
140        /// Parameter `conferenceDetails`: A user-readable string containing any other information you wish to
141        /// communicate to the user about this virtual conference. This string will
142        /// be displayed in the UI. This argument is optional and may be left nil.
143        #[unsafe(method(initWithTitle:URLDescriptors:conferenceDetails:))]
144        #[unsafe(method_family = init)]
145        pub unsafe fn initWithTitle_URLDescriptors_conferenceDetails(
146            this: Allocated<Self>,
147            title: Option<&NSString>,
148            url_descriptors: &NSArray<EKVirtualConferenceURLDescriptor>,
149            conference_details: Option<&NSString>,
150        ) -> Retained<Self>;
151
152        #[unsafe(method(title))]
153        #[unsafe(method_family = none)]
154        pub unsafe fn title(&self) -> Option<Retained<NSString>>;
155
156        #[unsafe(method(URLDescriptors))]
157        #[unsafe(method_family = none)]
158        pub unsafe fn URLDescriptors(&self) -> Retained<NSArray<EKVirtualConferenceURLDescriptor>>;
159
160        #[unsafe(method(conferenceDetails))]
161        #[unsafe(method_family = none)]
162        pub unsafe fn conferenceDetails(&self) -> Option<Retained<NSString>>;
163
164        #[unsafe(method(init))]
165        #[unsafe(method_family = init)]
166        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
167
168        #[unsafe(method(new))]
169        #[unsafe(method_family = new)]
170        pub unsafe fn new() -> Retained<Self>;
171    );
172}