import { FirebaseApp } from 'firebase/app'; import 'firebase/compat/functions'; import { Analytics } from 'firebase/analytics'; import { OAuthProvider } from 'firebase/auth'; import 'firebase/database'; import { Firestore } from 'firebase/firestore'; import { FirebaseStorage } from 'firebase/storage'; import { RemoteConfig } from 'firebase/remote-config'; import { FirebaseConfig, BackendService } from '../types'; declare class Firebase implements BackendService { app: FirebaseApp; auth: any; db: Firestore; storage: FirebaseStorage; remoteConfig: RemoteConfig; analytics: Analytics; FieldValue: any; constructor(config: FirebaseConfig); bucket: (bucket: string) => FirebaseStorage; createProvider: (type: string) => OAuthProvider; signInWithPopup: (provider: any) => Promise; doCreateUserWithEmailAndPassword: (email: any, password: any) => Promise; doSignInWithEmailAndPassword: (email: string, password: string) => Promise; doSignOut: () => Promise; doPasswordReset: (email: string) => Promise; doPasswordUpdate: (password: string) => Promise | undefined; config: (key: string) => import("@firebase/remote-config").Value; onAuthUserListener: (next: any, fallback: any) => import("@firebase/util").Unsubscribe; user: (uid: string) => Promise>; role: (uid: string) => Promise>; } export default Firebase;