use core::ffi::*;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-location")]
use objc2_core_location::*;
use objc2_foundation::*;
use crate::*;
extern_protocol!(
pub unsafe trait MKAnnotation: NSObjectProtocol {
#[cfg(feature = "objc2-core-location")]
#[unsafe(method(coordinate))]
#[unsafe(method_family = none)]
unsafe fn coordinate(&self) -> CLLocationCoordinate2D;
#[optional]
#[unsafe(method(title))]
#[unsafe(method_family = none)]
unsafe fn title(&self) -> Option<Retained<NSString>>;
#[optional]
#[unsafe(method(subtitle))]
#[unsafe(method_family = none)]
unsafe fn subtitle(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "objc2-core-location")]
#[optional]
#[unsafe(method(setCoordinate:))]
#[unsafe(method_family = none)]
unsafe fn setCoordinate(&self, new_coordinate: CLLocationCoordinate2D);
}
);