<!-- Thanks for submitting a pull request! Please provide enough information so that others can review your pull request properly. -->
<!-- If this PR fixes an issue, type "Fixes #issueNumber" to automatically close the issue when the PR is merged. -->
<!-- Please esure you've also read the `/CONTRIBUTING.md` guide. -->
### Summary
Using `firebase.links().createShortLink()` returns a promise with a string wrapper object. As far as I can tell, there is no reason it can not be a string literal, witch (to me) seems more logical (it is also the return type of the underlying function call).
### Checklist
- [x] Supports `Android`
- [x] Supports `iOS`
- [ ] `e2e` tests added or updated in [/tests/e2e/\*](/tests/e2e)
- [ ] Updated the documentation in the [docs repo](https://github.com/invertase/react-native-firebase-docs)
- **LINK TO DOCS PR HERE**
- [x] Flow types updated
- [ ] Typescript types updated
### Test Plan
Tested locally, works for me.
<!-- Demonstrate the code is solid. -->
<!-- Example: The exact testing commands you ran and their final output (e.g. screenshot of test summary). -->
<!-- Example: Screenshots / videos if the pull request changes UI related code such as Notifications or Admob -->
### Release Plan
<!-- Help reviewers and the release process by writing your own release notes. See below for examples. -->
[TYPES][ENHANCEMENT] [LINKS] - Corrects flow return type to string literal instead of string wrapper
<!--
**INTERNAL tagged notes will not be included in the next version's release notes.**
CATEGORY
[----------] TYPE
[ TYPES ] [-------------] LOCATION
[ JS ] [ BREAKING ] [------------------]
[ GENERAL ] [ BUGFIX ] [ {FirebaseModule} ]
[ INTERNAL ] [ ENHANCEMENT ] [ {Filename} ]
[ IOS ] [ FEATURE ] [ {Directory} ] |-----------|
[ ANDROID ] [ MINOR ] [ {Framework} ] - | {Message} |
[----------] [-------------] [------------------] |-----------|
EXAMPLES:
[IOS] [ANDROID] [BREAKING] [AUTHENTICATION] - Change a thing that breaks other things
[ANDROID] [BUGFIX] [FIRESTORE] - Did a thing to fix a thing with a Firestore thing
[JS] [BREAKING] - Remove a deprecated thing
[TYPES] [ENHANCEMENT] [NOTIFICATIONS] - Update flow types for a thing in notifications
[JS] [ENHANCEMENT] - Expose export of a internal thing utility for public usage
[INTERNAL] [FEATURE] [./utils] - Added an internal util to make doing a thing easier
-->
---
Think `react-native-firebase` is great? Please consider supporting the project with any of the below:
- 👉 Donate via [Open Collective](https://opencollective.com/react-native-firebase/donate)
- 👉 Follow [`React Native Firebase`](https://twitter.com/rnfirebase) and [`Invertase`](https://twitter.com/invertaseio) on Twitter
- 👉 Star this repo on GitHub ⭐️
- 👉 Contribute; see our [contributing guide](/CONTRIBUTING.md)
🔥
<!-- Thanks for submitting a pull request! Please provide enough information so that others can review your pull request properly. -->
<!-- If this PR fixes an issue, type "Fixes #issueNumber" to automatically close the issue when the PR is merged. -->
<!-- Please esure you've also read the `/CONTRIBUTING.md` guide. -->
### Summary
<!-- Explain the **motivation** for making this change e.g. what existing problem does the pull request solve? -->
Add setUserProperties to TypeScript typing file.
Source code at https://github.com/invertase/react-native-firebase/blob/master/src/modules/analytics/index.js#L154
### Checklist
- [ ] Supports `Android`
- [ ] Supports `iOS`
- [ ] `e2e` tests added or updated in [/tests/e2e/\*](/tests/e2e)
- [ ] Updated the documentation in the [docs repo](https://github.com/invertase/react-native-firebase-docs)
- **LINK TO DOCS PR HERE**
- [ ] Flow types updated
- [x] Typescript types updated
### Test Plan
<!-- Demonstrate the code is solid. -->
<!-- Example: The exact testing commands you ran and their final output (e.g. screenshot of test summary). -->
<!-- Example: Screenshots / videos if the pull request changes UI related code such as Notifications or Admob -->
### Release Plan
<!-- Help reviewers and the release process by writing your own release notes. See below for examples. -->
[TYPES] [BUGFIX] [ANALYTICS] Add setUserProperties TS typing.
<!--
**INTERNAL tagged notes will not be included in the next version's release notes.**
CATEGORY
[----------] TYPE
[ TYPES ] [-------------] LOCATION
[ JS ] [ BREAKING ] [------------------]
[ GENERAL ] [ BUGFIX ] [ {FirebaseModule} ]
[ INTERNAL ] [ ENHANCEMENT ] [ {Filename} ]
[ IOS ] [ FEATURE ] [ {Directory} ] |-----------|
[ ANDROID ] [ MINOR ] [ {Framework} ] - | {Message} |
[----------] [-------------] [------------------] |-----------|
EXAMPLES:
[IOS] [ANDROID] [BREAKING] [AUTHENTICATION] - Change a thing that breaks other things
[ANDROID] [BUGFIX] [FIRESTORE] - Did a thing to fix a thing with a Firestore thing
[JS] [BREAKING] - Remove a deprecated thing
[TYPES] [ENHANCEMENT] [NOTIFICATIONS] - Update flow types for a thing in notifications
[JS] [ENHANCEMENT] - Expose export of a internal thing utility for public usage
[INTERNAL] [FEATURE] [./utils] - Added an internal util to make doing a thing easier
-->
---
Think `react-native-firebase` is great? Please consider supporting the project with any of the below:
- 👉 Donate via [Open Collective](https://opencollective.com/react-native-firebase/donate)
- 👉 Follow [`React Native Firebase`](https://twitter.com/rnfirebase) and [`Invertase`](https://twitter.com/invertaseio) on Twitter
- 👉 Star this repo on GitHub ⭐️
- 👉 Contribute; see our [contributing guide](/CONTRIBUTING.md)
Add more tests for Realtime Database
### Summary
Increases test coverage, which should be helpful when starting work on v6.
### Checklist
- [x] `e2e` tests added or updated in [/tests/e2e/\*](/tests/e2e)
### Release Plan
[TESTING][ENHANCEMENT][Database] - More tests
Think `react-native-firebase` is great? Please consider supporting the project with any of the below:
- 👉 Donate via [Open Collective](https://opencollective.com/react-native-firebase/donate)
- 👉 Follow [`React Native Firebase`](https://twitter.com/rnfirebase) and [`Invertase`](https://twitter.com/invertaseio) on Twitter
- 👉 Star this repo on GitHub ⭐️
- 👉 Contribute; see our [contributing guide](/CONTRIBUTING.md)
### Summary
Ran prettier on index.d.ts and added AuthListenerCallback to typescript declaration file and pass it to auth listeners
### Checklist
- [ ] Supports `Android`
- [ ] Supports `iOS`
- [ ] `e2e` tests added or updated in [/tests/e2e/\*](/tests/e2e)
- [ ] Updated the documentation in the [docs repo](https://github.com/invertase/react-native-firebase-docs)
- **LINK TO DOCS PR HERE**
- [ ] Flow types updated
- [x] Typescript types updated
### Release Plan
[TYPES][ENHANCEMENT] [AUTHENTICATION] - Update TS types for auth listeners
---
Think `react-native-firebase` is great? Please consider supporting the project with any of the below:
- 👉 Donate via [Open Collective](https://opencollective.com/react-native-firebase/donate)
- 👉 Follow [`React Native Firebase`](https://twitter.com/rnfirebase) and [`Invertase`](https://twitter.com/invertaseio) on Twitter
- 👉 Star this repo on GitHub ⭐️
- 👉 Contribute; see our [contributing guide](/CONTRIBUTING.md)
* [internals][js] nativeWithArgs wrapper incorrectly wrapping NativeModule constants - should only wrap functions
* [ios][android][js][auth] ensure user login state is consistent across RN reloads + tests
* remove test focus
* [android][auth] clear all auth state and id token listeners between React Native reloads
* [ios][auth] clear all auth state and id token listeners between React Native reloads
* [ios][auth] cleanup and add new auth error codes
- [ANDROID] [BUGFIX] [DATABASE] - Database listeners now correctly tearing down between RN reloads. (Fixes#1498#1611#1609)
- [JS] [BUGFIX] [DATABASE] - Fixed an issue where `Reference.toString()` incorrectly contains `//` instead of `/` when joining the parent and child paths.
- [JS] [BUGFIX] [DATABASE] - Rework `.push()` behaviour to match WebSDK and correctly return a Reference instance in all scenarios. (Fixes#893#1464#1572)
- [JS] [ENHANCEMENT] [UTILS] - Added a `firebase.utils().database.cleanup()` utility method which removes all database listeners.
solves: #1591 using the first solution:
> 1. Still consider the invocation a success, providing downloadURL as null.
Can some maintainer help me with the new test case? I need a file with permission to upload but not to download.