import { ApiClient } from './client'; import { ApiResponse, UserRegisterParams, UserLoginParams, LoginResponse, User, UserPasswordUpdateParams, OtpRequestParams, OtpVerifyParams, ApiKeyCreateParams } from './types'; export declare class Auth { private client; constructor(client: ApiClient); /** * Register a new user * @param params User registration parameters * @returns Promise with the registered user */ register(params: UserRegisterParams): Promise>; /** * Login a user * @param params Login credentials * @returns Promise with login result containing token and user data */ login(params: UserLoginParams): Promise>; /** * Request an OTP for authentication * @param params Phone number for OTP request * @returns Promise with the request result */ requestOtp(params: OtpRequestParams): Promise>; /** * Verify OTP code and login * @param params Phone number and OTP code * @returns Promise with login result containing token and user data */ verifyOtp(params: OtpVerifyParams): Promise>; /** * Logout the current user * @returns Promise with logout result */ logout(): Promise>; /** * Get current user profile * @returns Promise with user profile data */ getProfile(): Promise>; /** * Update user password * @param params Password update parameters * @returns Promise with update result */ updatePassword(params: UserPasswordUpdateParams): Promise>; /** * Create a new API key * @param params Optional API key creation parameters * @returns Promise with the created API key */ createApiKey(params?: ApiKeyCreateParams): Promise>; /** * Set a new API key for the client * @param apiKey The API key to set */ setApiKey(apiKey: string): void; /** * Validate the current API key * @returns Promise with validation result */ validateKey(): Promise>; /** * Get information about the current API key * @returns Promise with API key information */ getKeyInfo(): Promise>; }