//! This file has been automatically generated by `objc2`'s `header-translator`. //! DO NOT EDIT use core::ptr::NonNull; use objc2::__framework_prelude::*; use crate::*; /// [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiepropertykey?language=objc) // NS_TYPED_EXTENSIBLE_ENUM #[cfg(feature = "NSString")] pub type NSHTTPCookiePropertyKey = NSString; /// [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiestringpolicy?language=objc) // NS_TYPED_ENUM #[cfg(feature = "NSString")] pub type NSHTTPCookieStringPolicy = NSString; extern "C" { /// Key for cookie name /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiename?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieName: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie value /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookievalue?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieValue: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie origin URL /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookieoriginurl?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieOriginURL: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie version /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookieversion?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieVersion: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie domain /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiedomain?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieDomain: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie path /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiepath?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookiePath: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie secure flag /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiesecure?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieSecure: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie expiration date /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookieexpires?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieExpires: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie comment text /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiecomment?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieComment: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie comment URL /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiecommenturl?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieCommentURL: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie discard (session-only) flag /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiediscard?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieDiscard: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie maximum age (an alternate way of specifying the expiration) /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiemaximumage?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieMaximumAge: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie ports /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookieport?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookiePort: &'static NSHTTPCookiePropertyKey; } extern "C" { /// An NSString object indicating that the cookie is set via JavaScript. /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiesetbyjavascript?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieSetByJavaScript: &'static NSHTTPCookiePropertyKey; } extern "C" { /// Key for cookie same site /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiesamesitepolicy?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieSameSitePolicy: &'static NSHTTPCookiePropertyKey; } extern "C" { /// String constant "lax" to be used as a value for the property key NSHTTPCookieSameSite /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiesamesitelax?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieSameSiteLax: &'static NSHTTPCookieStringPolicy; } extern "C" { /// String constant "strict" to be used as a value for the property key NSHTTPCookieSameSite /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookiesamesitestrict?language=objc) #[cfg(feature = "NSString")] pub static NSHTTPCookieSameSiteStrict: &'static NSHTTPCookieStringPolicy; } extern_class!( /// NSHTTPCookie represents an http cookie. /// /// A NSHTTPCookie instance represents a single http cookie. It is /// an immutable object initialized from a dictionary that contains /// the various cookie attributes. It has accessors to get the various /// attributes of a cookie. /// /// See also [Apple's documentation](https://developer.apple.com/documentation/foundation/nshttpcookie?language=objc) #[unsafe(super(NSObject))] #[derive(Debug, PartialEq, Eq, Hash)] pub struct NSHTTPCookie; ); unsafe impl Send for NSHTTPCookie {} unsafe impl Sync for NSHTTPCookie {} extern_conformance!( unsafe impl NSObjectProtocol for NSHTTPCookie {} ); impl NSHTTPCookie { extern_methods!( #[cfg(all(feature = "NSDictionary", feature = "NSString"))] /// Initialize a NSHTTPCookie object with a dictionary of /// parameters /// /// Parameter `properties`: The dictionary of properties to be used to /// initialize this cookie. /// /// Supported dictionary keys and value types for the /// given dictionary are as follows. /// /// All properties can handle an NSString value, but some can also /// handle other types. /// ///
| /// Property key constant /// | ////// Type of value /// | ////// Required /// | ////// Description /// | ///
|---|---|---|---|
| /// NSHTTPCookieComment /// | ////// NSString /// | ////// NO /// | ////// Comment for the cookie. Only valid for version 1 cookies and /// later. Default is nil. /// | ///
| /// NSHTTPCookieCommentURL /// | ////// NSURL or NSString /// | ////// NO /// | ////// Comment URL for the cookie. Only valid for version 1 cookies /// and later. Default is nil. /// | ///
| /// NSHTTPCookieDomain /// | ////// NSString /// | ////// Special, a value for either NSHTTPCookieOriginURL or /// NSHTTPCookieDomain must be specified. /// | ////// Domain for the cookie. Inferred from the value for /// NSHTTPCookieOriginURL if not provided. /// | ///
| /// NSHTTPCookieDiscard /// | ////// NSString /// | ////// NO /// | ////// A string stating whether the cookie should be discarded at /// the end of the session. String value must be either "TRUE" or /// "FALSE". Default is "FALSE", unless this is cookie is version /// 1 or greater and a value for NSHTTPCookieMaximumAge is not /// specified, in which case it is assumed "TRUE". /// | ///
| /// NSHTTPCookieExpires /// | ////// NSDate or NSString /// | ////// NO /// | ////// Expiration date for the cookie. Used only for version 0 /// cookies. Ignored for version 1 or greater. /// | ///
| /// NSHTTPCookieMaximumAge /// | ////// NSString /// | ////// NO /// | ////// A string containing an integer value stating how long in /// seconds the cookie should be kept, at most. Only valid for /// version 1 cookies and later. Default is "0". /// | ///
| /// NSHTTPCookieName /// | ////// NSString /// | ////// YES /// | ////// Name of the cookie /// | ///
| /// NSHTTPCookieOriginURL /// | ////// NSURL or NSString /// | ////// Special, a value for either NSHTTPCookieOriginURL or /// NSHTTPCookieDomain must be specified. /// | ////// URL that set this cookie. Used as default for other fields /// as noted. /// | ///
| /// NSHTTPCookiePath /// | ////// NSString /// | ////// NO /// | ////// Path for the cookie. Inferred from the value for /// NSHTTPCookieOriginURL if not provided. Default is "/". /// | ///
| /// NSHTTPCookiePort /// | ////// NSString /// | ////// NO /// | ////// comma-separated integer values specifying the ports for the /// cookie. Only valid for version 1 cookies and later. Default is /// empty string (""). /// | ///
| /// NSHTTPCookieSecure /// | ////// NSString /// | ////// NO /// | ////// A string stating whether the cookie should be transmitted /// only over secure channels. String value must be either "TRUE" /// or "FALSE". Default is "FALSE". /// | ///
| /// NSHTTPCookieValue /// | ////// NSString /// | ////// YES /// | ////// Value of the cookie /// | ///
| /// NSHTTPCookieVersion /// | ////// NSString /// | ////// NO /// | ////// Specifies the version of the cookie. Must be either "0" or /// "1". Default is "0". /// | ///
| /// NSHTTPCookieSetByJavaScript /// | ////// NSNumber /// | ////// NO /// | ////// `true`if the cookie is set via JavaScript. /// `false`if the cookie /// is not set via JavaScript /// | ///
/// All other keys are ignored.
///
/// Returns: An initialized NSHTTPCookie, or nil if the set of
/// dictionary keys is invalid, for example because a required key is
/// missing, or a recognized key maps to an illegal value.
///
/// # Safety
///
/// `properties` generic should be of the correct type.
#[unsafe(method(initWithProperties:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithProperties(
this: Allocated
/// See the NSHTTPCookie
///
/// -initWithProperties:
///
/// method for
/// more information on the constraints imposed on the dictionary, and
/// for descriptions of the supported keys and values.
///
/// Returns: The dictionary representation of the receiver.
#[unsafe(method(properties))]
#[unsafe(method_family = none)]
pub fn properties(
&self,
) -> Option