Documentation Archive Developer
Search

WatchConnectivity Changes for Swift

WatchConnectivity

Declaration
From
enum WCErrorCode : Int {
    case GenericError
    case SessionNotSupported
    case SessionMissingDelegate
    case SessionNotActivated
    case DeviceNotPaired
    case WatchAppNotInstalled
    case NotReachable
    case InvalidParameter
    case PayloadTooLarge
    case PayloadUnsupportedTypes
    case MessageReplyFailed
    case MessageReplyTimedOut
    case FileAccessDenied
    case DeliveryFailed
    case InsufficientSpace
    case SessionInactive
    case TransferTimedOut
}
To
enum Code : Int {
        typealias _ErrorType = WCError
        case genericError
        case sessionNotSupported
        case sessionMissingDelegate
        case sessionNotActivated
        case deviceNotPaired
        case watchAppNotInstalled
        case notReachable
        case invalidParameter
        case payloadTooLarge
        case payloadUnsupportedTypes
        case messageReplyFailed
        case messageReplyTimedOut
        case fileAccessDenied
        case deliveryFailed
        case insufficientSpace
        case sessionInactive
        case transferTimedOut
    }

DeclarationIntroduction
From
case DeliveryFailed
watchOS 2.0
To
case deliveryFailed
watchOS 3.0

Declaration
From
case DeviceNotPaired
To
case deviceNotPaired

Declaration
From
case FileAccessDenied
To
case fileAccessDenied

Declaration
From
case GenericError
To
case genericError

Declaration
From
case InsufficientSpace
To
case insufficientSpace

Declaration
From
case InvalidParameter
To
case invalidParameter

Declaration
From
case MessageReplyFailed
To
case messageReplyFailed

Declaration
From
case MessageReplyTimedOut
To
case messageReplyTimedOut

Declaration
From
case NotReachable
To
case notReachable

Declaration
From
case PayloadTooLarge
To
case payloadTooLarge

Declaration
From
case PayloadUnsupportedTypes
To
case payloadUnsupportedTypes

Declaration
From
case SessionInactive
To
case sessionInactive

DeclarationIntroduction
From
case SessionMissingDelegate
watchOS 2.0
To
case sessionMissingDelegate
watchOS 3.0

Declaration
From
case SessionNotActivated
To
case sessionNotActivated

DeclarationIntroduction
From
case SessionNotSupported
watchOS 2.0
To
case sessionNotSupported
watchOS 3.0

Declaration
From
case TransferTimedOut
To
case transferTimedOut

DeclarationIntroduction
From
case WatchAppNotInstalled
watchOS 2.0
To
case watchAppNotInstalled
watchOS 3.0

