// Copyright 2013 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #import <Flutter/Flutter.h> NS_ASSUME_NONNULL_BEGIN /// A thread safe wrapper for FlutterEventChannel that can be called from any thread, by dispatching /// its underlying engine calls to the main thread. @interface FLTThreadSafeEventChannel : NSObject /// Creates a FLTThreadSafeEventChannel by wrapping a FlutterEventChannel object. /// @param channel The FlutterEventChannel object to be wrapped. - (instancetype)initWithEventChannel:(FlutterEventChannel *)channel; /// Registers a handler on the main thread for stream setup requests from the Flutter side. /// The completion block runs on the main thread. - (void)setStreamHandler:(nullable NSObject<FlutterStreamHandler> *)handler completion:(void (^)(void))completion; @end NS_ASSUME_NONNULL_END