forked from firebase/firebase-cpp-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
google_services.fbs
93 lines (83 loc) · 1.97 KB
/
google_services.fbs
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
// The FlatBuffers schema for configuring Firebase desktop support. Right now
// it is defined as a subset of JSON format for Firebase Android platform. App
// developer can download google-services.json from Firebase console and use it
// for desktop development.
// All FlatBuffers class is under namespace firebase::fbs to avoid contaminating
// the top namespace firebase. Field name must match what is used in the .json
// file and preferably table name is the Camel case of the field.
namespace firebase.fbs;
//
// Below are types to specify each field.
//
//
// Project information.
//
table ProjectInfo {
project_number: string;
firebase_url: string;
project_id: string;
storage_bucket: string;
}
// General app client information.
table AndroidClientInfo {
package_name: string;
}
table ClientInfo {
mobilesdk_app_id: string;
android_client_info: AndroidClientInfo;
}
table AndroidInfo {
package_name: string;
certificate_hash: string;
}
table OAuthClient {
client_id: string;
client_type: int;
android_info: AndroidInfo;
}
table ApiKey {
current_key: string;
}
// Services information.
table AnalyticsProperty {
tracking_id: string;
}
table AnalyticsService {
status: int;
analytics_property: AnalyticsProperty;
}
table AppInviteService {
status: int;
}
table AdsService {
status: int;
test_banner_ad_unit_id: string;
test_interstitial_ad_unit_id: string;
analytics_service: AnalyticsService;
}
table Services {
analytics_service: AnalyticsService;
appinvite_service: AppInviteService;
ads_service: AdsService;
}
//
// Top level app client information.
//
table Client {
client_info: ClientInfo;
oauth_client: [OAuthClient];
api_key: [ApiKey];
services: Services;
}
//
// This is the top level type to specify a configuration file.
//
table GoogleServices {
// Project information.
project_info: ProjectInfo;
// App information.
client: [Client];
// Project version string.
configuration_version: string;
}
root_type GoogleServices;