//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-foundation")]
use objc2_core_foundation::*;

use crate::*;

/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiaccessibilityzoomtype?language=objc)
// NS_ENUM
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct UIAccessibilityZoomType(pub NSInteger);
impl UIAccessibilityZoomType {
    #[doc(alias = "UIAccessibilityZoomTypeInsertionPoint")]
    pub const InsertionPoint: Self = Self(0);
}

unsafe impl Encode for UIAccessibilityZoomType {
    const ENCODING: Encoding = NSInteger::ENCODING;
}

unsafe impl RefEncode for UIAccessibilityZoomType {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}

#[cfg(all(
    feature = "UIResponder",
    feature = "UIView",
    feature = "objc2-core-foundation"
))]
#[inline]
pub extern "C-unwind" fn UIAccessibilityZoomFocusChanged(
    r#type: UIAccessibilityZoomType,
    frame: CGRect,
    view: &UIView,
) {
    extern "C-unwind" {
        fn UIAccessibilityZoomFocusChanged(
            r#type: UIAccessibilityZoomType,
            frame: CGRect,
            view: &UIView,
        );
    }
    unsafe { UIAccessibilityZoomFocusChanged(r#type, frame, view) }
}

#[inline]
pub extern "C-unwind" fn UIAccessibilityRegisterGestureConflictWithZoom() {
    extern "C-unwind" {
        fn UIAccessibilityRegisterGestureConflictWithZoom();
    }
    unsafe { UIAccessibilityRegisterGestureConflictWithZoom() }
}
