import { MealieClient } from '../client.js'; import type { UserOut, UserIn, CreateUserRegistration, ChangePassword, ForgotPassword, ResetPassword, LongLiveTokenIn, LongLiveTokenCreateResponse, DeleteTokenResponse, UserRatingSummary, UserRatingUpdate, UserRatingOut, UserRatings, UserPagination, PaginationQuery, UserBase } from '../types/index.js'; export declare class UserService extends MealieClient { /** * Register a new user */ register(data: CreateUserRegistration): Promise; /** * Get the currently logged in user */ getCurrentUser(): Promise; /** * Get all ratings for the currently logged in user */ getCurrentUserRatings(): Promise>; /** * Get rating for a specific recipe for the currently logged in user */ getCurrentUserRatingForRecipe(recipeId: string): Promise; /** * Get all favorites for the currently logged in user */ getCurrentUserFavorites(): Promise>; /** * Update the password for the currently logged in user */ updatePassword(data: ChangePassword): Promise; /** * Get a specific user (admin only) */ getUser(userId: string): Promise; /** * Update a user (admin only) */ updateUser(userId: string, data: UserBase): Promise; /** * Delete a user (admin only) */ deleteUser(userId: string): Promise; /** * Get all users with pagination (admin only) */ getUsers(params?: PaginationQuery): Promise; /** * Create a new user (admin only) */ createUser(data: UserIn): Promise; /** * Initiate forgot password flow */ forgotPassword(data: ForgotPassword): Promise; /** * Reset password using token */ resetPassword(data: ResetPassword): Promise; /** * Update a user's profile image */ updateUserImage(userId: string, profileImage: File | Blob): Promise; /** * Create an API token */ createApiToken(data: LongLiveTokenIn): Promise; /** * Delete an API token */ deleteApiToken(tokenId: number): Promise; /** * Get ratings for a specific user */ getUserRatings(userId: string): Promise>; /** * Get favorites for a specific user */ getUserFavorites(userId: string): Promise>; /** * Set rating for a recipe */ setRating(userId: string, recipeSlug: string, data: UserRatingUpdate): Promise; /** * Add a recipe to favorites */ addFavorite(userId: string, recipeSlug: string): Promise; /** * Remove a recipe from favorites */ removeFavorite(userId: string, recipeSlug: string): Promise; } //# sourceMappingURL=user.d.ts.map