#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

typedef NS_ENUM(uint8_t, FSRemovalType) {
    FS_BUNDLE
};

__attribute__((visibility("default")))
@interface FSRemovalReason : NSObject
/**
 * Returns the type of removal that is occurring.
 *
 * See @c FSRemovalType enum value.
 */
@property (nonatomic, readonly) FSRemovalType type;
/**
* A message describing why the removal is occurring.
*/
@property (nonatomic, readonly, copy) NSString *reason;
/**
 * The session id for this removal.
 *
 * May be nil if no session is active
 */
@property (nonatomic, readonly, nullable, copy) NSString *sessionId;
/**
 * The NSError if one was was the cause of the removal.
 *
 * May be nil.
 */
@property (nonatomic, readonly, nullable) NSError *error;

@end

NS_ASSUME_NONNULL_END

