//
//     Generated by class-dump 3.5 (64 bit) (Debug version compiled Jul  6 2018 12:02:43).
//
//     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2015 by Steve Nygard.
//

#import <objc/NSObject.h>

@class NSMutableArray, NSString, NSURLRequest, PSWebSocketDeflater, PSWebSocketInflater;
@protocol PSWebSocketDriverDelegate;

@interface PSWebSocketDriver : NSObject
{
    NSURLRequest *_request;
    long long _state;
    BOOL _failed;
    NSString *_handshakeSecKey;
    NSMutableArray *_frames;
    BOOL _pmdEnabled;
    long long _pmdClientWindowBits;
    BOOL _pmdClientNoContextTakeover;
    long long _pmdServerWindowBits;
    BOOL _pmdServerNoContextTakeover;
    PSWebSocketInflater *_inflater;
    PSWebSocketDeflater *_deflater;
    unsigned int _utf8DecoderState;
    unsigned int _utf8DecoderCodePoint;
    long long _mode;
    id <PSWebSocketDriverDelegate> _delegate;
    NSString *_protocol;
}

+ (id)errorWithCode:(long long)arg1 reason:(id)arg2;
+ (id)serverDriverWithRequest:(id)arg1;
+ (id)clientDriverWithRequest:(id)arg1;
+ (BOOL)isWebSocketRequest:(id)arg1;
- (void).cxx_destruct;
@property(retain, nonatomic) NSString *protocol; // @synthesize protocol=_protocol;
@property(nonatomic) __weak id <PSWebSocketDriverDelegate> delegate; // @synthesize delegate=_delegate;
@property(readonly, nonatomic) long long mode; // @synthesize mode=_mode;
- (id)base64EncodedData:(id)arg1;
- (id)acceptHeaderForKey:(id)arg1;
- (BOOL)pmdConfigureWithExtensionsHeaderComponents:(id)arg1;
- (id)pmdExtensionsHeaderComponents;
- (void)failWithError:(id)arg1;
- (void)failWithErrorCode:(long long)arg1 reason:(id)arg2;
- (BOOL)processFramesAndDelegate:(id *)arg1;
- (long long)readBytes:(void *)arg1 maxLength:(unsigned long long)arg2 error:(id *)arg3;
- (void)writeMessageWithOpCode:(unsigned char)arg1 data:(id)arg2;
- (void)writeHandshakeResponse;
- (void)writeHandshakeRequest;
- (void)sendPong:(id)arg1;
- (void)sendPing:(id)arg1;
- (void)sendCloseCode:(long long)arg1 reason:(id)arg2;
- (void)sendBinary:(id)arg1;
- (void)sendText:(id)arg1;
- (unsigned long long)execute:(void *)arg1 maxLength:(unsigned long long)arg2;
- (void)start;
- (id)initWithMode:(long long)arg1 request:(id)arg2;

@end

