added iOS source code
[wl-app.git] / iOS / Pods / Fabric / iOS / Fabric.framework / Headers / Fabric.h
1 //
2 //  Fabric.h
3 //  Fabric
4 //
5 //  Copyright (C) 2015 Twitter, Inc.
6 //
7 //  Licensed under the Apache License, Version 2.0 (the "License");
8 //  you may not use this file except in compliance with the License.
9 //  You may obtain a copy of the License at
10 //
11 //  http://www.apache.org/licenses/LICENSE-2.0
12 //
13 //  Unless required by applicable law or agreed to in writing, software
14 //  distributed under the License is distributed on an "AS IS" BASIS,
15 //  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 //  See the License for the specific language governing permissions and
17 //  limitations under the License.
18 //
19
20 #import <Foundation/Foundation.h>
21 #import "FABAttributes.h"
22
23 NS_ASSUME_NONNULL_BEGIN
24
25 #if TARGET_OS_IPHONE
26 #if __IPHONE_OS_VERSION_MIN_REQUIRED < 60000
27     #error "Fabric's minimum iOS version is 6.0"
28 #endif
29 #else
30 #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
31     #error "Fabric's minimum OS X version is 10.7"
32 #endif
33 #endif
34
35 /**
36  *  Fabric Base. Coordinates configuration and starts all provided kits.
37  */
38 @interface Fabric : NSObject
39
40 /**
41  * Initialize Fabric and all provided kits. Call this method within your App Delegate's `application:didFinishLaunchingWithOptions:` and provide the kits you wish to use.
42  *
43  * For example, in Objective-C:
44  *
45  *      `[Fabric with:@[[Crashlytics class], [Twitter class], [Digits class], [MoPub class]]];`
46  *
47  * Swift:
48  *
49  *      `Fabric.with([Crashlytics.self(), Twitter.self(), Digits.self(), MoPub.self()])`
50  *
51  * Only the first call to this method is honored. Subsequent calls are no-ops.
52  *
53  * @param kitClasses An array of kit Class objects
54  *
55  * @return Returns the shared Fabric instance. In most cases this can be ignored.
56  */
57 + (instancetype)with:(NSArray *)kitClasses;
58
59 /**
60  *  Returns the Fabric singleton object.
61  */
62 + (instancetype)sharedSDK;
63
64 /**
65  *  This BOOL enables or disables debug logging, such as kit version information. The default value is NO.
66  */
67 @property (nonatomic, assign) BOOL debug;
68
69 /**
70  *  Unavailable. Use `+sharedSDK` to retrieve the shared Fabric instance.
71  */
72 - (id)init FAB_UNAVAILABLE("Use +sharedSDK to retrieve the shared Fabric instance.");
73
74 /**
75  *  Unavailable. Use `+sharedSDK` to retrieve the shared Fabric instance.
76  */
77 + (instancetype)new FAB_UNAVAILABLE("Use +sharedSDK to retrieve the shared Fabric instance.");
78
79 @end
80
81 NS_ASSUME_NONNULL_END
82