objc2_ui_kit/generated/
UITextInputTraits.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextautocapitalizationtype?language=objc)
11// NS_ENUM
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct UITextAutocapitalizationType(pub NSInteger);
15impl UITextAutocapitalizationType {
16    #[doc(alias = "UITextAutocapitalizationTypeNone")]
17    pub const None: Self = Self(0);
18    #[doc(alias = "UITextAutocapitalizationTypeWords")]
19    pub const Words: Self = Self(1);
20    #[doc(alias = "UITextAutocapitalizationTypeSentences")]
21    pub const Sentences: Self = Self(2);
22    #[doc(alias = "UITextAutocapitalizationTypeAllCharacters")]
23    pub const AllCharacters: Self = Self(3);
24}
25
26unsafe impl Encode for UITextAutocapitalizationType {
27    const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for UITextAutocapitalizationType {
31    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextautocorrectiontype?language=objc)
35// NS_ENUM
36#[repr(transparent)]
37#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
38pub struct UITextAutocorrectionType(pub NSInteger);
39impl UITextAutocorrectionType {
40    #[doc(alias = "UITextAutocorrectionTypeDefault")]
41    pub const Default: Self = Self(0);
42    #[doc(alias = "UITextAutocorrectionTypeNo")]
43    pub const No: Self = Self(1);
44    #[doc(alias = "UITextAutocorrectionTypeYes")]
45    pub const Yes: Self = Self(2);
46}
47
48unsafe impl Encode for UITextAutocorrectionType {
49    const ENCODING: Encoding = NSInteger::ENCODING;
50}
51
52unsafe impl RefEncode for UITextAutocorrectionType {
53    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
54}
55
56/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextspellcheckingtype?language=objc)
57// NS_ENUM
58#[repr(transparent)]
59#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
60pub struct UITextSpellCheckingType(pub NSInteger);
61impl UITextSpellCheckingType {
62    #[doc(alias = "UITextSpellCheckingTypeDefault")]
63    pub const Default: Self = Self(0);
64    #[doc(alias = "UITextSpellCheckingTypeNo")]
65    pub const No: Self = Self(1);
66    #[doc(alias = "UITextSpellCheckingTypeYes")]
67    pub const Yes: Self = Self(2);
68}
69
70unsafe impl Encode for UITextSpellCheckingType {
71    const ENCODING: Encoding = NSInteger::ENCODING;
72}
73
74unsafe impl RefEncode for UITextSpellCheckingType {
75    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
76}
77
78/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextsmartquotestype?language=objc)
79// NS_ENUM
80#[repr(transparent)]
81#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
82pub struct UITextSmartQuotesType(pub NSInteger);
83impl UITextSmartQuotesType {
84    #[doc(alias = "UITextSmartQuotesTypeDefault")]
85    pub const Default: Self = Self(0);
86    #[doc(alias = "UITextSmartQuotesTypeNo")]
87    pub const No: Self = Self(1);
88    #[doc(alias = "UITextSmartQuotesTypeYes")]
89    pub const Yes: Self = Self(2);
90}
91
92unsafe impl Encode for UITextSmartQuotesType {
93    const ENCODING: Encoding = NSInteger::ENCODING;
94}
95
96unsafe impl RefEncode for UITextSmartQuotesType {
97    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
98}
99
100/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextsmartdashestype?language=objc)
101// NS_ENUM
102#[repr(transparent)]
103#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
104pub struct UITextSmartDashesType(pub NSInteger);
105impl UITextSmartDashesType {
106    #[doc(alias = "UITextSmartDashesTypeDefault")]
107    pub const Default: Self = Self(0);
108    #[doc(alias = "UITextSmartDashesTypeNo")]
109    pub const No: Self = Self(1);
110    #[doc(alias = "UITextSmartDashesTypeYes")]
111    pub const Yes: Self = Self(2);
112}
113
114unsafe impl Encode for UITextSmartDashesType {
115    const ENCODING: Encoding = NSInteger::ENCODING;
116}
117
118unsafe impl RefEncode for UITextSmartDashesType {
119    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
120}
121
122/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextsmartinsertdeletetype?language=objc)
123// NS_ENUM
124#[repr(transparent)]
125#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
126pub struct UITextSmartInsertDeleteType(pub NSInteger);
127impl UITextSmartInsertDeleteType {
128    #[doc(alias = "UITextSmartInsertDeleteTypeDefault")]
129    pub const Default: Self = Self(0);
130    #[doc(alias = "UITextSmartInsertDeleteTypeNo")]
131    pub const No: Self = Self(1);
132    #[doc(alias = "UITextSmartInsertDeleteTypeYes")]
133    pub const Yes: Self = Self(2);
134}
135
136unsafe impl Encode for UITextSmartInsertDeleteType {
137    const ENCODING: Encoding = NSInteger::ENCODING;
138}
139
140unsafe impl RefEncode for UITextSmartInsertDeleteType {
141    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
142}
143
144/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextinlinepredictiontype?language=objc)
145// NS_ENUM
146#[repr(transparent)]
147#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
148pub struct UITextInlinePredictionType(pub NSInteger);
149impl UITextInlinePredictionType {
150    #[doc(alias = "UITextInlinePredictionTypeDefault")]
151    pub const Default: Self = Self(0);
152    #[doc(alias = "UITextInlinePredictionTypeNo")]
153    pub const No: Self = Self(1);
154    #[doc(alias = "UITextInlinePredictionTypeYes")]
155    pub const Yes: Self = Self(2);
156}
157
158unsafe impl Encode for UITextInlinePredictionType {
159    const ENCODING: Encoding = NSInteger::ENCODING;
160}
161
162unsafe impl RefEncode for UITextInlinePredictionType {
163    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
164}
165
166/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextmathexpressioncompletiontype?language=objc)
167// NS_ENUM
168#[repr(transparent)]
169#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
170pub struct UITextMathExpressionCompletionType(pub NSInteger);
171impl UITextMathExpressionCompletionType {
172    #[doc(alias = "UITextMathExpressionCompletionTypeDefault")]
173    pub const Default: Self = Self(0);
174    #[doc(alias = "UITextMathExpressionCompletionTypeNo")]
175    pub const No: Self = Self(1);
176    #[doc(alias = "UITextMathExpressionCompletionTypeYes")]
177    pub const Yes: Self = Self(2);
178}
179
180unsafe impl Encode for UITextMathExpressionCompletionType {
181    const ENCODING: Encoding = NSInteger::ENCODING;
182}
183
184unsafe impl RefEncode for UITextMathExpressionCompletionType {
185    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
186}
187
188/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uikeyboardtype?language=objc)
189// NS_ENUM
190#[repr(transparent)]
191#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
192pub struct UIKeyboardType(pub NSInteger);
193impl UIKeyboardType {
194    #[doc(alias = "UIKeyboardTypeDefault")]
195    pub const Default: Self = Self(0);
196    #[doc(alias = "UIKeyboardTypeASCIICapable")]
197    pub const ASCIICapable: Self = Self(1);
198    #[doc(alias = "UIKeyboardTypeNumbersAndPunctuation")]
199    pub const NumbersAndPunctuation: Self = Self(2);
200    #[doc(alias = "UIKeyboardTypeURL")]
201    pub const URL: Self = Self(3);
202    #[doc(alias = "UIKeyboardTypeNumberPad")]
203    pub const NumberPad: Self = Self(4);
204    #[doc(alias = "UIKeyboardTypePhonePad")]
205    pub const PhonePad: Self = Self(5);
206    #[doc(alias = "UIKeyboardTypeNamePhonePad")]
207    pub const NamePhonePad: Self = Self(6);
208    #[doc(alias = "UIKeyboardTypeEmailAddress")]
209    pub const EmailAddress: Self = Self(7);
210    #[doc(alias = "UIKeyboardTypeDecimalPad")]
211    pub const DecimalPad: Self = Self(8);
212    #[doc(alias = "UIKeyboardTypeTwitter")]
213    pub const Twitter: Self = Self(9);
214    #[doc(alias = "UIKeyboardTypeWebSearch")]
215    pub const WebSearch: Self = Self(10);
216    #[doc(alias = "UIKeyboardTypeASCIICapableNumberPad")]
217    pub const ASCIICapableNumberPad: Self = Self(11);
218    #[doc(alias = "UIKeyboardTypeAlphabet")]
219    pub const Alphabet: Self = Self(UIKeyboardType::ASCIICapable.0);
220}
221
222unsafe impl Encode for UIKeyboardType {
223    const ENCODING: Encoding = NSInteger::ENCODING;
224}
225
226unsafe impl RefEncode for UIKeyboardType {
227    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
228}
229
230/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uikeyboardappearance?language=objc)
231// NS_ENUM
232#[repr(transparent)]
233#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
234pub struct UIKeyboardAppearance(pub NSInteger);
235impl UIKeyboardAppearance {
236    #[doc(alias = "UIKeyboardAppearanceDefault")]
237    pub const Default: Self = Self(0);
238    #[doc(alias = "UIKeyboardAppearanceDark")]
239    pub const Dark: Self = Self(1);
240    #[doc(alias = "UIKeyboardAppearanceLight")]
241    pub const Light: Self = Self(2);
242    #[doc(alias = "UIKeyboardAppearanceAlert")]
243    pub const Alert: Self = Self(UIKeyboardAppearance::Dark.0);
244}
245
246unsafe impl Encode for UIKeyboardAppearance {
247    const ENCODING: Encoding = NSInteger::ENCODING;
248}
249
250unsafe impl RefEncode for UIKeyboardAppearance {
251    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
252}
253
254/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uireturnkeytype?language=objc)
255// NS_ENUM
256#[repr(transparent)]
257#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
258pub struct UIReturnKeyType(pub NSInteger);
259impl UIReturnKeyType {
260    #[doc(alias = "UIReturnKeyDefault")]
261    pub const Default: Self = Self(0);
262    #[doc(alias = "UIReturnKeyGo")]
263    pub const Go: Self = Self(1);
264    #[doc(alias = "UIReturnKeyGoogle")]
265    pub const Google: Self = Self(2);
266    #[doc(alias = "UIReturnKeyJoin")]
267    pub const Join: Self = Self(3);
268    #[doc(alias = "UIReturnKeyNext")]
269    pub const Next: Self = Self(4);
270    #[doc(alias = "UIReturnKeyRoute")]
271    pub const Route: Self = Self(5);
272    #[doc(alias = "UIReturnKeySearch")]
273    pub const Search: Self = Self(6);
274    #[doc(alias = "UIReturnKeySend")]
275    pub const Send: Self = Self(7);
276    #[doc(alias = "UIReturnKeyYahoo")]
277    pub const Yahoo: Self = Self(8);
278    #[doc(alias = "UIReturnKeyDone")]
279    pub const Done: Self = Self(9);
280    #[doc(alias = "UIReturnKeyEmergencyCall")]
281    pub const EmergencyCall: Self = Self(10);
282    #[doc(alias = "UIReturnKeyContinue")]
283    pub const Continue: Self = Self(11);
284}
285
286unsafe impl Encode for UIReturnKeyType {
287    const ENCODING: Encoding = NSInteger::ENCODING;
288}
289
290unsafe impl RefEncode for UIReturnKeyType {
291    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
292}
293
294/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiwritingtoolsbehavior?language=objc)
295// NS_ENUM
296#[repr(transparent)]
297#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
298pub struct UIWritingToolsBehavior(pub NSInteger);
299impl UIWritingToolsBehavior {
300    /// Writing Tools will ignore this view
301    #[doc(alias = "UIWritingToolsBehaviorNone")]
302    pub const None: Self = Self(-1);
303    /// System-defined behavior, may resolve to `None`, `Complete`, or `Limited`
304    #[doc(alias = "UIWritingToolsBehaviorDefault")]
305    pub const Default: Self = Self(0);
306    /// The complete inline-editing experience will be provided if possible.
307    #[doc(alias = "UIWritingToolsBehaviorComplete")]
308    pub const Complete: Self = Self(1);
309    /// The limited, overlay-panel experience will be provided if possible.
310    #[doc(alias = "UIWritingToolsBehaviorLimited")]
311    pub const Limited: Self = Self(2);
312}
313
314unsafe impl Encode for UIWritingToolsBehavior {
315    const ENCODING: Encoding = NSInteger::ENCODING;
316}
317
318unsafe impl RefEncode for UIWritingToolsBehavior {
319    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
320}
321
322/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiwritingtoolsresultoptions?language=objc)
323// NS_OPTIONS
324#[repr(transparent)]
325#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
326pub struct UIWritingToolsResultOptions(pub NSUInteger);
327bitflags::bitflags! {
328    impl UIWritingToolsResultOptions: NSUInteger {
329/// System-defined behavior
330        #[doc(alias = "UIWritingToolsResultDefault")]
331        const Default = 0;
332/// Writing Tools will provide plain text in proofreading suggestions or rewrites
333        #[doc(alias = "UIWritingToolsResultPlainText")]
334        const PlainText = 1<<0;
335/// As well as plain text, Writing Tools will provide text attributes in proofreading suggestions or rewrites that are natively supported or known to be easily adopted (such as lists)
336        #[doc(alias = "UIWritingToolsResultRichText")]
337        const RichText = 1<<1;
338/// implies `RichText`,  and Writing Tools may provide attributes for list layout
339        #[doc(alias = "UIWritingToolsResultList")]
340        const List = 1<<2;
341/// implies `RichText`,  and Writing Tools may provide attributes for tabular layout
342        #[doc(alias = "UIWritingToolsResultTable")]
343        const Table = 1<<3;
344    }
345}
346
347unsafe impl Encode for UIWritingToolsResultOptions {
348    const ENCODING: Encoding = NSUInteger::ENCODING;
349}
350
351unsafe impl RefEncode for UIWritingToolsResultOptions {
352    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
353}
354
355/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttype?language=objc)
356// NS_TYPED_ENUM
357pub type UITextContentType = NSString;
358
359extern_class!(
360    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextinputpasswordrules?language=objc)
361    #[unsafe(super(NSObject))]
362    #[thread_kind = MainThreadOnly]
363    #[derive(Debug, PartialEq, Eq, Hash)]
364    pub struct UITextInputPasswordRules;
365);
366
367unsafe impl NSCoding for UITextInputPasswordRules {}
368
369unsafe impl NSCopying for UITextInputPasswordRules {}
370
371unsafe impl CopyingHelper for UITextInputPasswordRules {
372    type Result = Self;
373}
374
375unsafe impl NSObjectProtocol for UITextInputPasswordRules {}
376
377unsafe impl NSSecureCoding for UITextInputPasswordRules {}
378
379impl UITextInputPasswordRules {
380    extern_methods!(
381        #[unsafe(method(passwordRulesDescriptor))]
382        #[unsafe(method_family = none)]
383        pub unsafe fn passwordRulesDescriptor(&self) -> Retained<NSString>;
384
385        #[unsafe(method(init))]
386        #[unsafe(method_family = init)]
387        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
388
389        #[unsafe(method(new))]
390        #[unsafe(method_family = new)]
391        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
392
393        #[unsafe(method(passwordRulesWithDescriptor:))]
394        #[unsafe(method_family = none)]
395        pub unsafe fn passwordRulesWithDescriptor(
396            password_rules_descriptor: &NSString,
397            mtm: MainThreadMarker,
398        ) -> Retained<Self>;
399    );
400}
401
402extern_protocol!(
403    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextinputtraits?language=objc)
404    pub unsafe trait UITextInputTraits: NSObjectProtocol + MainThreadOnly {
405        #[optional]
406        #[unsafe(method(autocapitalizationType))]
407        #[unsafe(method_family = none)]
408        unsafe fn autocapitalizationType(&self) -> UITextAutocapitalizationType;
409
410        /// Setter for [`autocapitalizationType`][Self::autocapitalizationType].
411        #[optional]
412        #[unsafe(method(setAutocapitalizationType:))]
413        #[unsafe(method_family = none)]
414        unsafe fn setAutocapitalizationType(
415            &self,
416            autocapitalization_type: UITextAutocapitalizationType,
417        );
418
419        #[optional]
420        #[unsafe(method(autocorrectionType))]
421        #[unsafe(method_family = none)]
422        unsafe fn autocorrectionType(&self) -> UITextAutocorrectionType;
423
424        /// Setter for [`autocorrectionType`][Self::autocorrectionType].
425        #[optional]
426        #[unsafe(method(setAutocorrectionType:))]
427        #[unsafe(method_family = none)]
428        unsafe fn setAutocorrectionType(&self, autocorrection_type: UITextAutocorrectionType);
429
430        #[optional]
431        #[unsafe(method(spellCheckingType))]
432        #[unsafe(method_family = none)]
433        unsafe fn spellCheckingType(&self) -> UITextSpellCheckingType;
434
435        /// Setter for [`spellCheckingType`][Self::spellCheckingType].
436        #[optional]
437        #[unsafe(method(setSpellCheckingType:))]
438        #[unsafe(method_family = none)]
439        unsafe fn setSpellCheckingType(&self, spell_checking_type: UITextSpellCheckingType);
440
441        #[optional]
442        #[unsafe(method(smartQuotesType))]
443        #[unsafe(method_family = none)]
444        unsafe fn smartQuotesType(&self) -> UITextSmartQuotesType;
445
446        /// Setter for [`smartQuotesType`][Self::smartQuotesType].
447        #[optional]
448        #[unsafe(method(setSmartQuotesType:))]
449        #[unsafe(method_family = none)]
450        unsafe fn setSmartQuotesType(&self, smart_quotes_type: UITextSmartQuotesType);
451
452        #[optional]
453        #[unsafe(method(smartDashesType))]
454        #[unsafe(method_family = none)]
455        unsafe fn smartDashesType(&self) -> UITextSmartDashesType;
456
457        /// Setter for [`smartDashesType`][Self::smartDashesType].
458        #[optional]
459        #[unsafe(method(setSmartDashesType:))]
460        #[unsafe(method_family = none)]
461        unsafe fn setSmartDashesType(&self, smart_dashes_type: UITextSmartDashesType);
462
463        #[optional]
464        #[unsafe(method(smartInsertDeleteType))]
465        #[unsafe(method_family = none)]
466        unsafe fn smartInsertDeleteType(&self) -> UITextSmartInsertDeleteType;
467
468        /// Setter for [`smartInsertDeleteType`][Self::smartInsertDeleteType].
469        #[optional]
470        #[unsafe(method(setSmartInsertDeleteType:))]
471        #[unsafe(method_family = none)]
472        unsafe fn setSmartInsertDeleteType(
473            &self,
474            smart_insert_delete_type: UITextSmartInsertDeleteType,
475        );
476
477        #[optional]
478        #[unsafe(method(inlinePredictionType))]
479        #[unsafe(method_family = none)]
480        unsafe fn inlinePredictionType(&self) -> UITextInlinePredictionType;
481
482        /// Setter for [`inlinePredictionType`][Self::inlinePredictionType].
483        #[optional]
484        #[unsafe(method(setInlinePredictionType:))]
485        #[unsafe(method_family = none)]
486        unsafe fn setInlinePredictionType(
487            &self,
488            inline_prediction_type: UITextInlinePredictionType,
489        );
490
491        #[optional]
492        #[unsafe(method(mathExpressionCompletionType))]
493        #[unsafe(method_family = none)]
494        unsafe fn mathExpressionCompletionType(&self) -> UITextMathExpressionCompletionType;
495
496        /// Setter for [`mathExpressionCompletionType`][Self::mathExpressionCompletionType].
497        #[optional]
498        #[unsafe(method(setMathExpressionCompletionType:))]
499        #[unsafe(method_family = none)]
500        unsafe fn setMathExpressionCompletionType(
501            &self,
502            math_expression_completion_type: UITextMathExpressionCompletionType,
503        );
504
505        #[optional]
506        #[unsafe(method(keyboardType))]
507        #[unsafe(method_family = none)]
508        unsafe fn keyboardType(&self) -> UIKeyboardType;
509
510        /// Setter for [`keyboardType`][Self::keyboardType].
511        #[optional]
512        #[unsafe(method(setKeyboardType:))]
513        #[unsafe(method_family = none)]
514        unsafe fn setKeyboardType(&self, keyboard_type: UIKeyboardType);
515
516        #[optional]
517        #[unsafe(method(keyboardAppearance))]
518        #[unsafe(method_family = none)]
519        unsafe fn keyboardAppearance(&self) -> UIKeyboardAppearance;
520
521        /// Setter for [`keyboardAppearance`][Self::keyboardAppearance].
522        #[optional]
523        #[unsafe(method(setKeyboardAppearance:))]
524        #[unsafe(method_family = none)]
525        unsafe fn setKeyboardAppearance(&self, keyboard_appearance: UIKeyboardAppearance);
526
527        #[optional]
528        #[unsafe(method(returnKeyType))]
529        #[unsafe(method_family = none)]
530        unsafe fn returnKeyType(&self) -> UIReturnKeyType;
531
532        /// Setter for [`returnKeyType`][Self::returnKeyType].
533        #[optional]
534        #[unsafe(method(setReturnKeyType:))]
535        #[unsafe(method_family = none)]
536        unsafe fn setReturnKeyType(&self, return_key_type: UIReturnKeyType);
537
538        #[optional]
539        #[unsafe(method(enablesReturnKeyAutomatically))]
540        #[unsafe(method_family = none)]
541        unsafe fn enablesReturnKeyAutomatically(&self) -> bool;
542
543        /// Setter for [`enablesReturnKeyAutomatically`][Self::enablesReturnKeyAutomatically].
544        #[optional]
545        #[unsafe(method(setEnablesReturnKeyAutomatically:))]
546        #[unsafe(method_family = none)]
547        unsafe fn setEnablesReturnKeyAutomatically(&self, enables_return_key_automatically: bool);
548
549        #[optional]
550        #[unsafe(method(isSecureTextEntry))]
551        #[unsafe(method_family = none)]
552        unsafe fn isSecureTextEntry(&self) -> bool;
553
554        /// Setter for [`isSecureTextEntry`][Self::isSecureTextEntry].
555        #[optional]
556        #[unsafe(method(setSecureTextEntry:))]
557        #[unsafe(method_family = none)]
558        unsafe fn setSecureTextEntry(&self, secure_text_entry: bool);
559
560        #[optional]
561        #[unsafe(method(textContentType))]
562        #[unsafe(method_family = none)]
563        unsafe fn textContentType(&self) -> Retained<UITextContentType>;
564
565        /// Setter for [`textContentType`][Self::textContentType].
566        #[optional]
567        #[unsafe(method(setTextContentType:))]
568        #[unsafe(method_family = none)]
569        unsafe fn setTextContentType(&self, text_content_type: Option<&UITextContentType>);
570
571        #[optional]
572        #[unsafe(method(passwordRules))]
573        #[unsafe(method_family = none)]
574        unsafe fn passwordRules(&self) -> Option<Retained<UITextInputPasswordRules>>;
575
576        /// Setter for [`passwordRules`][Self::passwordRules].
577        #[optional]
578        #[unsafe(method(setPasswordRules:))]
579        #[unsafe(method_family = none)]
580        unsafe fn setPasswordRules(&self, password_rules: Option<&UITextInputPasswordRules>);
581
582        #[optional]
583        #[unsafe(method(writingToolsBehavior))]
584        #[unsafe(method_family = none)]
585        unsafe fn writingToolsBehavior(&self) -> UIWritingToolsBehavior;
586
587        /// Setter for [`writingToolsBehavior`][Self::writingToolsBehavior].
588        #[optional]
589        #[unsafe(method(setWritingToolsBehavior:))]
590        #[unsafe(method_family = none)]
591        unsafe fn setWritingToolsBehavior(&self, writing_tools_behavior: UIWritingToolsBehavior);
592
593        #[optional]
594        #[unsafe(method(allowedWritingToolsResultOptions))]
595        #[unsafe(method_family = none)]
596        unsafe fn allowedWritingToolsResultOptions(&self) -> UIWritingToolsResultOptions;
597
598        /// Setter for [`allowedWritingToolsResultOptions`][Self::allowedWritingToolsResultOptions].
599        #[optional]
600        #[unsafe(method(setAllowedWritingToolsResultOptions:))]
601        #[unsafe(method_family = none)]
602        unsafe fn setAllowedWritingToolsResultOptions(
603            &self,
604            allowed_writing_tools_result_options: UIWritingToolsResultOptions,
605        );
606    }
607);
608
609extern "C" {
610    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypename?language=objc)
611    pub static UITextContentTypeName: &'static UITextContentType;
612}
613
614extern "C" {
615    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypenameprefix?language=objc)
616    pub static UITextContentTypeNamePrefix: &'static UITextContentType;
617}
618
619extern "C" {
620    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypegivenname?language=objc)
621    pub static UITextContentTypeGivenName: &'static UITextContentType;
622}
623
624extern "C" {
625    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypemiddlename?language=objc)
626    pub static UITextContentTypeMiddleName: &'static UITextContentType;
627}
628
629extern "C" {
630    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypefamilyname?language=objc)
631    pub static UITextContentTypeFamilyName: &'static UITextContentType;
632}
633
634extern "C" {
635    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypenamesuffix?language=objc)
636    pub static UITextContentTypeNameSuffix: &'static UITextContentType;
637}
638
639extern "C" {
640    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypenickname?language=objc)
641    pub static UITextContentTypeNickname: &'static UITextContentType;
642}
643
644extern "C" {
645    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypejobtitle?language=objc)
646    pub static UITextContentTypeJobTitle: &'static UITextContentType;
647}
648
649extern "C" {
650    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeorganizationname?language=objc)
651    pub static UITextContentTypeOrganizationName: &'static UITextContentType;
652}
653
654extern "C" {
655    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypelocation?language=objc)
656    pub static UITextContentTypeLocation: &'static UITextContentType;
657}
658
659extern "C" {
660    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypefullstreetaddress?language=objc)
661    pub static UITextContentTypeFullStreetAddress: &'static UITextContentType;
662}
663
664extern "C" {
665    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypestreetaddressline1?language=objc)
666    pub static UITextContentTypeStreetAddressLine1: &'static UITextContentType;
667}
668
669extern "C" {
670    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypestreetaddressline2?language=objc)
671    pub static UITextContentTypeStreetAddressLine2: &'static UITextContentType;
672}
673
674extern "C" {
675    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeaddresscity?language=objc)
676    pub static UITextContentTypeAddressCity: &'static UITextContentType;
677}
678
679extern "C" {
680    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeaddressstate?language=objc)
681    pub static UITextContentTypeAddressState: &'static UITextContentType;
682}
683
684extern "C" {
685    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeaddresscityandstate?language=objc)
686    pub static UITextContentTypeAddressCityAndState: &'static UITextContentType;
687}
688
689extern "C" {
690    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypesublocality?language=objc)
691    pub static UITextContentTypeSublocality: &'static UITextContentType;
692}
693
694extern "C" {
695    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecountryname?language=objc)
696    pub static UITextContentTypeCountryName: &'static UITextContentType;
697}
698
699extern "C" {
700    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypepostalcode?language=objc)
701    pub static UITextContentTypePostalCode: &'static UITextContentType;
702}
703
704extern "C" {
705    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypetelephonenumber?language=objc)
706    pub static UITextContentTypeTelephoneNumber: &'static UITextContentType;
707}
708
709extern "C" {
710    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeemailaddress?language=objc)
711    pub static UITextContentTypeEmailAddress: &'static UITextContentType;
712}
713
714extern "C" {
715    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeurl?language=objc)
716    pub static UITextContentTypeURL: &'static UITextContentType;
717}
718
719extern "C" {
720    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardnumber?language=objc)
721    pub static UITextContentTypeCreditCardNumber: &'static UITextContentType;
722}
723
724extern "C" {
725    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeusername?language=objc)
726    pub static UITextContentTypeUsername: &'static UITextContentType;
727}
728
729extern "C" {
730    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypepassword?language=objc)
731    pub static UITextContentTypePassword: &'static UITextContentType;
732}
733
734extern "C" {
735    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypenewpassword?language=objc)
736    pub static UITextContentTypeNewPassword: &'static UITextContentType;
737}
738
739extern "C" {
740    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeonetimecode?language=objc)
741    pub static UITextContentTypeOneTimeCode: &'static UITextContentType;
742}
743
744extern "C" {
745    /// Parcel tracking numbers such as "FedEx 8602 9191 3550", "1Z50T0536891664106", and "729445720428778".
746    ///
747    /// See also [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeshipmenttrackingnumber?language=objc)
748    pub static UITextContentTypeShipmentTrackingNumber: &'static UITextContentType;
749}
750
751extern "C" {
752    /// Airline flight numbers such as "CZ # 1234", "AA212", and "SW Flight 573".
753    ///
754    /// See also [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypeflightnumber?language=objc)
755    pub static UITextContentTypeFlightNumber: &'static UITextContentType;
756}
757
758extern "C" {
759    /// Dates, times, or durations such as "7-3-2021" or "This Saturday", "12:30", and "10-11am", respectively.
760    ///
761    /// See also [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypedatetime?language=objc)
762    pub static UITextContentTypeDateTime: &'static UITextContentType;
763}
764
765extern "C" {
766    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypebirthdate?language=objc)
767    pub static UITextContentTypeBirthdate: &'static UITextContentType;
768}
769
770extern "C" {
771    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypebirthdateday?language=objc)
772    pub static UITextContentTypeBirthdateDay: &'static UITextContentType;
773}
774
775extern "C" {
776    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypebirthdatemonth?language=objc)
777    pub static UITextContentTypeBirthdateMonth: &'static UITextContentType;
778}
779
780extern "C" {
781    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypebirthdateyear?language=objc)
782    pub static UITextContentTypeBirthdateYear: &'static UITextContentType;
783}
784
785extern "C" {
786    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardsecuritycode?language=objc)
787    pub static UITextContentTypeCreditCardSecurityCode: &'static UITextContentType;
788}
789
790extern "C" {
791    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardname?language=objc)
792    pub static UITextContentTypeCreditCardName: &'static UITextContentType;
793}
794
795extern "C" {
796    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardgivenname?language=objc)
797    pub static UITextContentTypeCreditCardGivenName: &'static UITextContentType;
798}
799
800extern "C" {
801    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardmiddlename?language=objc)
802    pub static UITextContentTypeCreditCardMiddleName: &'static UITextContentType;
803}
804
805extern "C" {
806    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardfamilyname?language=objc)
807    pub static UITextContentTypeCreditCardFamilyName: &'static UITextContentType;
808}
809
810extern "C" {
811    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardexpiration?language=objc)
812    pub static UITextContentTypeCreditCardExpiration: &'static UITextContentType;
813}
814
815extern "C" {
816    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardexpirationmonth?language=objc)
817    pub static UITextContentTypeCreditCardExpirationMonth: &'static UITextContentType;
818}
819
820extern "C" {
821    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardexpirationyear?language=objc)
822    pub static UITextContentTypeCreditCardExpirationYear: &'static UITextContentType;
823}
824
825extern "C" {
826    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecreditcardtype?language=objc)
827    pub static UITextContentTypeCreditCardType: &'static UITextContentType;
828}
829
830extern "C" {
831    /// eSIM activation
832    ///
833    /// See also [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecellulareid?language=objc)
834    pub static UITextContentTypeCellularEID: &'static UITextContentType;
835}
836
837extern "C" {
838    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitextcontenttypecellularimei?language=objc)
839    pub static UITextContentTypeCellularIMEI: &'static UITextContentType;
840}