Overview
Expo native-runtime adapter for @absolutejs/auth.
@absolutejs/auth-expov0.0.6betaNative AppsExpo native runtime adapter for @absolutejs/auth
bun add @absolutejs/auth-expoExpo native-runtime adapter for @absolutejs/auth.
AbsoluteJS provisions this package automatically for mobile.engine: 'expo' applications that depend on @absolutejs/auth. It connects the existing native OAuth client to Expo WebBrowser, Linking, SecureStore, and AppState while keeping access and refresh credentials outside embedded WebViews.
Application code continues to use @absolutejs/auth/client; it does not import this adapter directly.
The package is experimental while AbsoluteJS Expo support remains experimental.
Outcomes
Expo native-runtime adapter for @absolutejs/auth.
Hardening checklist
Follow in order
Supported entry points declared by this project’s package manifest. Internal dist paths are not part of the package contract.
Scripts declared by this project’s package manifest.
Search the declarations exported by the current package type files. Expand a symbol to inspect its source-backed signature.
type AbsoluteExpoAuthDependencies = {
appState: {
addEventListener(type: 'change', listener: (state: string) => void): AppStateSubscription;
};
linking: {
addEventListener(type: 'url', listener: (event: {
url: string;
}) => void): LinkSubscription;
getInitialURL(): Promise<string | null>;
};
secureStore: {
AFTER_FIRST_UNLOCK_THIS_DEVICE_ONLY: number;
deleteItemAsync(key: string, options?: Record<string, unknown>): Promise<void>;
getItemAsync(key: string, options?: Record<string, unknown>): Promise<string | null>;
isAvailableAsync(): Promise<boolean>;
setItemAsync(key: string, value: string, options?: Record<string, unknown>): Promise<void>;
};
webBrowser: {
openAuthSessionAsync(url: string, redirectUrl: string): Promise<{
type: string;
url?: string;
}>;
};
};@absolutejs/auth-expo