@class NSString, AVWeakReference, NSArray, NSObject; @protocol OS_dispatch_queue, OS_dispatch_semaphore; @interface AVWaitForNotificationOrDeallocationOperation : NSOperation { AVWeakReference *_weakReferenceToSelf; AVWeakReference *_weakReferenceToMonitoredObject; NSObject *_operationStateSerializationQueue; NSObject *_monitoringIsFinishedSemaphore; NSArray *_notificationNames; BOOL _registeredForObjectNotifications; BOOL _started; BOOL _finished; } @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)dealloc; - (void)main; - (void)cancel; - (void)_registerForObjectNotifications; - (void)_balanceMonitoringIsFinishedSemaphore; - (id)_monitoredObject; - (void)_signalMonitoringIsFinishedIfNeeded; - (void)_unregisterForObjectNotifications; - (void)_waitUntilFinishedIfNeeded; - (id)initWithObject:(id)a0 notificationNames:(id)a1; - (void)monitoredObjectHasDeparted; @end