use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
#[cfg(feature = "objc2-ui-kit")]
use objc2_ui_kit::*;
use crate::*;
extern_class!(
#[unsafe(super(WKInterfaceObject, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(feature = "WKInterfaceObject")]
pub struct WKInterfaceSwitch;
);
#[cfg(feature = "WKInterfaceObject")]
extern_conformance!(
unsafe impl NSObjectProtocol for WKInterfaceSwitch {}
);
#[cfg(feature = "WKInterfaceObject")]
impl WKInterfaceSwitch {
extern_methods!(
#[unsafe(method(setTitle:))]
#[unsafe(method_family = none)]
pub unsafe fn setTitle(&self, title: Option<&NSString>);
#[unsafe(method(setAttributedTitle:))]
#[unsafe(method_family = none)]
pub unsafe fn setAttributedTitle(&self, attributed_title: Option<&NSAttributedString>);
#[unsafe(method(setEnabled:))]
#[unsafe(method_family = none)]
pub unsafe fn setEnabled(&self, enabled: bool);
#[unsafe(method(setOn:))]
#[unsafe(method_family = none)]
pub unsafe fn setOn(&self, on: bool);
#[cfg(feature = "objc2-ui-kit")]
#[unsafe(method(setColor:))]
#[unsafe(method_family = none)]
pub unsafe fn setColor(&self, color: Option<&UIColor>);
);
}
#[cfg(feature = "WKInterfaceObject")]
impl WKInterfaceSwitch {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
);
}
#[cfg(feature = "WKInterfaceObject")]
impl WKInterfaceSwitch {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}