Modified WCSession
DeclarationProtocols
From
class WCSession : NSObject {
    class func isSupported() -> Bool
    class func defaultSession() -> WCSession
    init()
    weak var delegate: WCSessionDelegate?
    func activateSession()
    var activationState: WCSessionActivationState { get }
    var paired: Bool { get }
    var watchAppInstalled: Bool { get }
    var complicationEnabled: Bool { get }
    var watchDirectoryURL: NSURL? { get }
    var reachable: Bool { get }
    var iOSDeviceNeedsUnlockAfterRebootForReachability: Bool { get }
    func sendMessage(_ message: [String : AnyObject], replyHandler replyHandler: (([String : AnyObject]) -> Void)?, errorHandler errorHandler: ((NSError) -> Void)?)
    func sendMessageData(_ data: NSData, replyHandler replyHandler: ((NSData) -> Void)?, errorHandler errorHandler: ((NSError) -> Void)?)
    var applicationContext: [String : AnyObject] { get }
    func updateApplicationContext(_ applicationContext: [String : AnyObject]) throws
    var receivedApplicationContext: [String : AnyObject] { get }
    func transferUserInfo(_ userInfo: [String : AnyObject]) -> WCSessionUserInfoTransfer
    func transferCurrentComplicationUserInfo(_ userInfo: [String : AnyObject]) -> WCSessionUserInfoTransfer
    var outstandingUserInfoTransfers: [WCSessionUserInfoTransfer] { get }
    func transferFile(_ file: NSURL, metadata metadata: [String : AnyObject]?) -> WCSessionFileTransfer
    var outstandingFileTransfers: [WCSessionFileTransfer] { get }
}
--
To
class WCSession : NSObject {
    class func isSupported() -> Bool
    class func `default`() -> WCSession
    init()
    weak var delegate: WCSessionDelegate?
    func activate()
    var activationState: WCSessionActivationState { get }
    var hasContentPending: Bool { get }
    var isPaired: Bool { get }
    var isWatchAppInstalled: Bool { get }
    var isComplicationEnabled: Bool { get }
    var remainingComplicationUserInfoTransfers: Int { get }
    var watchDirectoryURL: URL? { get }
    var isReachable: Bool { get }
    var iOSDeviceNeedsUnlockAfterRebootForReachability: Bool { get }
    func sendMessage(_ message: [String : Any], replyHandler replyHandler: (@escaping ([String : Any]) -> Swift.Void)?, errorHandler errorHandler: (@escaping (Error) -> Swift.Void)? = nil)
    func sendMessageData(_ data: Data, replyHandler replyHandler: (@escaping (Data) -> Swift.Void)?, errorHandler errorHandler: (@escaping (Error) -> Swift.Void)? = nil)
    var applicationContext: [String : Any] { get }
    func updateApplicationContext(_ applicationContext: [String : Any]) throws
    var receivedApplicationContext: [String : Any] { get }
    func transferUserInfo(_ userInfo: [String : Any] = [:]) -> WCSessionUserInfoTransfer
    func transferCurrentComplicationUserInfo(_ userInfo: [String : Any] = [:]) -> WCSessionUserInfoTransfer
    var outstandingUserInfoTransfers: [WCSessionUserInfoTransfer] { get }
    func transferFile(_ file: URL, metadata metadata: [String : Any]?) -> WCSessionFileTransfer
    var outstandingFileTransfers: [WCSessionFileTransfer] { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension WCSession : CVarArg {
}
extension WCSession : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Declaration
From
func activateSession()
To
func activate()

Declaration
From
var applicationContext: [String : AnyObject] { get }
To
var applicationContext: [String : Any] { get }

Declaration
From
class func defaultSession() -> WCSession
To
class func `default`() -> WCSession

Declaration
From
var reachable: Bool { get }
To
var isReachable: Bool { get }

Declaration
From
var receivedApplicationContext: [String : AnyObject] { get }
To
var receivedApplicationContext: [String : Any] { get }

Declaration
From
func sendMessage(_ message: [String : AnyObject], replyHandler replyHandler: (([String : AnyObject]) -> Void)?, errorHandler errorHandler: ((NSError) -> Void)?)
To
func sendMessage(_ message: [String : Any], replyHandler replyHandler: (@escaping ([String : Any]) -> Swift.Void)?, errorHandler errorHandler: (@escaping (Error) -> Swift.Void)? = nil)

Declaration
From
func sendMessageData(_ data: NSData, replyHandler replyHandler: ((NSData) -> Void)?, errorHandler errorHandler: ((NSError) -> Void)?)
To
func sendMessageData(_ data: Data, replyHandler replyHandler: (@escaping (Data) -> Swift.Void)?, errorHandler errorHandler: (@escaping (Error) -> Swift.Void)? = nil)

Declaration
From
func transferFile(_ file: NSURL, metadata metadata: [String : AnyObject]?) -> WCSessionFileTransfer
To
func transferFile(_ file: URL, metadata metadata: [String : Any]?) -> WCSessionFileTransfer

Declaration
From
func transferUserInfo(_ userInfo: [String : AnyObject]) -> WCSessionUserInfoTransfer
To
func transferUserInfo(_ userInfo: [String : Any] = [:]) -> WCSessionUserInfoTransfer

Declaration
From
func updateApplicationContext(_ applicationContext: [String : AnyObject]) throws
To
func updateApplicationContext(_ applicationContext: [String : Any]) throws

Declaration
From
enum WCSessionActivationState : Int {
    case NotActivated
    case Inactive
    case Activated
}
To
enum WCSessionActivationState : Int {
    case notActivated
    case inactive
    case activated
}

Declaration
From
case Activated
To
case activated

Declaration
From
case Inactive
To
case inactive

Declaration
From
case NotActivated
To
case notActivated

Declaration
From
protocol WCSessionDelegate : NSObjectProtocol {
    optional func session(_ session: WCSession, activationDidCompleteWithState activationState: WCSessionActivationState, error error: NSError?)
    optional func sessionDidBecomeInactive(_ session: WCSession)
    optional func sessionDidDeactivate(_ session: WCSession)
    optional func sessionWatchStateDidChange(_ session: WCSession)
    optional func sessionReachabilityDidChange(_ session: WCSession)
    optional func session(_ session: WCSession, didReceiveMessage message: [String : AnyObject])
    optional func session(_ session: WCSession, didReceiveMessage message: [String : AnyObject], replyHandler replyHandler: ([String : AnyObject]) -> Void)
    optional func session(_ session: WCSession, didReceiveMessageData messageData: NSData)
    optional func session(_ session: WCSession, didReceiveMessageData messageData: NSData, replyHandler replyHandler: (NSData) -> Void)
    optional func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject])
    optional func session(_ session: WCSession, didFinishUserInfoTransfer userInfoTransfer: WCSessionUserInfoTransfer, error error: NSError?)
    optional func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : AnyObject])
    optional func session(_ session: WCSession, didFinishFileTransfer fileTransfer: WCSessionFileTransfer, error error: NSError?)
    optional func session(_ session: WCSession, didReceiveFile file: WCSessionFile)
}
To
protocol WCSessionDelegate : NSObjectProtocol {
    func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error error: Error?)
    func sessionDidBecomeInactive(_ session: WCSession)
    func sessionDidDeactivate(_ session: WCSession)
    optional func sessionWatchStateDidChange(_ session: WCSession)
    optional func sessionReachabilityDidChange(_ session: WCSession)
    optional func session(_ session: WCSession, didReceiveMessage message: [String : Any])
    optional func session(_ session: WCSession, didReceiveMessage message: [String : Any], replyHandler replyHandler: @escaping ([String : Any]) -> Swift.Void)
    optional func session(_ session: WCSession, didReceiveMessageData messageData: Data)
    optional func session(_ session: WCSession, didReceiveMessageData messageData: Data, replyHandler replyHandler: @escaping (Data) -> Swift.Void)
    optional func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : Any])
    optional func session(_ session: WCSession, didFinish userInfoTransfer: WCSessionUserInfoTransfer, error error: Error?)
    optional func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : Any] = [:])
    optional func session(_ session: WCSession, didFinish fileTransfer: WCSessionFileTransfer, error error: Error?)
    optional func session(_ session: WCSession, didReceive file: WCSessionFile)
}

