use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_protocol!(
pub unsafe trait MEMessageActionHandler: NSObjectProtocol {
#[cfg(all(
feature = "MEMessage",
feature = "MEMessageActionDecision",
feature = "block2"
))]
#[method(decideActionForMessage:completionHandler:)]
unsafe fn decideActionForMessage_completionHandler(
&self,
message: &MEMessage,
completion_handler: &block2::Block<dyn Fn(*mut MEMessageActionDecision)>,
);
#[optional]
#[method_id(@__retain_semantics Other requiredHeaders)]
unsafe fn requiredHeaders(&self) -> Retained<NSArray<NSString>>;
}
unsafe impl ProtocolType for dyn MEMessageActionHandler {}
);