import { LoaderFunctionArgs } from '@remix-run/node'; import { NoUserInfo, UserInfo } from './interfaces.js'; export declare function getSignInUrl(returnPathname?: string): Promise; export declare function getSignUpUrl(returnPathname?: string): Promise; export declare function signOut(request: Request, options?: { returnTo?: string; }): Promise>; /** * Given a loader's args, this function will check if the user is authenticated. * If the user is authenticated, it will return their information. * If the user is not authenticated, it will return an object with user set to null. * IMPORTANT: This authkitLoader must be used in a parent/root loader * to handle session refresh and cookie management. * @param args - The loader's arguments. * @returns An object containing user information */ export declare function withAuth(args: LoaderFunctionArgs): Promise; /** * Switches the current session to a different organization. * @param request - The incoming request object. * @param organizationId - The ID of the organization to switch to. * @param options - Optional parameters. * @returns A redirect response to the specified returnTo URL or a data response with the updated auth data. */ export declare function switchToOrganization(request: Request, organizationId: string, { returnTo }?: { returnTo?: string; }): Promise | import("@remix-run/router").UNSAFE_DataWithResponseInit<{ success: boolean; auth: { user: import("@workos-inc/node").User; sessionId: string; accessToken: string; organizationId: string | undefined; role: string | undefined; roles: string[] | undefined; permissions: string[] | undefined; entitlements: string[] | undefined; impersonator: import("@workos-inc/node").Impersonator | null; sealedSession: any; headers: Record; }; }> | import("@remix-run/router").UNSAFE_DataWithResponseInit<{ success: boolean; error: string; }>>;