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

use crate::*;

extern_protocol!(
    pub unsafe trait UIAccessibilityContentSizeCategoryImageAdjusting:
        NSObjectProtocol
    {
        #[method(adjustsImageSizeForAccessibilityContentSizeCategory)]
        unsafe fn adjustsImageSizeForAccessibilityContentSizeCategory(&self) -> bool;

        #[method(setAdjustsImageSizeForAccessibilityContentSizeCategory:)]
        unsafe fn setAdjustsImageSizeForAccessibilityContentSizeCategory(
            &self,
            adjusts_image_size_for_accessibility_content_size_category: bool,
        );
    }

    unsafe impl ProtocolType for dyn UIAccessibilityContentSizeCategoryImageAdjusting {}
);

extern_methods!(
    /// UIAccessibilityContentSizeCategoryImageAdjusting
    #[cfg(all(feature = "UIImageView", feature = "UIResponder", feature = "UIView"))]
    unsafe impl UIImageView {}
);

#[cfg(all(feature = "UIImageView", feature = "UIResponder", feature = "UIView"))]
unsafe impl UIAccessibilityContentSizeCategoryImageAdjusting for UIImageView {}

extern_methods!(
    /// UIAccessibilityContentSizeCategoryImageAdjusting
    #[cfg(all(
        feature = "UIButton",
        feature = "UIControl",
        feature = "UIResponder",
        feature = "UIView"
    ))]
    unsafe impl UIButton {}
);

#[cfg(all(
    feature = "UIButton",
    feature = "UIControl",
    feature = "UIResponder",
    feature = "UIView"
))]
unsafe impl UIAccessibilityContentSizeCategoryImageAdjusting for UIButton {}

extern_methods!(
    /// UIAccessibilityContentSizeCategoryImageAdjusting
    #[cfg(feature = "NSTextAttachment")]
    unsafe impl NSTextAttachment {}
);

#[cfg(feature = "NSTextAttachment")]
unsafe impl UIAccessibilityContentSizeCategoryImageAdjusting for NSTextAttachment {}
