import { AuthClient } from '../../lib/auth-client'; import { UseSessionOptions } from '../../queries/auth/session-query'; /** * Retrieve the current authenticated user. Thin wrapper over `useSession` * that returns `session.user` as `data`. * * @param authClient - The Better Auth client. * @param options - `getSession` params & `useQuery` options. */ export declare function useUser(authClient: TAuthClient, options?: UseSessionOptions): { error: import('better-auth/client').BetterFetchError; isError: true; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: true; isSuccess: false; isPlaceholderData: false; status: "error"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; } | { error: null; isError: false; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isSuccess: true; isPlaceholderData: false; status: "success"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; } | { error: import('better-auth/client').BetterFetchError; isError: true; isPending: false; isLoading: false; isLoadingError: true; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "error"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; } | { error: null; isError: false; isPending: true; isLoading: true; isLoadingError: false; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; } | { error: null; isError: false; isPending: true; isLoadingError: false; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isLoading: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; } | { isError: false; error: null; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isSuccess: true; isPlaceholderData: true; status: "success"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: import('better-auth/client').BetterFetchError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; isEnabled: boolean; refetch: (options?: import('@tanstack/query-core').RefetchOptions) => Promise>, import('better-auth/client').BetterFetchError>>; fetchStatus: import('@tanstack/query-core').FetchStatus; promise: Promise>>; data: import('better-auth').StripEmptyObjects<{ id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }> | undefined; };