import type { ReactNativeFirebase, LogCallback, LogOptions } from './types/app';
/**
 * Renders this app unusable and frees the resources of all associated services.
 * @param app - The app to delete.
 * @returns Promise<void>
 */
export declare function deleteApp(app: ReactNativeFirebase.FirebaseApp): Promise<void>;
/**
 * Registers a library's name and version for platform logging purposes.
 * @param _libraryKeyOrName - library name or key.
 * @param _version - library version.
 * @param _variant - library variant. Optional.
 * @returns Promise<void>
 */
export declare function registerVersion(_libraryKeyOrName: string, _version: string, _variant?: string): Promise<void>;
/**
 * Sets log handler for VertexAI only currently.
 * @param logCallback - The callback function to handle logs.
 * @param options - Optional settings for log handling.
 * @returns void
 */
export declare function onLog(logCallback: LogCallback | null, options?: LogOptions): void;
/**
 * Gets the list of all initialized apps.
 * @returns An array of all initialized Firebase apps.
 */
export declare function getApps(): ReactNativeFirebase.FirebaseApp[];
/**
 * Initializes a Firebase app with the provided options and name.
 * @param options - Options to configure the services used in the app.
 * @param configOrName - The optional name of the app, or config for the app to initialize (a name of '[DEFAULT]' will be used if omitted).
 * @returns The initialized Firebase app.
 */
export declare function initializeApp(options: ReactNativeFirebase.FirebaseAppOptions, configOrName?: string | ReactNativeFirebase.FirebaseAppConfig): Promise<ReactNativeFirebase.FirebaseApp>;
/**
 * Retrieves an instance of a Firebase app.
 * @param name - The optional name of the app to return ('[DEFAULT]' if omitted).
 * @returns The requested Firebase app instance.
 */
export declare function getApp(name?: string): ReactNativeFirebase.FirebaseApp;
/**
 * Sets the log level across all Firebase SDKs.
 * @param logLevel - The log level to set ('debug', 'verbose', 'info', 'warn', 'error', 'silent').
 * @returns void
 */
export declare function setLogLevel(logLevel: ReactNativeFirebase.LogLevelString): void;
/**
 * The `AsyncStorage` implementation to use for persisting data on 'Other' platforms.
 * If not specified, in memory persistence is used.
 *
 * This is required if you want to persist things like Auth sessions, Analytics device IDs, etc.
 */
export declare function setReactNativeAsyncStorage(asyncStorage: ReactNativeFirebase.ReactNativeAsyncStorage): void;
/**
 * Gets react-native-firebase specific "meta" data from native Info.plist / AndroidManifest.xml
 * @returns map of key / value pairs containing native meta data
 */
export declare function metaGetAll(): Promise<{
    [key: string]: string | boolean;
}>;
/**
 * Gets react-native-firebase specific "firebase.json" data
 * @returns map of key / value pairs containing native firebase.json constants
 */
export declare function jsonGetAll(): Promise<{
    [key: string]: string | boolean;
}>;
/**
 * Clears react-native-firebase specific native preferences
 * @returns Promise<void>
 */
export declare function preferencesClearAll(): Promise<void>;
/**
 * Gets react-native-firebase specific native preferences
 * @returns map of key / value pairs containing native preferences data
 */
export declare function preferencesGetAll(): Promise<{
    [key: string]: string | boolean;
}>;
/**
 * Sets react-native-firebase specific native boolean preference
 * @param key the name of the native preference to set
 * @param value the value of the native preference to set
 * @returns Promise<void>
 */
export declare function preferencesSetBool(key: string, value: boolean): Promise<void>;
/**
 * Sets react-native-firebase specific native string preference
 * @param key the name of the native preference to set
 * @param value the value of the native preference to set
 * @returns Promise<void>
 */
export declare function preferencesSetString(key: string, value: string): Promise<void>;
export declare const SDK_VERSION = "24.0.0";
//# sourceMappingURL=modular.d.ts.map