/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #import #import NS_ASSUME_NONNULL_BEGIN @protocol RCTExceptionsManagerDelegate - (void)handleSoftJSExceptionWithMessage:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(NSNumber *)exceptionId extraDataAsJSON:(nullable NSString *)extraDataAsJSON; - (void)handleFatalJSExceptionWithMessage:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(NSNumber *)exceptionId extraDataAsJSON:(nullable NSString *)extraDataAsJSON; @optional - (void)updateJSExceptionWithMessage:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(NSNumber *)exceptionId; @end @interface RCTExceptionsManager : NSObject - (instancetype)initWithDelegate:(id)delegate; - (void)reportSoftException:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(double)exceptionId; - (void)reportFatalException:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(double)exceptionId; - (void)reportJsException:(nullable NSString *)message stack:(nullable NSArray *)stack exceptionId:(double)exceptionId isFatal:(bool)isFatal; @property (nonatomic, weak) id delegate; @property (nonatomic, assign) NSUInteger maxReloadAttempts; @end NS_ASSUME_NONNULL_END