use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[unsafe(super(INIntent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(feature = "INIntent")]
#[deprecated = "INSetAudioSourceInCarIntent is deprecated. There is no replacement."]
pub struct INSetAudioSourceInCarIntent;
);
#[cfg(feature = "INIntent")]
extern_conformance!(
unsafe impl NSCoding for INSetAudioSourceInCarIntent {}
);
#[cfg(feature = "INIntent")]
extern_conformance!(
unsafe impl NSCopying for INSetAudioSourceInCarIntent {}
);
#[cfg(feature = "INIntent")]
unsafe impl CopyingHelper for INSetAudioSourceInCarIntent {
type Result = Self;
}
#[cfg(feature = "INIntent")]
extern_conformance!(
unsafe impl NSObjectProtocol for INSetAudioSourceInCarIntent {}
);
#[cfg(feature = "INIntent")]
extern_conformance!(
unsafe impl NSSecureCoding for INSetAudioSourceInCarIntent {}
);
#[cfg(feature = "INIntent")]
impl INSetAudioSourceInCarIntent {
extern_methods!(
#[cfg(all(feature = "INCarAudioSource", feature = "INRelativeReference"))]
#[deprecated = "INSetAudioSourceInCarIntent is deprecated. There is no replacement."]
#[unsafe(method(initWithAudioSource:relativeAudioSourceReference:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAudioSource_relativeAudioSourceReference(
this: Allocated<Self>,
audio_source: INCarAudioSource,
relative_audio_source_reference: INRelativeReference,
) -> Retained<Self>;
#[cfg(feature = "INCarAudioSource")]
#[deprecated = "INSetAudioSourceInCarIntent is deprecated. There is no replacement."]
#[unsafe(method(audioSource))]
#[unsafe(method_family = none)]
pub unsafe fn audioSource(&self) -> INCarAudioSource;
#[cfg(feature = "INRelativeReference")]
#[deprecated = "INSetAudioSourceInCarIntent is deprecated. There is no replacement."]
#[unsafe(method(relativeAudioSourceReference))]
#[unsafe(method_family = none)]
pub unsafe fn relativeAudioSourceReference(&self) -> INRelativeReference;
);
}
#[cfg(feature = "INIntent")]
impl INSetAudioSourceInCarIntent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_protocol!(
#[deprecated = "INSetAudioSourceInCarIntentHandling is deprecated. There is no replacement."]
pub unsafe trait INSetAudioSourceInCarIntentHandling: NSObjectProtocol {
#[cfg(all(
feature = "INIntent",
feature = "INIntentResponse",
feature = "INSetAudioSourceInCarIntentResponse",
feature = "block2"
))]
#[deprecated = "INSetAudioSourceInCarIntentHandling is deprecated. There is no replacement."]
#[unsafe(method(handleSetAudioSourceInCar:completion:))]
#[unsafe(method_family = none)]
unsafe fn handleSetAudioSourceInCar_completion(
&self,
intent: &INSetAudioSourceInCarIntent,
completion: &block2::DynBlock<dyn Fn(NonNull<INSetAudioSourceInCarIntentResponse>)>,
);
#[cfg(all(
feature = "INIntent",
feature = "INIntentResponse",
feature = "INSetAudioSourceInCarIntentResponse",
feature = "block2"
))]
#[deprecated = "INSetAudioSourceInCarIntentHandling is deprecated. There is no replacement."]
#[optional]
#[unsafe(method(confirmSetAudioSourceInCar:completion:))]
#[unsafe(method_family = none)]
unsafe fn confirmSetAudioSourceInCar_completion(
&self,
intent: &INSetAudioSourceInCarIntent,
completion: &block2::DynBlock<dyn Fn(NonNull<INSetAudioSourceInCarIntentResponse>)>,
);
#[cfg(all(
feature = "INCarAudioSourceResolutionResult",
feature = "INIntent",
feature = "INIntentResolutionResult",
feature = "block2"
))]
#[deprecated = "INSetAudioSourceInCarIntentHandling is deprecated. There is no replacement."]
#[optional]
#[unsafe(method(resolveAudioSourceForSetAudioSourceInCar:withCompletion:))]
#[unsafe(method_family = none)]
unsafe fn resolveAudioSourceForSetAudioSourceInCar_withCompletion(
&self,
intent: &INSetAudioSourceInCarIntent,
completion: &block2::DynBlock<dyn Fn(NonNull<INCarAudioSourceResolutionResult>)>,
);
#[cfg(all(
feature = "INIntent",
feature = "INIntentResolutionResult",
feature = "INRelativeReferenceResolutionResult",
feature = "block2"
))]
#[deprecated = "INSetAudioSourceInCarIntentHandling is deprecated. There is no replacement."]
#[optional]
#[unsafe(method(resolveRelativeAudioSourceReferenceForSetAudioSourceInCar:withCompletion:))]
#[unsafe(method_family = none)]
unsafe fn resolveRelativeAudioSourceReferenceForSetAudioSourceInCar_withCompletion(
&self,
intent: &INSetAudioSourceInCarIntent,
completion: &block2::DynBlock<dyn Fn(NonNull<INRelativeReferenceResolutionResult>)>,
);
}
);