import { Persistence, ReactNativeAsyncStorage } from "firebase/auth"; export declare const enum PersistenceType { SESSION = "SESSION", LOCAL = "LOCAL", NONE = "NONE" } export type PersistedBlob = Record; export interface Instantiator { (blob: PersistedBlob): T; } export type PersistenceValue = PersistedBlob | string; export declare const STORAGE_AVAILABLE_KEY = "__sak"; export interface StorageEventListener { (value: PersistenceValue | null): void; } export interface PersistenceInternal extends Persistence { type: PersistenceType; _isAvailable(): Promise; _set(key: string, value: PersistenceValue): Promise; _get(key: string): Promise; _remove(key: string): Promise; _addListener(key: string, listener: StorageEventListener): void; _removeListener(key: string, listener: StorageEventListener): void; _shouldAllowMigration?: boolean; } export declare function getReactNativePersistence(storage: ReactNativeAsyncStorage): Persistence;