//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;

use crate::*;

/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategory?language=objc)
// NS_TYPED_ENUM
pub type UIContentSizeCategory = NSString;

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryunspecified?language=objc)
    pub static UIContentSizeCategoryUnspecified: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryextrasmall?language=objc)
    pub static UIContentSizeCategoryExtraSmall: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategorysmall?language=objc)
    pub static UIContentSizeCategorySmall: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategorymedium?language=objc)
    pub static UIContentSizeCategoryMedium: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategorylarge?language=objc)
    pub static UIContentSizeCategoryLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryextralarge?language=objc)
    pub static UIContentSizeCategoryExtraLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryextraextralarge?language=objc)
    pub static UIContentSizeCategoryExtraExtraLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryextraextraextralarge?language=objc)
    pub static UIContentSizeCategoryExtraExtraExtraLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryaccessibilitymedium?language=objc)
    pub static UIContentSizeCategoryAccessibilityMedium: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryaccessibilitylarge?language=objc)
    pub static UIContentSizeCategoryAccessibilityLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryaccessibilityextralarge?language=objc)
    pub static UIContentSizeCategoryAccessibilityExtraLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryaccessibilityextraextralarge?language=objc)
    pub static UIContentSizeCategoryAccessibilityExtraExtraLarge: &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategoryaccessibilityextraextraextralarge?language=objc)
    pub static UIContentSizeCategoryAccessibilityExtraExtraExtraLarge:
        &'static UIContentSizeCategory;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategorydidchangenotification?language=objc)
    pub static UIContentSizeCategoryDidChangeNotification: &'static NSNotificationName;
}

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uicontentsizecategorynewvaluekey?language=objc)
    pub static UIContentSizeCategoryNewValueKey: &'static NSString;
}

#[inline]
pub extern "C-unwind" fn UIContentSizeCategoryIsAccessibilityCategory(
    category: &UIContentSizeCategory,
) -> bool {
    extern "C-unwind" {
        fn UIContentSizeCategoryIsAccessibilityCategory(category: &UIContentSizeCategory) -> Bool;
    }
    unsafe { UIContentSizeCategoryIsAccessibilityCategory(category) }.as_bool()
}

#[inline]
pub extern "C-unwind" fn UIContentSizeCategoryCompareToCategory(
    lhs: &UIContentSizeCategory,
    rhs: &UIContentSizeCategory,
) -> NSComparisonResult {
    extern "C-unwind" {
        fn UIContentSizeCategoryCompareToCategory(
            lhs: &UIContentSizeCategory,
            rhs: &UIContentSizeCategory,
        ) -> NSComparisonResult;
    }
    unsafe { UIContentSizeCategoryCompareToCategory(lhs, rhs) }
}
