use crate::{api, arc, define_cls, define_obj_type, ns, objc};
define_obj_type!(
#[doc(alias = "UIUpdateActionPhase")]
pub UpdateActionPhase(ns::Id)
);
impl UpdateActionPhase {
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
define_cls!(UI_UPDATE_ACTION_PHASE);
#[objc::msg_send(afterUpdateScheduled)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_update_scheduled() -> arc::R<Self>;
#[objc::msg_send(beforeEventDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn before_event_dispatch() -> arc::R<Self>;
#[objc::msg_send(afterEventDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_event_dispatch() -> arc::R<Self>;
#[objc::msg_send(beforeCADisplayLinkDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn before_ca_display_link_dispatch() -> arc::R<Self>;
#[objc::msg_send(afterCADisplayLinkDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_ca_display_link_dispatch() -> arc::R<Self>;
#[objc::msg_send(beforeCATransactionCommit)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn before_ca_transaction_commit() -> arc::R<Self>;
#[objc::msg_send(afterCATransactionCommit)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_ca_transaction_commit() -> arc::R<Self>;
#[objc::msg_send(beforeLowLatencyEventDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn before_low_latency_event_dispatch() -> arc::R<Self>;
#[objc::msg_send(afterLowLatencyEventDispatch)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_low_latency_event_dispatch() -> arc::R<Self>;
#[objc::msg_send(beforeLowLatencyCATransactionCommit)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn before_low_latency_ca_transaction_commit() -> arc::R<Self>;
#[objc::msg_send(afterLowLatencyCATransactionCommit)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_low_latency_ca_transaction_commit() -> arc::R<Self>;
#[objc::msg_send(afterUpdateComplete)]
#[api::available(ios = 18.0, tvos = 18.0, visionos = 2.0)]
pub fn after_update_complete() -> arc::R<Self>;
}
#[link(name = "ui", kind = "static")]
unsafe extern "C" {
static UI_UPDATE_ACTION_PHASE: &'static objc::Class<UpdateActionPhase>;
}