import FullCurrentUser from "../models/FullCurrentUser.js"; import FullUser from "../models/FullUser.js"; import User from "../models/User.js"; import { GetResponse, type TransformDataQueryToOptions } from "../util.js"; import Base from "./Base.js"; import UsersDMails from "./users/DMails.js"; import type { GetAvatarMenuResponses, SearchUsersData } from "../generated/types.js"; /** @category Modules/Types */ export interface SearchUsersOptions extends TransformDataQueryToOptions { } /** @category Modules/Types */ export interface GetAvatarMenuResponse extends GetResponse { } /** @category Modules */ export default class Users extends Base { dmails: UsersDMails; /** * Get Avatar Menu * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-getAvatarMenu getAvatarMenu} * * @see {@link https://e621.wiki/#operations-Users-getAvatarMenu Documentation} for more details. */ avatarMenu(): Promise; /** * Clear User Favorites * * You must be Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-clearUserFavorites clearUserFavorites} * * @see {@link https://e621.wiki/#operations-Users-clearUserFavorites Documentation} for more details. */ clearFavorites(idOrName: string | number): Promise; /** * Disable User Uploads * * You must be Janitor+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-disableUserUploads disableUserUploads} * * @see {@link https://e621.wiki/#operations-Users-disableUserUploads Documentation} for more details. */ disableUploads(idOrName: string | number, body?: string): Promise; /** * Fix User Counts * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-fixUserCounts fixUserCounts} * * @see {@link https://e621.wiki/#operations-Users-fixUserCounts Documentation} for more details. */ fixCounts(): Promise; /** * Get User * * @operationId {@link https://e621.wiki/#operations-Users-getUser getUser} * * @see {@link https://e621.wiki/#operations-Users-getUser Documentation} for more details. */ get(idOrName: string | number): Promise; /** * Get Current User * * This will return the default settings for anonymous users if no authentication is used. This most interesting part is probably the default blacklist, located in `blacklisted_tags`. * * @operationId {@link https://e621.wiki/#operations-Users-getMe getMe} * * @see {@link https://e621.wiki/#operations-Users-getMe Documentation} for more details. */ me(): Promise; /** * Search Users * * @operationId {@link https://e621.wiki/#operations-Users-searchUsers searchUsers} * * @see {@link https://e621.wiki/#operations-Users-searchUsers Documentation} for more details. */ search(options?: SearchUsersOptions): Promise>; /** * Staff Fix User Counts * * You must be Janitor+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-staffFixUserCounts staffFixUserCounts} * * @see {@link https://e621.wiki/#operations-Users-staffFixUserCounts Documentation} for more details. */ staffFixCounts(idOrName: string | number): Promise; /** * Toggle User Uploads * * You must be Janitor+. This endpoint will return HTML when disabling uploads (due to a reason being required), this endpoint should only be used for reenabling. Use [Disable User Uploads](#operation-Users-disableUserUploads) to disable uploads. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-toggleUserUploads toggleUserUploads} * * @see {@link https://e621.wiki/#operations-Users-toggleUserUploads Documentation} for more details. */ toggleUploads(idOrName: string | number): Promise; /** * Update User Dmail Filter * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-DMails-updateUserDmailFilter updateUserDmailFilter} * * @see {@link https://e621.wiki/#operations-DMails-updateUserDmailFilter Documentation} for more details. */ updateDmailFilter(dmail_id: number, words: string): Promise; /** * Get User Upload Limit * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Users-getUserUploadLimit getUserUploadLimit} * * @see {@link https://e621.wiki/#operations-Users-getUserUploadLimit Documentation} for more details. */ uploadLimit(idOrName: string | number): Promise; }