import { b as AuthTransport } from '../types-Cu0do-w-.js'; import '../auth-c1d7Eji2.js'; /** * Web transport — uses HttpOnly cookies managed by the server. * * The server sets `stackauth_jwt` (HttpOnly) and `stackauth_session` (public) * cookies via Set-Cookie headers. The browser sends them automatically. * * - storeCredentials: no-op (server manages cookies) * - getHeaders: empty (cookies sent automatically by browser) * - getStoredSession: reads the public `stackauth_session` cookie * - clear: no-op (server clears cookies on logout) */ declare function createWebTransport(): AuthTransport; /** * Generic secure-storage interface matching expo-secure-store's API. * Consumers pass in their storage implementation to avoid a hard * dependency on expo-secure-store (keeps the package platform-agnostic). */ interface SecureStorage { getItemAsync(key: string): Promise; setItemAsync(key: string, value: string): Promise; deleteItemAsync(key: string): Promise; } /** * Native transport — stores JWT and session in secure storage (e.g. expo-secure-store). * * Unlike the web transport, tokens are sent explicitly via Authorization headers * since there are no browser cookies in React Native. * * Usage: * import * as SecureStore from 'expo-secure-store'; * const transport = createNativeTransport(SecureStore); */ declare function createNativeTransport(storage: SecureStorage): AuthTransport; export { type SecureStorage, createNativeTransport, createWebTransport };