use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct PKIdentityElement;
);
extern_conformance!(
unsafe impl NSCopying for PKIdentityElement {}
);
unsafe impl CopyingHelper for PKIdentityElement {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for PKIdentityElement {}
);
impl PKIdentityElement {
extern_methods!(
#[unsafe(method(givenNameElement))]
#[unsafe(method_family = none)]
pub unsafe fn givenNameElement() -> Retained<PKIdentityElement>;
#[unsafe(method(familyNameElement))]
#[unsafe(method_family = none)]
pub unsafe fn familyNameElement() -> Retained<PKIdentityElement>;
#[unsafe(method(portraitElement))]
#[unsafe(method_family = none)]
pub unsafe fn portraitElement() -> Retained<PKIdentityElement>;
#[unsafe(method(addressElement))]
#[unsafe(method_family = none)]
pub unsafe fn addressElement() -> Retained<PKIdentityElement>;
#[unsafe(method(heightElement))]
#[unsafe(method_family = none)]
pub unsafe fn heightElement() -> Retained<PKIdentityElement>;
#[unsafe(method(weightElement))]
#[unsafe(method_family = none)]
pub unsafe fn weightElement() -> Retained<PKIdentityElement>;
#[unsafe(method(eyeColorElement))]
#[unsafe(method_family = none)]
pub unsafe fn eyeColorElement() -> Retained<PKIdentityElement>;
#[unsafe(method(hairColorElement))]
#[unsafe(method_family = none)]
pub unsafe fn hairColorElement() -> Retained<PKIdentityElement>;
#[unsafe(method(organDonorStatusElement))]
#[unsafe(method_family = none)]
pub unsafe fn organDonorStatusElement() -> Retained<PKIdentityElement>;
#[unsafe(method(veteranStatusElement))]
#[unsafe(method_family = none)]
pub unsafe fn veteranStatusElement() -> Retained<PKIdentityElement>;
#[unsafe(method(issuingAuthorityElement))]
#[unsafe(method_family = none)]
pub unsafe fn issuingAuthorityElement() -> Retained<PKIdentityElement>;
#[unsafe(method(documentIssueDateElement))]
#[unsafe(method_family = none)]
pub unsafe fn documentIssueDateElement() -> Retained<PKIdentityElement>;
#[unsafe(method(documentExpirationDateElement))]
#[unsafe(method_family = none)]
pub unsafe fn documentExpirationDateElement() -> Retained<PKIdentityElement>;
#[unsafe(method(documentDHSComplianceStatusElement))]
#[unsafe(method_family = none)]
pub unsafe fn documentDHSComplianceStatusElement() -> Retained<PKIdentityElement>;
#[unsafe(method(documentNumberElement))]
#[unsafe(method_family = none)]
pub unsafe fn documentNumberElement() -> Retained<PKIdentityElement>;
#[unsafe(method(drivingPrivilegesElement))]
#[unsafe(method_family = none)]
pub unsafe fn drivingPrivilegesElement() -> Retained<PKIdentityElement>;
#[unsafe(method(ageElement))]
#[unsafe(method_family = none)]
pub unsafe fn ageElement() -> Retained<PKIdentityElement>;
#[unsafe(method(dateOfBirthElement))]
#[unsafe(method_family = none)]
pub unsafe fn dateOfBirthElement() -> Retained<PKIdentityElement>;
#[unsafe(method(sexElement))]
#[unsafe(method_family = none)]
pub unsafe fn sexElement() -> Retained<PKIdentityElement>;
#[unsafe(method(ageThresholdElementWithAge:))]
#[unsafe(method_family = none)]
pub unsafe fn ageThresholdElementWithAge(age: NSInteger) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}