@protocol AWSTranscribeStreamingClientDelegate <NSObject>

 Invoked when the underlying web socket's connection status changes. If there is an error associated with the
 status change, the error will be included in the callback.
 Any error will have the following structure:
 - domain will be `AWSTranscribeStreamingClientErrorDomain`
 - code will be `AWSTranscribeStreamingClientErrorCode`
 - `userInfo` dictionary may be populated with the keys populated from
    `-[AWSSRWebSocketDelegate webSocket:didCloseWithCode:reason:wasClean:]`:
    - `NSLocalizedFailureReasonErrorKey`
    - `AWSSRStatusCode`
    - `AWSSRStatusReason`
    - `AWSSRWasClean`
 @param connectionStatus the web socket's new connection status
 @param error an optional error associated with the status change
- (void)connectionStatusDidChange:(AWSTranscribeStreamingClientConnectionStatus)connectionStatus
                        withError:(nullable NSError *)error;

 Invoked when the underlying web socket receives a Transcription event. The payload of the event may represent
 an error condition that would not be reported by the error callbacks. See
 `AWSTranscribeStreamingTranscriptResultStream` for details.

 @param event the event
 @param decodingError an optional error that occurred attempting to decode the event
- (void)didReceiveEvent:(nullable AWSTranscribeStreamingTranscriptResultStream *)event
          decodingError:(nullable NSError *)decodingError;