Skip to content

Commit a33fd14

Browse files
committed
[types] rework default export types for each module (should fix invertase#2648)
1 parent 8dc6e83 commit a33fd14

File tree

32 files changed

+145
-40
lines changed

32 files changed

+145
-40
lines changed

packages/admob/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1161,6 +1161,8 @@ export namespace FirebaseAdMobTypes {
11611161
}
11621162

11631163
declare module '@react-native-firebase/admob' {
1164+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
1165+
import { ReactNativeFirebase } from '@react-native-firebase/app';
11641166
import React from 'react';
11651167
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
11661168
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
@@ -1181,11 +1183,11 @@ declare module '@react-native-firebase/admob' {
11811183
export const RewardedAd: typeof FirebaseAdMobTypes.RewardedAd;
11821184
export const BannerAd: React.SFC<BannerAd>;
11831185

1184-
const module: FirebaseModuleWithStaticsAndApp<
1186+
const defaultExport: FirebaseModuleWithStaticsAndApp<
11851187
FirebaseAdMobTypes.Module,
11861188
FirebaseAdMobTypes.Statics
11871189
>;
1188-
export default module;
1190+
export default defaultExport;
11891191
}
11901192

11911193
/**

packages/analytics/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1346,17 +1346,19 @@ export namespace FirebaseAnalyticsTypes {
13461346
}
13471347

13481348
declare module '@react-native-firebase/analytics' {
1349+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
1350+
import { ReactNativeFirebase } from '@react-native-firebase/app';
13491351
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
13501352
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
13511353

13521354
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
13531355
export const firebase = firebaseNamedExport;
13541356

1355-
const module: FirebaseModuleWithStatics<
1357+
const defaultExport: FirebaseModuleWithStatics<
13561358
FirebaseAnalyticsTypes.Module,
13571359
FirebaseAnalyticsTypes.Statics
13581360
>;
1359-
export default module;
1361+
export default defaultExport;
13601362
}
13611363

13621364
/**

packages/analytics/type-test.ts

+42-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import firebase from '@react-native-firebase/app';
2-
import * as analytics from '@react-native-firebase/analytics';
1+
import analytics, { firebase } from '@react-native-firebase/analytics';
32

3+
analytics.SDK_VERSION;
4+
analytics().app.name;
45
// checks module exists at root
56
console.log(firebase.analytics().app.name);
67

@@ -10,15 +11,9 @@ console.log(firebase.app().analytics().app.name);
1011
// checks statics exist
1112
console.log(firebase.analytics.SDK_VERSION);
1213

13-
// checks statics exist on defaultExport
14-
console.log(analytics.firebase.SDK_VERSION);
15-
1614
// checks root exists
1715
console.log(firebase.SDK_VERSION);
1816

19-
// checks firebase named export exists on module
20-
console.log(analytics.firebase.SDK_VERSION);
21-
2217
firebase
2318
.analytics()
2419
.logAddPaymentInfo()
@@ -74,3 +69,42 @@ console.log(firebase.analytics().setSessionTimeoutDuration);
7469
console.log(firebase.analytics().setUserId);
7570
console.log(firebase.analytics().setUserProperties);
7671
console.log(firebase.analytics().setUserProperty);
72+
73+
console.log(analytics().logAddPaymentInfo);
74+
console.log(analytics().logAddToCart);
75+
console.log(analytics().logAddToWishlist);
76+
console.log(analytics().logAppOpen);
77+
console.log(analytics().logBeginCheckout);
78+
console.log(analytics().logCampaignDetails);
79+
console.log(analytics().logEarnVirtualCurrency);
80+
console.log(analytics().logEcommercePurchase);
81+
console.log(analytics().logEvent);
82+
console.log(analytics().logGenerateLead);
83+
console.log(analytics().logJoinGroup);
84+
console.log(analytics().logLevelEnd);
85+
console.log(analytics().logLevelStart);
86+
console.log(analytics().logLevelUp);
87+
console.log(analytics().logLogin);
88+
console.log(analytics().logPresentOffer);
89+
console.log(analytics().logPurchaseRefund);
90+
console.log(analytics().logRemoveFromCart);
91+
console.log(analytics().logSearch);
92+
console.log(analytics().logSelectContent);
93+
console.log(analytics().logSetCheckoutOption);
94+
console.log(analytics().logShare);
95+
console.log(analytics().logSignUp);
96+
console.log(analytics().logSpendVirtualCurrency);
97+
console.log(analytics().logTutorialBegin);
98+
console.log(analytics().logTutorialComplete);
99+
console.log(analytics().logUnlockAchievement);
100+
console.log(analytics().logViewItem);
101+
console.log(analytics().logViewItemList);
102+
console.log(analytics().logViewSearchResults);
103+
console.log(analytics().resetAnalyticsData);
104+
console.log(analytics().setAnalyticsCollectionEnabled);
105+
console.log(analytics().setCurrentScreen);
106+
console.log(analytics().setMinimumSessionDuration);
107+
console.log(analytics().setSessionTimeoutDuration);
108+
console.log(analytics().setUserId);
109+
console.log(analytics().setUserProperties);
110+
console.log(analytics().setUserProperty);

packages/auth/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1586,17 +1586,19 @@ export namespace FirebaseAuthTypes {
15861586
}
15871587

15881588
declare module '@react-native-firebase/auth' {
1589+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
1590+
import { ReactNativeFirebase } from '@react-native-firebase/app';
15891591
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
15901592
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
15911593

15921594
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
15931595
export const firebase = firebaseNamedExport;
15941596

1595-
const module: FirebaseModuleWithStaticsAndApp<
1597+
const defaultExport: FirebaseModuleWithStaticsAndApp<
15961598
FirebaseAuthTypes.Module,
15971599
FirebaseAuthTypes.Statics
15981600
>;
1599-
export default module;
1601+
export default defaultExport;
16001602
}
16011603

16021604
/**

packages/auth/type-test.ts

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import firebase from '@react-native-firebase/app';
22
import * as auth from '@react-native-firebase/auth';
33

4+
console.log(auth.default().currentUser);
5+
46
// checks module exists at root
57
console.log(firebase.auth().app.name);
68
console.log(firebase.auth().currentUser);

packages/crashlytics/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -221,17 +221,19 @@ export namespace FirebaseCrashlyticsTypes {
221221
}
222222

223223
declare module '@react-native-firebase/crashlytics' {
224+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
225+
import { ReactNativeFirebase } from '@react-native-firebase/app';
224226
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
225227
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
226228

227229
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
228230
export const firebase = firebaseNamedExport;
229231

230-
const module: FirebaseModuleWithStatics<
232+
const defaultExport: FirebaseModuleWithStatics<
231233
FirebaseCrashlyticsTypes.Module,
232234
FirebaseCrashlyticsTypes.Statics
233235
>;
234-
export default module;
236+
export default defaultExport;
235237
}
236238

237239
/**

packages/crashlytics/type-test.ts

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import firebase from '@react-native-firebase/app';
22
import * as crashlytics from '@react-native-firebase/crashlytics';
33

4+
crashlytics.default().crash();
5+
46
// checks module exists at root
57
console.log(firebase.crashlytics().app.name);
68
console.log(firebase.crashlytics().isCrashlyticsCollectionEnabled);

packages/database/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1221,17 +1221,19 @@ export namespace FirebaseDatabaseTypes {
12211221
}
12221222

12231223
declare module '@react-native-firebase/database' {
1224+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
1225+
import { ReactNativeFirebase } from '@react-native-firebase/app';
12241226
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
12251227
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
12261228

12271229
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
12281230
export const firebase = firebaseNamedExport;
12291231

1230-
const module: FirebaseModuleWithStaticsAndApp<
1232+
const defaultExport: FirebaseModuleWithStaticsAndApp<
12311233
FirebaseDatabaseTypes.Module,
12321234
FirebaseDatabaseTypes.Statics
12331235
>;
1234-
export default module;
1236+
export default defaultExport;
12351237
}
12361238

12371239
/**

packages/database/type-test.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import firebase from '@react-native-firebase/app';
22
import * as database from '@react-native-firebase/database';
33

4+
console.log(database.default().ref().parent);
5+
46
// checks module exists at root
57
console.log(firebase.database().app.name);
68
console.log(firebase.database().ref('foo/bar'));
@@ -27,7 +29,7 @@ console.log(database.firebase.SDK_VERSION);
2729
console.log(firebase.database(firebase.app()).app.name);
2830

2931
// checks default export supports app arg
30-
console.log(database.firebase(firebase.app('foo')).app.name);
32+
console.log(database.default(firebase.app('foo')).app.name);
3133

3234
console.log(firebase.database.ServerValue.TIMESTAMP);
3335

packages/dynamic-links/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -533,17 +533,19 @@ export namespace FirebaseDynamicLinksTypes {
533533
}
534534

535535
declare module '@react-native-firebase/dynamic-links' {
536+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
537+
import { ReactNativeFirebase } from '@react-native-firebase/app';
536538
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
537539
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
538540

539541
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
540542
export const firebase = firebaseNamedExport;
541543

542-
const module: FirebaseModuleWithStatics<
544+
const defaultExport: FirebaseModuleWithStatics<
543545
FirebaseDynamicLinksTypes.Module,
544546
FirebaseDynamicLinksTypes.Statics
545547
>;
546-
export default module;
548+
export default defaultExport;
547549
}
548550

549551
/**

packages/dynamic-links/type-test.ts

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import firebase from '@react-native-firebase/app';
22
import * as dynamicLinks from '@react-native-firebase/dynamic-links';
33

4+
console.log(dynamicLinks.default().getInitialLink);
5+
46
// checks module exists at root
57
console.log(firebase.dynamicLinks().app.name);
68

packages/firestore/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1887,17 +1887,19 @@ export namespace FirebaseFirestoreTypes {
18871887
}
18881888

18891889
declare module '@react-native-firebase/firestore' {
1890+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
1891+
import { ReactNativeFirebase } from '@react-native-firebase/app';
18901892
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
18911893
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
18921894

18931895
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
18941896
export const firebase = firebaseNamedExport;
18951897

1896-
const module: FirebaseModuleWithStaticsAndApp<
1898+
const defaultExport: FirebaseModuleWithStaticsAndApp<
18971899
FirebaseFirestoreTypes.Module,
18981900
FirebaseFirestoreTypes.Statics
18991901
>;
1900-
export default module;
1902+
export default defaultExport;
19011903
}
19021904

19031905
/**

packages/firestore/type-test.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import firebase from '@react-native-firebase/app';
22
import * as firestore from '@react-native-firebase/firestore';
3+
// tslint:disable-next-line:no-duplicate-imports
4+
import firestoreExport from '@react-native-firebase/firestore';
5+
6+
console.log(firestoreExport().collection);
37

48
// checks module exists at root
59
console.log(firebase.firestore().app.name);

packages/functions/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -336,17 +336,19 @@ export namespace FirebaseFunctionsTypes {
336336
}
337337

338338
declare module '@react-native-firebase/functions' {
339+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
340+
import { ReactNativeFirebase } from '@react-native-firebase/app';
339341
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
340342
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
341343

342344
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
343345
export const firebase = firebaseNamedExport;
344346

345-
const module: FirebaseModuleWithStaticsAndApp<
347+
const defaultExport: FirebaseModuleWithStaticsAndApp<
346348
FirebaseFunctionsTypes.Module,
347349
FirebaseFunctionsTypes.Statics
348350
>;
349-
export default module;
351+
export default defaultExport;
350352
}
351353

352354
/**

packages/functions/type-test.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import firebase from '@react-native-firebase/app';
22
import * as functions from '@react-native-firebase/functions';
3+
// tslint:disable-next-line:no-duplicate-imports
4+
import functionsExport from '@react-native-firebase/functions';
5+
6+
console.log(functionsExport().app);
37

48
// checks module exists at root
59
console.log(firebase.functions().app.name);

packages/iid/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -131,14 +131,16 @@ export namespace FirebaseIidTypes {
131131
}
132132

133133
declare module '@react-native-firebase/iid' {
134+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
135+
import { ReactNativeFirebase } from '@react-native-firebase/app';
134136
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
135137
import FirebaseModuleWithStaticsAndApp = ReactNativeFirebase.FirebaseModuleWithStaticsAndApp;
136138

137139
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
138140
export const firebase = firebaseNamedExport;
139141

140-
const module: FirebaseModuleWithStaticsAndApp<FirebaseIidTypes.Module, FirebaseIidTypes.Statics>;
141-
export default module;
142+
const defaultExport: FirebaseModuleWithStaticsAndApp<FirebaseIidTypes.Module, FirebaseIidTypes.Statics>;
143+
export default defaultExport;
142144
}
143145

144146
/**

packages/iid/type-test.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import firebase from '@react-native-firebase/app';
22
import * as iid from '@react-native-firebase/iid';
3+
// tslint:disable-next-line:no-duplicate-imports
4+
import iidExport from '@react-native-firebase/iid';
5+
6+
console.log(iidExport().app);
37

48
// checks module exists at root
59
console.log(firebase.iid().app.name);

packages/in-app-messaging/lib/index.d.ts

+2
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,8 @@ export namespace FirebaseInAppMessagingTypes {
133133
}
134134

135135
declare module '@react-native-firebase/in-app-messaging' {
136+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
137+
import { ReactNativeFirebase } from '@react-native-firebase/app';
136138
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
137139
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
138140

packages/in-app-messaging/type-test.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import firebase from '@react-native-firebase/app';
22
import * as inAppMessaging from '@react-native-firebase/in-app-messaging';
33

4+
console.log(inAppMessaging.default().app);
5+
46
// checks module exists at root
57
console.log(firebase.inAppMessaging().app.name);
68
console.log(firebase.inAppMessaging().isMessagesDisplaySuppressed);
@@ -16,7 +18,7 @@ console.log(firebase.inAppMessaging.SDK_VERSION);
1618
console.log(firebase.SDK_VERSION);
1719

1820
// check module correctly exported
19-
console.log(inAppMessaging.firebase().isMessagesDisplaySuppressed);
21+
console.log(inAppMessaging.default().isMessagesDisplaySuppressed);
2022

2123
// checks root exists
2224
console.log(firebase.SDK_VERSION);

packages/indexing/lib/index.d.ts

+2
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,8 @@ export namespace Indexing {
9292
}
9393

9494
declare module '@react-native-firebase/indexing' {
95+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
96+
import { ReactNativeFirebase } from '@react-native-firebase/app';
9597
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
9698
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
9799

packages/messaging/lib/index.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -542,17 +542,19 @@ export namespace FirebaseMessagingTypes {
542542
}
543543

544544
declare module '@react-native-firebase/messaging' {
545+
// tslint:disable-next-line:no-duplicate-imports required otherwise doesn't work
546+
import { ReactNativeFirebase } from '@react-native-firebase/app';
545547
import ReactNativeFirebaseModule = ReactNativeFirebase.Module;
546548
import FirebaseModuleWithStatics = ReactNativeFirebase.FirebaseModuleWithStatics;
547549

548550
const firebaseNamedExport: {} & ReactNativeFirebaseModule;
549551
export const firebase = firebaseNamedExport;
550552

551-
const module: FirebaseModuleWithStatics<
553+
const defaultExport: FirebaseModuleWithStatics<
552554
FirebaseMessagingTypes.Module,
553555
FirebaseMessagingTypes.Statics
554556
>;
555-
export default module;
557+
export default defaultExport;
556558
}
557559

558560
/**

0 commit comments

Comments
 (0)