declare const enum WCErrorCode { GenericError = 7001, SessionNotSupported = 7002, SessionMissingDelegate = 7003, SessionNotActivated = 7004, DeviceNotPaired = 7005, WatchAppNotInstalled = 7006, NotReachable = 7007, InvalidParameter = 7008, PayloadTooLarge = 7009, PayloadUnsupportedTypes = 7010, MessageReplyFailed = 7011, MessageReplyTimedOut = 7012, FileAccessDenied = 7013, DeliveryFailed = 7014, InsufficientSpace = 7015, SessionInactive = 7016, TransferTimedOut = 7017 } declare var WCErrorDomain: string; declare class WCSession extends NSObject { static alloc(): WCSession; // inherited from NSObject static defaultSession(): WCSession; static isSupported(): boolean; static new(): WCSession; // inherited from NSObject readonly activationState: WCSessionActivationState; readonly applicationContext: NSDictionary; readonly complicationEnabled: boolean; delegate: WCSessionDelegate; readonly hasContentPending: boolean; readonly outstandingFileTransfers: NSArray; readonly outstandingUserInfoTransfers: NSArray; readonly paired: boolean; readonly reachable: boolean; readonly receivedApplicationContext: NSDictionary; readonly remainingComplicationUserInfoTransfers: number; readonly watchAppInstalled: boolean; readonly watchDirectoryURL: NSURL; activateSession(): void; sendMessageDataReplyHandlerErrorHandler(data: NSData, replyHandler: (p1: NSData) => void, errorHandler: (p1: NSError) => void): void; sendMessageReplyHandlerErrorHandler(message: NSDictionary, replyHandler: (p1: NSDictionary) => void, errorHandler: (p1: NSError) => void): void; transferCurrentComplicationUserInfo(userInfo: NSDictionary): WCSessionUserInfoTransfer; transferFileMetadata(file: NSURL, metadata: NSDictionary): WCSessionFileTransfer; transferUserInfo(userInfo: NSDictionary): WCSessionUserInfoTransfer; updateApplicationContextError(applicationContext: NSDictionary): boolean; } declare const enum WCSessionActivationState { NotActivated = 0, Inactive = 1, Activated = 2 } interface WCSessionDelegate extends NSObjectProtocol { sessionActivationDidCompleteWithStateError(session: WCSession, activationState: WCSessionActivationState, error: NSError): void; sessionDidBecomeInactive(session: WCSession): void; sessionDidDeactivate(session: WCSession): void; sessionDidFinishFileTransferError?(session: WCSession, fileTransfer: WCSessionFileTransfer, error: NSError): void; sessionDidFinishUserInfoTransferError?(session: WCSession, userInfoTransfer: WCSessionUserInfoTransfer, error: NSError): void; sessionDidReceiveApplicationContext?(session: WCSession, applicationContext: NSDictionary): void; sessionDidReceiveFile?(session: WCSession, file: WCSessionFile): void; sessionDidReceiveMessage?(session: WCSession, message: NSDictionary): void; sessionDidReceiveMessageData?(session: WCSession, messageData: NSData): void; sessionDidReceiveMessageDataReplyHandler?(session: WCSession, messageData: NSData, replyHandler: (p1: NSData) => void): void; sessionDidReceiveMessageReplyHandler?(session: WCSession, message: NSDictionary, replyHandler: (p1: NSDictionary) => void): void; sessionDidReceiveUserInfo?(session: WCSession, userInfo: NSDictionary): void; sessionReachabilityDidChange?(session: WCSession): void; sessionWatchStateDidChange?(session: WCSession): void; } declare var WCSessionDelegate: { prototype: WCSessionDelegate; }; declare class WCSessionFile extends NSObject { static alloc(): WCSessionFile; // inherited from NSObject static new(): WCSessionFile; // inherited from NSObject readonly fileURL: NSURL; readonly metadata: NSDictionary; } declare class WCSessionFileTransfer extends NSObject { static alloc(): WCSessionFileTransfer; // inherited from NSObject static new(): WCSessionFileTransfer; // inherited from NSObject readonly file: WCSessionFile; readonly transferring: boolean; cancel(): void; } declare class WCSessionUserInfoTransfer extends NSObject implements NSSecureCoding { static alloc(): WCSessionUserInfoTransfer; // inherited from NSObject static new(): WCSessionUserInfoTransfer; // inherited from NSObject readonly currentComplicationInfo: boolean; readonly transferring: boolean; readonly userInfo: NSDictionary; static readonly supportsSecureCoding: boolean; // inherited from NSSecureCoding constructor(o: { coder: NSCoder; }); // inherited from NSCoding cancel(): void; encodeWithCoder(aCoder: NSCoder): void; initWithCoder(aDecoder: NSCoder): this; }