DeclarationOptional
From
optional func session(_ session: WCSession, activationDidCompleteWithState activationState: WCSessionActivationState, error error: NSError?)
yes
To
func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error error: Error?)
--

Declaration
From
optional func session(_ session: WCSession, didFinishFileTransfer fileTransfer: WCSessionFileTransfer, error error: NSError?)
To
optional func session(_ session: WCSession, didFinish fileTransfer: WCSessionFileTransfer, error error: Error?)

Declaration
From
optional func session(_ session: WCSession, didFinishUserInfoTransfer userInfoTransfer: WCSessionUserInfoTransfer, error error: NSError?)
To
optional func session(_ session: WCSession, didFinish userInfoTransfer: WCSessionUserInfoTransfer, error error: Error?)

Declaration
From
optional func session(_ session: WCSession, didReceiveFile file: WCSessionFile)
To
optional func session(_ session: WCSession, didReceive file: WCSessionFile)

Declaration
From
optional func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject])
To
optional func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : Any])

Declaration
From
optional func session(_ session: WCSession, didReceiveMessage message: [String : AnyObject])
To
optional func session(_ session: WCSession, didReceiveMessage message: [String : Any])

Declaration
From
optional func session(_ session: WCSession, didReceiveMessage message: [String : AnyObject], replyHandler replyHandler: ([String : AnyObject]) -> Void)
To
optional func session(_ session: WCSession, didReceiveMessage message: [String : Any], replyHandler replyHandler: @escaping ([String : Any]) -> Swift.Void)

Declaration
From
optional func session(_ session: WCSession, didReceiveMessageData messageData: NSData)
To
optional func session(_ session: WCSession, didReceiveMessageData messageData: Data)

Declaration
From
optional func session(_ session: WCSession, didReceiveMessageData messageData: NSData, replyHandler replyHandler: (NSData) -> Void)
To
optional func session(_ session: WCSession, didReceiveMessageData messageData: Data, replyHandler replyHandler: @escaping (Data) -> Swift.Void)

Declaration
From
optional func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : AnyObject])
To
optional func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : Any] = [:])

Modified WCSessionFile
DeclarationProtocols
From
class WCSessionFile : NSObject {
    var fileURL: NSURL { get }
    var metadata: [String : AnyObject]? { get }
}
--
To
class WCSessionFile : NSObject {
    var fileURL: URL { get }
    var metadata: [String : Any]? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension WCSessionFile : CVarArg {
}
extension WCSessionFile : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Declaration
From
var fileURL: NSURL { get }
To
var fileURL: URL { get }

Declaration
From
var metadata: [String : AnyObject]? { get }
To
var metadata: [String : Any]? { get }

DeclarationProtocols
From
class WCSessionFileTransfer : NSObject {
    var file: WCSessionFile { get }
    var transferring: Bool { get }
    func cancel()
}
--
To
class WCSessionFileTransfer : NSObject {
    var file: WCSessionFile { get }
    var isTransferring: Bool { get }
    func cancel()
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension WCSessionFileTransfer : CVarArg {
}
extension WCSessionFileTransfer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Declaration
From
var transferring: Bool { get }
To
var isTransferring: Bool { get }

DeclarationProtocols
From
class WCSessionUserInfoTransfer : NSObject, NSSecureCoding {
    var currentComplicationInfo: Bool { get }
    var userInfo: [String : AnyObject] { get }
    var transferring: Bool { get }
    func cancel()
}
NSSecureCoding
To
class WCSessionUserInfoTransfer : NSObject, NSSecureCoding {
    var isCurrentComplicationInfo: Bool { get }
    var userInfo: [String : Any] { get }
    var isTransferring: Bool { get }
    func cancel()
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension WCSessionUserInfoTransfer : CVarArg {
}
extension WCSessionUserInfoTransfer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSSecureCoding

Declaration
From
var transferring: Bool { get }
To
var isTransferring: Bool { get }

Declaration
From
var userInfo: [String : AnyObject] { get }
To
var userInfo: [String : Any] { get }