@convex-dev/better-auth
Version:
A Better Auth component for Convex.
31 lines • 1.43 kB
TypeScript
import { ConvexReactClient } from "convex/react";
import { ReactNode } from "react";
import { createAuthClient } from "better-auth/react";
import { convexClient, crossDomainClient } from "../client/plugins";
import { BetterAuthClientPlugin, ClientOptions } from "better-auth";
export declare function useAuth(): {
isLoading: boolean;
isAuthenticated: boolean;
fetchAccessToken: ({ forceRefreshToken, }: {
forceRefreshToken: boolean;
}) => Promise<string | null>;
};
export type ConvexAuthClient = {
verbose?: boolean;
logger?: ConvexReactClient["logger"];
};
type CrossDomainClient = ReturnType<typeof crossDomainClient>;
type ConvexClient = ReturnType<typeof convexClient>;
type PluginsWithCrossDomain = (CrossDomainClient | ConvexClient | BetterAuthClientPlugin)[];
type PluginsWithoutCrossDomain = (ConvexClient | BetterAuthClientPlugin)[];
type AuthClientWithPlugins<Plugins extends PluginsWithCrossDomain | PluginsWithoutCrossDomain> = ReturnType<typeof createAuthClient<ClientOptions & {
plugins: Plugins;
}>>;
export type AuthClient = AuthClientWithPlugins<PluginsWithCrossDomain> | AuthClientWithPlugins<PluginsWithoutCrossDomain>;
export declare function AuthProvider({ client, authClient, children, }: {
client: ConvexAuthClient;
authClient: AuthClient;
children: ReactNode;
}): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=client.d.ts.map