/** * React Native Unified Auth Provider * * Creates a platform-specific auth provider that automatically selects the appropriate storage: * - Web: Uses IndexedDBTokenStorage for DPoP (CryptoKey persistence) or LocalStorage * - Mobile: Uses AsyncStorage-based storage */ import { DefaultAuthProvider, AccountOwnerType } from '@explorins/pers-sdk/core'; import type { TokenStorage } from '@explorins/pers-sdk/core'; /** * Configuration for React Native Auth Provider */ export interface ReactNativeAuthConfig { /** Custom storage key prefix */ keyPrefix?: string; /** Enable debug logging */ debug?: boolean; /** Custom token storage implementation */ customStorage?: TokenStorage; /** Authentication type (default: AccountOwnerType.USER) */ authType?: AccountOwnerType; /** DPoP Configuration (optional) */ dpop?: { enabled?: boolean; cryptoProvider?: import('@explorins/pers-sdk/core').DPoPCryptoProvider; }; } /** * Create a React Native auth provider with platform-appropriate storage * * Automatically selects storage implementation: * - Web: Uses LocalStorageTokenStorage (from core SDK) * - Mobile: Uses AsyncStorageTokenStorage (React Native specific) * * @param projectKey - PERS project key * @param config - Configuration options * @returns DefaultAuthProvider configured for the current platform */ export declare function createReactNativeAuthProvider(projectKey: string, config?: ReactNativeAuthConfig): DefaultAuthProvider; //# sourceMappingURL=react-native-auth-provider.d.ts.map