1 #ifdef RCT_NEW_ARCH_ENABLED
2 #import <React/RCTViewComponentView.h>
3 #else
4 #import <React/RCTViewManager.h>
5 #endif
6 
7 #import <React/RCTConvert.h>
8 #import "RNSScreen.h"
9 #import "RNSScreenStackHeaderSubview.h"
10 #import "RNSSearchBar.h"
11 
12 @interface NSString (RNSStringUtil)
13 
14 + (BOOL)RNSisBlank:(NSString *)string;
15 
16 @end
17 
18 @interface RNSScreenStackHeaderConfig :
19 #ifdef RCT_NEW_ARCH_ENABLED
20     RCTViewComponentView
21 #else
22     UIView
23 #endif
24 
25 @property (nonatomic, weak) RNSScreenView *screenView;
26 
27 #ifdef RCT_NEW_ARCH_ENABLED
28 @property (nonatomic) BOOL show;
29 #else
30 @property (nonatomic) UIBlurEffectStyle blurEffect;
31 @property (nonatomic) BOOL hide;
32 #endif
33 
34 @property (nonatomic, retain) NSString *title;
35 @property (nonatomic, retain) NSString *titleFontFamily;
36 @property (nonatomic, retain) NSNumber *titleFontSize;
37 @property (nonatomic, retain) NSString *titleFontWeight;
38 @property (nonatomic, retain) UIColor *titleColor;
39 @property (nonatomic, retain) NSString *backTitle;
40 @property (nonatomic, retain) NSString *backTitleFontFamily;
41 @property (nonatomic, retain) NSNumber *backTitleFontSize;
42 @property (nonatomic, getter=isBackTitleVisible) BOOL backTitleVisible;
43 @property (nonatomic, retain) UIColor *backgroundColor;
44 @property (nonatomic, retain) UIColor *color;
45 @property (nonatomic) BOOL largeTitle;
46 @property (nonatomic, retain) NSString *largeTitleFontFamily;
47 @property (nonatomic, retain) NSNumber *largeTitleFontSize;
48 @property (nonatomic, retain) NSString *largeTitleFontWeight;
49 @property (nonatomic, retain) UIColor *largeTitleBackgroundColor;
50 @property (nonatomic) BOOL largeTitleHideShadow;
51 @property (nonatomic, retain) UIColor *largeTitleColor;
52 @property (nonatomic) BOOL hideBackButton;
53 @property (nonatomic) BOOL disableBackButtonMenu;
54 @property (nonatomic) BOOL hideShadow;
55 @property (nonatomic) BOOL translucent;
56 @property (nonatomic) BOOL backButtonInCustomView;
57 @property (nonatomic) UISemanticContentAttribute direction;
58 
59 + (void)willShowViewController:(UIViewController *)vc
60                       animated:(BOOL)animated
61                     withConfig:(RNSScreenStackHeaderConfig *)config;
62 
63 @end
64 
65 @interface RNSScreenStackHeaderConfigManager : RCTViewManager
66 
67 @end
68 
69 @interface RCTConvert (RNSScreenStackHeader)
70 
71 + (UIBlurEffectStyle)UIBlurEffectStyle:(id)json;
72 + (UISemanticContentAttribute)UISemanticContentAttribute:(id)json;
73 
74 @end
75