@auth/solid-start
Version:
Authentication for SolidStart.
65 lines • 2.69 kB
TypeScript
import type { ProviderId } from "@auth/core/providers";
interface SignInOptions<Redirect extends boolean = true> extends Record<string, unknown> {
/** @deprecated Use `redirectTo` instead. */
callbackUrl?: string;
/**
* Specify where the user should be redirected to after a successful signin.
*
* By default, it is the page the sign-in was initiated from.
*/
redirectTo?: string;
/**
* You might want to deal with the signin response on the same page, instead of redirecting to another page.
* For example, if an error occurs (like wrong credentials given by the user), you might want to show an inline error message on the input field.
*
* For this purpose, you can set this to option `redirect: false`.
*/
redirect?: Redirect;
}
export interface SignInResponse {
error: string | undefined;
code: string | undefined;
status: number;
ok: boolean;
url: string | null;
}
interface SignOutParams<R extends boolean = true> {
/** [Documentation](https://next-auth.js.org/getting-started/client#specifying-a-callbackurl-1) */
callbackUrl?: string;
/** [Documentation](https://next-auth.js.org/getting-started/client#using-the-redirect-false-option-1 */
redirect?: R;
}
/** Match `inputType` of `new URLSearchParams(inputType)` */
export type SignInAuthorizationParams = string | string[][] | Record<string, string> | URLSearchParams;
/**
* 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.
*
* ```ts
* import { signIn } from "@auth/solid-start/client"
* signIn()
* signIn("provider") // example: signIn("github")
* ```
*/
/**
* Initiates a signin flow or sends the user to the signin page listing all possible providers.
* Handles CSRF protection.
*
* @note This method can only be used from Client Components ("use client" or Pages Router).
* For Server Actions, use the `signIn` method imported from the `auth` config.
*/
export declare function signIn(provider?: ProviderId, options?: SignInOptions<true>, authorizationParams?: SignInAuthorizationParams): Promise<void>;
export declare function signIn(provider?: ProviderId, options?: SignInOptions<false>, authorizationParams?: SignInAuthorizationParams): Promise<SignInResponse>;
/**
* Signs the user out, by removing the session cookie.
* Automatically adds the CSRF token to the request.
*
* ```ts
* import { signOut } from "@auth/solid-start/client"
* signOut()
* ```
*/
export declare function signOut(options?: SignOutParams): Promise<void>;
export {};
//# sourceMappingURL=client.d.ts.map