/*
 *     Generated by class-dump 3.1.2.
 *
 *     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2007 by Steve Nygard.
 */

struct __CFArray;

struct __CFDictionary;

struct __CFSet;

struct __CFString;

/*
 * File: System/Library/Frameworks/ITSync.framework/ITSync
 *       Current version: 18.0.0, Compatibility version: 1.0.0
 */

@interface ITSyncHelper : NSObject
{
    struct __CFArray *_observers;
    struct __CFSet *_observersBlockingSyncs;
    unsigned int _observersBlockingSyncsAreWaiting:1;
    unsigned int _syncingBlockedBySB:1;
    unsigned int _syncProgressState;
    ITSyncFileLocker *_flocker;
    ITSyncFileLocker *_flockerWaitingForSyncEnd;
}

+ (id)helper;
- (id)_init;
- (void)dealloc;
- (void)postNotificationToiTunes:(struct __CFString *)fp8;
- (void)registerObserver:(id)fp8;
- (void)unregisterObserver:(id)fp8;
- (BOOL)_alreadyBlockingSyncs;
- (BOOL)_waitingForFilelock;
- (BOOL)iTunesIsSyncing;
- (BOOL)isSyncingBlockedBySB;
- (void)_noteSBUnblockedSyncing;
- (void)_noteSyncFinished;
- (void)_noteSyncFailed;
- (void)_noteSyncTerminatedAbnormally;
- (void)_noteSyncWillStart;
- (void)_generateSyncEndedAbnormally;
- (void)_generateSyncEndedNormally;
- (void)_noteSyncDidStart;
- (void)_postNotificationForAcquiringLockfileIgnoreingObserver:(id)fp8;
- (BOOL)tryToBlockSyncForRegisteredObserver:(id)fp8 threadedWaitIfNecessary:(BOOL)fp12;
- (void)unblockSyncForRegisteredObserver:(id)fp8;
- (void)syncFileLockerDidAcquireLock:(id)fp8;
- (void)_releaseLockDueNotificationPostFailure:(id)fp8;
- (void)_postDistNoteWithName:(id)fp8;

@end

@interface ITSyncFileLocker : NSObject
{
    unsigned int _uid;
    id _delegate;
    unsigned int _exclusive:1;
    unsigned int _needsDidAcquireCallback:1;
}

+ (id)lockfilePath;
+ (void)_ensureLockFileParentDirectoryExists;
+ (BOOL)_acquireLock:(BOOL)fp8 sharedLock:(BOOL)fp12 instanceUID:(unsigned int)fp16 threadArgs:(struct __CFDictionary *)fp20 notifyMainThreadIfAcquired:(BOOL)fp24;
+ (void)_blockingLockWasAcquired:(struct __CFDictionary *)fp8;
- (id)initWithDelegate:(id)fp8 useExclusiveLocks:(BOOL)fp12;
- (id)description;
- (void)clearDelegate;
- (void)_releaseLockNoSpinLock;
- (void)dealloc;
- (void)releaseLock;
- (void)_blockingLockWasAcquired;
- (BOOL)hasLock;
- (BOOL)acquireLockTryNow;
- (BOOL)acquireLockBlockingOnNewThreadIfNecessary;

@end

