-
Notifications
You must be signed in to change notification settings - Fork 0
/
RBFilterManagerState.h
48 lines (36 loc) · 1.43 KB
/
RBFilterManagerState.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//
// RBFilterManagerState.h
// RadBlock
//
// Created by Mike Pulaski on 22/10/2019.
// Copyright © 2019 Young Dynasty. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "RBSynchronizeInterval.h"
NS_ASSUME_NONNULL_BEGIN
@class RBFilter;
@class RBFilterGroup;
@class RBAdsFilterGroup;
@class RBRegionalFilterGroup;
@class RBPrivacyFilterGroup;
@class RBAnnoyanceFilterGroup;
NS_SWIFT_NAME(FilterManager.State)
@interface RBFilterManagerState : NSObject
@property(class,readonly) RBFilterManagerState* sharedState;
- (instancetype)init NS_UNAVAILABLE;
// State
@property(nonatomic) RBSynchronizeInterval synchronizeInterval;
@property(nonatomic,readonly) NSUInteger numberOfFailuresSinceLastSynchronize;
@property(nonatomic,readonly,nullable) NSDate *nextSynchronizeDate;
@property(nonatomic,readonly,nullable) NSDate *lastSynchronizeDate;
@property(nonatomic,readonly,nullable) NSDate *lastSynchronizeAttemptDate;
@property(nonatomic,getter=isDisabled) BOOL disabled;
// Filters / groups
@property(nonatomic,readonly) NSArray<RBFilter*> *filters;
@property(nonatomic,readonly) NSArray<RBFilterGroup *> *filterGroups;
@property(nonatomic,readonly) RBAdsFilterGroup *adsFilterGroup;
@property(nonatomic,readonly) RBRegionalFilterGroup *regionalFilterGroup;
@property(nonatomic,readonly) RBPrivacyFilterGroup *privacyFilterGroup;
@property(nonatomic,readonly) RBAnnoyanceFilterGroup *annoyanceFilterGroup;
@end
NS_ASSUME_NONNULL_END