/// import { Session } from ".."; import { NextAuthClientConfig } from "../client/_utils"; import { LoggerInstance } from "../utils/logger"; import type { ClientSafeProvider, LiteralUnion, SessionProviderProps, SignInOptions, SignInResponse, UseSessionOptions } from "./types"; import type { BuiltInProviderType, RedirectableProviderType } from "../providers"; import * as AuthSession from "expo-auth-session"; import "react-native-url-polyfill/auto"; export declare function apiBaseUrl(__NEXTAUTH: NextAuthClientConfig): string; export declare function fetchData(path: string, __NEXTAUTH: NextAuthClientConfig, logger: LoggerInstance, params?: Record): Promise; export declare function getSignInInfo({ provider, proxyRedirectUri, }: { provider: string; proxyRedirectUri: string; }): Promise<{ state: string; stateEncrypted: string; codeVerifier: string; codeChallenge: string; clientId: string; } | null>; export declare type SessionContextValue = { data: Session; status: "authenticated"; } | { data: null; status: "unauthenticated" | "loading"; }; /** * React Hook that gives you access * to the logged in user's session data. * * [Documentation](https://next-auth.js.org/getting-started/client#usesession) */ export declare function useSession(options?: UseSessionOptions): SessionContextValue; export declare function getSession(): Promise; /** * It calls `/api/auth/providers` and returns * a list of the currently configured authentication providers. * It can be useful if you are creating a dynamic custom sign in page. * * [Documentation](https://next-auth.js.org/getting-started/client#getproviders) */ export declare function getProviders(): Promise, ClientSafeProvider> | null>; export interface SigninResult { result: AuthSession.AuthSessionResult; state: string; stateEncrypted: string; codeVerifier?: string; provider: string; } /** * Client-side method to initiate a signin flow * or send the user to the signin page listing all possible providers. * Automatically adds the CSRF token to the request. * * [Documentation](https://next-auth.js.org/getting-started/client#signin) */ export declare function signIn

(initiateExpoAuthFlow: () => Promise, options?: SignInOptions): Promise

; /** * Signs the user out, by removing the session cookie. * Automatically adds the CSRF token to the request. * * [Documentation](https://next-auth.js.org/getting-started/client#signout) */ export declare function signOut(): Promise; /** * Provider to wrap the app in to make session data available globally. * Can also be used to throttle the number of requests to the endpoint * `/api/auth/session`. * * [Documentation](https://next-auth.js.org/getting-started/client#sessionprovider) */ export declare function SessionProvider(props: SessionProviderProps): JSX.Element;