import type { NewSessionResponse, Passkey, PasskeyChangeable, Session, User, UserPublic, Verification } from '@axium/core'; import * as z from 'zod'; export declare function login(userId: string): Promise; /** * Create an elevated session for the user to perform sensitive actions. */ export declare function elevate(userId: string): Promise; export declare function loginByEmail(email: string): Promise; export declare function getCurrentSession(): Promise; export declare function getSessions(userId: string): Promise; export declare function logout(userId: string, ...sessionId: string[]): Promise; export declare function logoutAll(userId: string): Promise; export declare function logoutCurrentSession(): Promise; export declare function register(_data: Record): Promise; export declare function userInfo(userId: string): Promise>; export declare function updateUser(userId: string, data: Record): Promise; export declare function fullUserInfo(userId: string): Promise; /** * @param userId The UUID of the user to delete * @param deletingId The UUID of the user performing the deletion (for authentication). Defaults to userId. */ export declare function deleteUser(userId: string, deletingId?: string): Promise; export declare function emailVerificationEnabled(userId: string): Promise; export declare function sendVerificationEmail(userId: string): Promise; export declare function verifyEmail(userId: string, token: string): Promise; export declare function getPasskeys(userId: string): Promise; /** * Create a new passkey for an existing user. */ export declare function createPasskey(userId: string): Promise; export declare function updatePasskey(passkeyId: string, data: z.input): Promise; export declare function deletePasskey(passkeyId: string): Promise;