import type { FirebaseKitConfig } from './core/types'; export interface AnalyticsService { logEvent(eventName: string, eventParams?: any): Promise; setUserId(userId: string): Promise; setUserProperties(properties: any): Promise; setCurrentScreen(screenName: string, screenClassOverride?: string): Promise; setEnabled(enabled: boolean): Promise; isSupported(): Promise<{ isSupported: boolean; }>; } export interface AppCheckService { initialize(options: any): Promise; getToken(forceRefresh?: boolean): Promise<{ token: string; }>; setTokenAutoRefreshEnabled(enabled: boolean): Promise; } export interface AdMobService { initialize(options?: any): Promise; showBanner(options: any): Promise; hideBanner(): Promise; resumeBanner(): Promise; removeBanner(): Promise; prepareInterstitial(options: any): Promise; showInterstitial(): Promise; prepareRewardVideoAd(options: any): Promise; showRewardVideoAd(): Promise; setApplicationMuted(muted: boolean): Promise; setApplicationVolume(volume: number): Promise; } export interface CrashlyticsService { crash(): Promise; setUserId(userId: string): Promise; log(message: string): Promise; setEnabled(enabled: boolean): Promise; isEnabled(): Promise<{ isEnabled: boolean; }>; recordException(error: any): Promise; setCustomKey(key: string, value: any): Promise; setCustomKeys(customKeys: any): Promise; } export interface PerformanceService { startTrace(traceName: string): Promise<{ traceName: string; traceId: string; }>; stopTrace(traceName: string): Promise; incrementMetric(traceName: string, metricName: string, value: number): Promise; setEnabled(enabled: boolean): Promise; isEnabled(): Promise<{ isEnabled: boolean; }>; } export interface RemoteConfigService { initialize(options: any): Promise; fetchAndActivate(): Promise<{ activated: boolean; }>; fetchConfig(): Promise; activate(): Promise<{ activated: boolean; }>; getValue(key: string): Promise<{ value: string; source: string; }>; getString(key: string): Promise<{ value: string; }>; getNumber(key: string): Promise<{ value: number; }>; getBoolean(key: string): Promise<{ value: boolean; }>; setLogLevel(logLevel: string): Promise; } declare class FirebaseKit { private analyticsService?; private appCheckService?; private adMobService?; private crashlyticsService?; private performanceService?; private remoteConfigService?; initialize(config: FirebaseKitConfig): Promise; get analytics(): AnalyticsService; get appCheck(): AppCheckService; get adMob(): AdMobService; get crashlytics(): CrashlyticsService; get performance(): PerformanceService; get remoteConfig(): RemoteConfigService; } export declare const firebaseKit: FirebaseKit; export type { FirebaseKitConfig } from './core/types';