added iOS source code
[wl-app.git] / iOS / Pods / FirebaseMessaging / Firebase / Messaging / FIRMessaging_Private.h
1 /*
2  * Copyright 2017 Google
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #import "FIRMessaging.h"
18
19 @class FIRMessagingClient;
20 @class FIRMessagingPubSub;
21
22 typedef NS_ENUM(int8_t, FIRMessagingNetworkStatus) {
23   kFIRMessagingReachabilityNotReachable = 0,
24   kFIRMessagingReachabilityReachableViaWiFi,
25   kFIRMessagingReachabilityReachableViaWWAN,
26 };
27
28 FOUNDATION_EXPORT NSString *const kFIRMessagingPlistAutoInitEnabled;
29 FOUNDATION_EXPORT NSString *const kFIRMessagingUserDefaultsKeyAutoInitEnabled;
30
31 @interface FIRMessagingRemoteMessage ()
32
33 @property(nonatomic, strong) NSDictionary *appData;
34
35 @end
36
37 @interface FIRMessaging ()
38
39 #pragma mark - Private API
40
41 - (NSString *)defaultFcmToken;
42 - (FIRMessagingClient *)client;
43 - (FIRMessagingPubSub *)pubsub;
44
45 // Create a sample message to be sent over the wire using FIRMessaging. Look at
46 // FIRMessagingService.h to see what each param signifies.
47 + (NSMutableDictionary *)createFIRMessagingMessageWithMessage:(NSDictionary *)message
48                                                   to:(NSString *)to
49                                               withID:(NSString *)msgID
50                                           timeToLive:(int64_t)ttl
51                                                delay:(int)delay;
52
53 - (BOOL)isNetworkAvailable;
54 - (FIRMessagingNetworkStatus)networkType;
55
56 @end