Skip to content

Commit ec6ccc7

Browse files
authored
Update auth compat to be properly typed in typescript (#4626)
* Add proper typings for auth compat package * Formatting * Fix linter * Formatting
1 parent 5c1a83e commit ec6ccc7

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

packages-exp/app-compat/src/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,4 +47,4 @@ registerCoreComponents();
4747
export default firebase;
4848

4949
export { _FirebaseNamespace, _FirebaseService } from './types';
50-
export { FirebaseApp } from './public-types';
50+
export { FirebaseApp, FirebaseNamespace } from './public-types';

packages-exp/auth-compat-exp/index.ts

+18
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import {
2424
InstantiationMode
2525
} from '@firebase/component';
2626

27+
import { FirebaseAuth } from '@firebase/auth-types';
2728
import { version } from './package.json';
2829
import { Auth } from './src/auth';
2930
import { Persistence } from './src/persistence';
@@ -33,6 +34,23 @@ import { RecaptchaVerifier } from './src/recaptcha_verifier';
3334

3435
const AUTH_TYPE = 'auth';
3536

37+
declare module '@firebase/component' {
38+
interface NameServiceMapping {
39+
'auth-compat': FirebaseAuth;
40+
}
41+
}
42+
43+
declare module '@firebase/app-compat' {
44+
interface FirebaseNamespace {
45+
auth: {
46+
(app?: FirebaseApp): FirebaseAuth;
47+
};
48+
}
49+
interface FirebaseApp {
50+
auth?(): FirebaseAuth;
51+
}
52+
}
53+
3654
// Create auth components to register with firebase.
3755
// Provides Auth public APIs.
3856
function registerAuthCompat(instance: _FirebaseNamespace): void {

0 commit comments

Comments
 (0)